我正在编写Python代码,其中用户以下列任何一种形式输入SNMP OID:
1.3.6.1.2.1.90.1.2
internet.2.1.90.1.2
我希望我的代码将internet
解析为1.3.6.1
。
我正在考虑创建一个字典并给对象名称赋予相应的值,但我认为这不是一个好主意。
请指导我如何继续。
答案 0 :(得分:2)
NetSnmp提供snmptranslate
方法 - 这可能是有用的起点。
其手册页说明其目的是:
在数字和文本表单之间翻译MIB OID名称。
net-snmp
已有可用的Python绑定,请参阅these SO questions。
或者pysnmp提供类似的内容。请参阅问题"Translating pysnmp numerical oid output into symbolic names"。