我在 Ubuntu Linux 系统上运行 snmpd,带有一个简单的 /etc/snmp/snmpd.conf:
rocommunity public
snmpd 正在监听本地主机。从同一系统,我正在运行:
snmpwalk -v 1 -c public localhost
部分输出如下:
iso.3.6.1.2.1.92.1.1.1.0 = Gauge32: 1000
iso.3.6.1.2.1.92.1.1.2.0 = Gauge32: 1440
iso.3.6.1.2.1.92.1.2.1.0 = Counter32: 0
iso.3.6.1.2.1.92.1.2.2.0 = Counter32: 0
如您所见,除了 iso 对象之外,我仅获取了所有对象的数字 OID。我还尝试了带有 -Of 选项的 snmpwalk 和 snmptranslate。两者都生成了与上述完全相同的 OID:即,仅对 iso 的子对象生成数字。
此外,除了 iso 之外,没有其他根级别对象。这正常吗?
谢谢
答案1
听起来您缺少执行翻译的 MIB 文件。要安装它们,请运行:
apt-get 安装 snmp-mibs-downloader
由于许可原因,默认情况下不包含它们。安装该包将从互联网上下载标准包。对于特定制造商的自定义 SNMP 值,您需要从制造商的网站上找到它们的 .mib 文件。
哦,你需要告诉 snmp 真正使用 mibs!编辑 /etc/snmp/snmp.conf 以读取:
mibs +全部