我似乎无法将自己的头围绕在MIB的目的之上。 我有一个由供应商提供给我的〜20个MIB文件的集合,但是我该怎么处理它们呢?
我也有几个由供应商提供的OID,这些OID似乎不是有效的。 当我发出一个“snmpget -v1 -c public 192.168.0.123.1.4.6.3.2.6.2”(假设这是一个有效的OID),我得到一个错误,指出这个variables是未知的。 这听起来像一个硬件configuration问题? 我是否需要“装载”(缺乏更好的单词)MIB到设备中?
不幸的是,供应商已经完全没有回应电子邮件到我的问题,所以任何帮助将不胜感激。
MIB文件需要告诉你 (或者你的监控系统,或者你的SNMP查询工具……)OID实际上是什么意思; 否则,你所得到的是一堆数字。 但这只是一个客户端问题,您查询的设备已经知道它可以接受查询的OID以及应该提供哪些答案。
如果您不能查询给定OID的设备,即使MIB指出您应该能够查询它,那么可能会有一个MIB不匹配; 仔细检查你正在使用的MIB实际上是该设备及其固件/操作系统版本的正确之一(在固件版本之间,SNMP支持可能会改变相当一段时间)。
否则,它也可能是一个configuration问题:也许你正在查询的OID只支持一些特定的configuration,而不是所有的; 只有设备文档(或供应商)可以帮助你在这里。
试着用snmpwalk或snmpgetnext来代替snmpget。 这将告诉你,如果你需要结束或不。 你不需要mib文件与设备交谈。 mib文件只是将数字转化为更有意义的信息供人们理解。
今天我有几乎同样的问题:
MIB文件需要告诉你(或者你的监控系统,或者你的SNMP查询工具……)OID究竟是什么意思
确切地说,我想知道.1.3.6.1.4.1.89.35.1.13.1.2是什么意思(以及是否有一些有趣的OID)。
以下是我遵循的步骤,以防其他人感兴趣:
暂时改变环境variables:
export MIBDIRS=/path/to/tmpdir/:/usr/share/snmp/mibs/ export MIBS=all
现在您可以使用snmptranslate来获取mib名称:
snmptranslate .1.3.6.1.4.1.89.35.1.13.1.2