snmpwalkはSNMP v3では動作しません

snmpwalkはSNMP v3では動作しません

当社には、長年にわたり snmpv2 経由で Nagios を使用して監視してきた Cisco スイッチがあります。最近、監査チームにより、すべてのネットワーク デバイスを snmpv3 に移行するよう強制されました。

Cisco のエンジニアが来てスイッチに 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 全体が生成されます。完了までに長い時間がかかるため、なぜこれを行う必要があるのか​​わかりません。このスニペットは HP スイッチと Windows ホストでも機能するため、問題は 'Cisco 中心' である可能性があります (oid=1 の部分ではありません)。

クエリを特定の項目に絞り込むこともできます。

答え2

問題は確かにスイッチの SNMP 設定にあったようです。別の Cisco エンジニアが来て、問題を解決してくれました。Linux 側の問題だと思い込んで、2 週間も無駄にしてしまっただけです。:(

関連情報