snmpwalk 不适用于 SNMP v3

snmpwalk 不适用于 SNMP v3

我们有一台思科交换机,我们多年来一直使用 Nagios 通过 snmpv2 对其进行监控。最近,我们的审计团队强迫我们在所有网络设备上迁移到 snmpv3。

思科工程师进来并在交换机上配置了 snmpv3,但此后 snmpwalk 停止工作:

当我尝试 snmpwalk 时出现以下错误:

[root@nagios libexec]# snmpwalk -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3 
SNMPv2-SMI::mib-2 = No more variables left in this MIB View (It is past the end of the MIB tree)

上述凭据是正确的,因为如果凭据错误,则会引发以下错误:

[root@nagios libexec]# snmpwalk -u snmprouser -A gs11snmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3 
snmpwalk: Authentication failure (incorrect password, community or key)

当我尝试恢复正常运行时:

[root@nagios libexec]# snmpwalk -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 -v3 1.3.6.1.2.1.1.3.0
DISMAN-EVENT-MIB::sysUpTimeInstance = No more variables left in this MIB View (It is past the end of the MIB tree)

还:

[root@nagios ~]# snmpwalk -v3 -u snmprouser -A gs1snmmp -a MD5 -X DES -X gs1snmmp -l authPriv 192.168.13.11 mib-2.interfaces
IF-MIB::interfaces = No more variables left in this MIB View (It is past the end of the MIB tree)

答案1

我使用 Linux 和 Ruby 编写的一些代码:

def snmp_cmd(cmd)
    `#{cmd} -Oq -v3 -u #{@user} -l authpriv -a MD5 \
    -A #{@auth} -x DES -X #{@priv} #{@name} #{@oid}`
end

在 oid 为“1”的 Linux 主机上运行该代码会得到整个 mib。不确定你为什么要这样做,因为这需要很长时间才能完成。你的问题可能是“以 Cisco 为中心”,因为这个代码片段在 HP 交换机和 Windows 主机上也适用于我(不是 oid=1 部分)。

您可能希望将查询范围缩小至特定项目。

答案2

看来问题确实出在交换机上的 SNMP 配置上。另一位思科工程师过来帮我们解决了这个问题。“只”浪费了我两周的时间,以为这是 Linux 方面的问题。:(

相关内容