web-dev-qa-db-ja.com

SNMPおよびMIBの問題

Ubuntu 12.04サーバーを実行しているマシンからいくつかのデバイスをSNMP経由で監視するためにZabbixをインストールしています。

Snmpコマンドは一部のMIBを適切に変換しないため、MIB定義に問題があります。 「snmp-mibs-downloader」パッケージをすでにインストールしているため、MIBの説明を含むファイルは適切にインストールされます。

MIBは数値キーを取得するためにのみ変換されます(MIBファイルはsnmpコマンドからアクセス可能です)が、snmpgetコマンドによって返される結果はキーを適切に変換しません。私が使用しているzabbixテンプレートは、変換されたキー(SNMPv2-MIB :: sysUpTime.)を期待しているため、現在の結果は認識されず、これらは無視されます。

テストケース:

$ snmptranslate -On SNMPv2-MIB::sysUpTime.0
.1.3.6.1.2.1.1.3.0

$ snmpget -v 2c -c public 192.168.1.1 1.3.6.1.2.1.1.3.0
iso.3.6.1.2.1.1.3.0 = Timeticks: (2911822510) 337 days, 0:23:45.10

別のマシン(非常に古いRed Hatベースのディストリビューションを実行している)で、snmpコマンドは予想どおり、直接および逆の両方の変換を実行します。

# snmptranslate -On SNMPv2-MIB::sysUpTime.0
.1.3.6.1.2.1.1.3.0

# snmpget -v 2c -c public 192.168.1.1 1.3.6.1.2.1.1.3.0
SNMPv2-MIB::sysUpTime.0 = Timeticks: (2911819485) 337 days, 0:23:14.85

Ubuntuボックスの問題は何ですか?何か足りないものはありますか?

2
jap1968

私のシステムにsnmpとsnmpdがインストールされていれば、次のように動作します。

 $ snmpget -m SNMPv2-MIB -v 2c -c public 127.0.0.1 1.3.6.1.2.1.1.3.0 
 SNMPv2-MIB :: sysUpTime.0 =タイムティック:(1422579)3 :57:05.79 

さまざまなMIBが重複しているようですので、-mオプションで必要なモジュールを指定する必要があると思います。

以下も機能します。

$ snmpget -v 2c -c public 127.0.0.1 SNMPv2-MIB::sysUpTime.0
SNMPv2-MIB::sysUpTime.0 = Timeticks: (129146) 0:21:31.46

したがって、MIBモジュールを指定せずに数値OIDを指定するとsnmpgetは数値表示を返しますが、特定のMIBへのシンボリック参照で要求を修飾すると、そのMIB定義が使用されます応答を解釈します。

man snmp.confも参照してください

4
John S Gruber