如何正确使用 SNMP 的 MIB?

How to correctly use MIBs for SNMP?

我目前正在尝试为 Fujitsu Primergy RX300 S6、运行 XenServer 6.5.0 编写 bash-监控脚本。 从 Fujitsu-Page 下载 MIB 文件后,我遇到了几个错误,尝试 运行 以下行 snmpget -Ov -v 2c -c PUBLICKEY SERVER.IP SNMPv2-MIB::sysUpTime.0 我得到了正确的结果,但是有多个错误,例如

Unlinked OID in VMWARE-TRAPS-MIB: vmware ::= { enterprises 6876 }

/usr/share/snmp/mibs/VMWARE-TRAPS-MIB.mib Textual convention doesn't map to real type (DisplayString): At line 26 in usr/share/snmp/mibs/log3v1.mib : (is a reserved word): At line 27 in /usr/share/snmp/mibs/log3v1.mib : (is a reserved word): At line 28 in /usr/share/snmp/mibs/log3v1.mib Unlinked OID in FSC-LOG3-MIB: sni ::= { enterprises 231 }

Undefined identifier: enterprises near line 13 of

[...]

我不明白,它说缺少某些定义(来自外国 MIB),但我如何获得正确的定义?

检查您尝试使用的 MIB 文件中的 IMPORTS 定义。这些基本上是您的外部依赖项。尝试从供应商网站下载这些 MIB 模块,或者如果它是像 RFC1155-SMIRFC1213 这样的标准 MIB 文件,您可以通过 google.

这是一个例子:

IMPORTS
   enterprises, OBJECT-TYPE
   FROM RFC1155-SMI
            DisplayString
                      FROM RFC1158-MIB;