snmpwalk -Of 不显示文本 OID

ZMW*_*Wei 7 server networking snmp

我们在 Ubuntu 服务器 14.04 上运行此 snmpwalk 时遇到问题。

snmpwalk -v 2c -Of -c public localhost
Run Code Online (Sandbox Code Playgroud)

或者

snmpwalk -v 2c -Of -m SNMPv2-MIB -c public localhost
Run Code Online (Sandbox Code Playgroud)

它们都不显示文本 OID(即 MIB 对象的完整列表)。它们改为显示数字 OID。

man snmpcmd (显示了 snmpwalk 的输出选项)说:

" -Of    Include the full list of MIB objects when displaying an OID:
                  .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime.0 =
                             Timeticks: (14096763) 1 day, 15:09:27.63"
Run Code Online (Sandbox Code Playgroud)

我们在 Freebsd 服务器上使用 -Of 没有问题。

这些是我们的 Ubuntu 服务器和安装的 SNMP 包的详细信息

ubuntu server 14.04

ii  snmp                                5.7.2~dfsg-8.1ubuntu3         amd64        SNMP (Simple Network Management Protocol) applications
ii  snmpd                               5.7.2~dfsg-8.1ubuntu3         amd64        SNMP (Simple Network Management Protocol) agents


Linux Hostnme 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

snmpwalk -v 2c -Of -c public localhost在我们的 Ubuntu 服务器上的输出:

.iso.3.6.1.2.1.1.1.0 = STRING: "Linux fxwp 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64"
.iso.3.6.1.2.1.1.2.0 = OID: .iso.3.6.1.4.1.8072.3.2.10
.iso.3.6.1.2.1.1.3.0 = Timeticks: (118962221) 13 days, 18:27:02.21
.iso.3.6.1.2.1.1.4.0 = STRING: "Me <me@example.org>"
.iso.3.6.1.2.1.1.5.0 = STRING: "fxwp"
.iso.3.6.1.2.1.1.6.0 = STRING: "Sitting on the Dock of the Bay"
.iso.3.6.1.2.1.1.7.0 = INTEGER: 72
.iso.3.6.1.2.1.1.8.0 = Timeticks: (1) 0:00:00.01
.iso.3.6.1.2.1.1.9.1.2.1 = OID: .iso.3.6.1.6.3.11.3.1.1
.iso.3.6.1.2.1.1.9.1.2.2 = OID: .iso.3.6.1.6.3.15.2.1.1
.iso.3.6.1.2.1.1.9.1.2.3 = OID: .iso.3.6.1.6.3.10.3.1.1
.iso.3.6.1.2.1.1.9.1.2.4 = OID: .iso.3.6.1.6.3.1
.iso.3.6.1.2.1.1.9.1.2.5 = OID: .iso.3.6.1.2.1.49
.iso.3.6.1.2.1.1.9.1.2.6 = OID: .iso.3.6.1.2.1.4
.iso.3.6.1.2.1.1.9.1.2.7 = OID: .iso.3.6.1.2.1.50
.iso.3.6.1.2.1.1.9.1.2.8 = OID: .iso.3.6.1.6.3.16.2.2.1
.iso.3.6.1.2.1.1.9.1.2.9 = OID: .iso.3.6.1.6.3.13.3.1.3
.iso.3.6.1.2.1.1.9.1.2.10 = OID: .iso.3.6.1.2.1.92
.iso.3.6.1.2.1.1.9.1.3.1 = STRING: "The MIB for Message Processing and Dispatching."
.iso.3.6.1.2.1.1.9.1.3.2 = STRING: "The management information definitions for the SNMP User-based Security Model."
.iso.3.6.1.2.1.1.9.1.3.3 = STRING: "The SNMP Management Architecture MIB."
.iso.3.6.1.2.1.1.9.1.3.4 = STRING: "The MIB module for SNMPv2 entities"
.iso.3.6.1.2.1.1.9.1.3.5 = STRING: "The MIB module for managing TCP implementations"
Run Code Online (Sandbox Code Playgroud)

我们 Freebsd 服务器上的输出:

.iso.org.dod.internet.mgmt.mib-2.system.sysDescr.0 = STRING: FreeBSD pa005.example.com 6.1-RELEASE FreeBSD 6.1-RELEASE #0: Sat Nov 18 12:56:53 UTC 2006     root@pa005c.function.co
m:/usr/src/sys/i386/compile/CHEEMENG i386
.iso.org.dod.internet.mgmt.mib-2.system.sysObjectID.0 = OID: .iso.org.dod.internet.private.enterprises.netSnmp.netSnmpEnumerations.netSnmpAgentOIDs.8
.iso.org.dod.internet.mgmt.mib-2.system.sysUpTime.sysUpTimeInstance = Timeticks: (1782110415) 206 days, 6:18:24.15
.iso.org.dod.internet.mgmt.mib-2.system.sysContact.0 = STRING: it@example.com
.iso.org.dod.internet.mgmt.mib-2.system.sysName.0 = STRING: pa005.example.com
.iso.org.dod.internet.mgmt.mib-2.system.sysLocation.0 = STRING: "Palo Alto, California"
.iso.org.dod.internet.mgmt.mib-2.system.sysServices.0 = INTEGER: 76
.iso.org.dod.internet.mgmt.mib-2.system.sysORLastChange.0 = Timeticks: (14) 0:00:00.14
.iso.org.dod.internet.mgmt.mib-2.system.sysORTable.sysOREntry.sysORID.1 = OID: .iso.org.dod.internet.snmpV2.snmpModules.snmpFrameworkMIB.snmpFrameworkMIBConformance.snmpFrameworkMI
BCompliances.snmpFrameworkMIBCompliance
.iso.org.dod.internet.mgmt.mib-2.system.sysORTable.sysOREntry.sysORID.2 = OID: .iso.org.dod.internet.snmpV2.snmpModules.snmpMPDMIB.snmpMPDMIBConformance.snmpMPDMIBCompliances.snmpM
PDCompliance
.iso.org.dod.internet.mgmt.mib-2.system.sysORTable.sysOREntry.sysORID.3 = OID: .iso.org.dod.internet.snmpV2.snmpModules.snmpUsmMIB.usmMIBConformance.usmMIBCompliances.usmMIBComplia
nce
Run Code Online (Sandbox Code Playgroud)

ZMW*_*Wei 8

我想出了为什么-Of标志不起作用。我不得不这样做:

sudo apt-get install snmp-mibs-downloader
vi /etc/snmp/snmp.conf
Run Code Online (Sandbox Code Playgroud)

并注释掉包含字符串“mibs :”的行。

之后, snmpwalk -v 2c -Of -c public localhost显示文本 OID 而不是数字。

但是现在,还有另一个问题:snmpwalk -v 2c -Of -c public localhost显示的信息不像在 FreeBSD 系统上那样多。

它显示的信息很少,因为我们没有这样做:

vi /etc/snmp/snmpd.conf
# Comment out this line - 
view   systemonly  included   .1.3.6.1.2.1.25.1 
# Add the line below:
view   systemonly  included   .1.3.6.1.2.1.25
Run Code Online (Sandbox Code Playgroud)

现在,snmpwalk 显示了更多信息

参考:

从 ESX Classic 上的 Net-SNMP MIB 启用更多主机资源信息