如何识别MIB中的未知对象? (SNMP)

时间:2015-07-31 16:37:51

标签: snmp mib pysnmp

在过去一周左右的时间里,我花时间了解SNMP。我很快就了解到,使用SNMP设备创建简单监控工具的祸根就是MIB。

在我的特殊情况下,Xerox对于发布MIB没有帮助,因此当我在打印机上行走时,我留下了数千个未识别的对象。

许多这些未被描述的OID都有价值,但我当然不知道它们代表什么。

在解决这些未知OID的结果方面最成功的典型程序是什么?我有时间和愿意深入挖掘,但我不知道从哪里开始。

注意:我已经尝试过通用MIB和potential Xerox MIBs,但所有描述看起来都很模糊,并没有明确说明其用途。 This guy设法识别了与先前链接的MIB相关的一些,但我不知道他是如何解决的,因为这些对象的描述是荒谬的模糊。

这适用于Python 2.7脚本。

1 个答案:

答案 0 :(得分:0)

我第二次检查sysORTable内容。

如果这没有帮助,您可以尝试下载与you can find一样多的MIB,然后将它们全部加载到snmpwalk(通过-m ALL选项),或者为MIB的子集执行此操作以节省内存。然后走你的打印机,看看snmpwalk报告了哪些MIB。

如果你无法将许多MIB加载到内存中,我可以提出一种非常奇特的方法。

您可以从here获取可用的MIB名称,获取最新的开发pysnmp / pysnmp-apps包,然后列出每个MIB中定义的所有OID:

$ snmptranslate.py -To XEROX-GENERAL-MIB::
.1.3.6.1.4.1.253.8.51
.1.3.6.1.4.1.253.8.51.1
.1.3.6.1.4.1.253.8.51.1.2
...

一旦您知道哪些OID在MIB中,您就可以将从打印机获取的OID与MIB中找到的OID进行匹配。这样您就可以确定打印机实现了哪些MIB。