【NET-SNMP】ベンダーMIBファイル追加設定


net-snmp の MIBファイル(デフォルトのMIB)は”/usr/share/snmp/mibs” に格納されています。
ciscoなどのベンダー機器が出力するSNMPトラップを受信するとsnmptrapdはOIDを解釈できません。

そこで、各ベンダーが提供するMIBファイルを追加することにより、OIDを解釈し、正常なSNMPトラップを出力してくれます。


ベンダーMIBを追加して反映させよう

ここでは、”/usr/share/snmp/vendormibs”というファイルを作成し、MIBファイルを追加する設定を紹介します。

# mkdir /usr/share/snmp/vendormibs

ディレクトリを作成したら、ベンダーMIBファイルをアップロードします。
※ローカルからのアップロードソフト(FFFTP、Winscpが便利)を使用します。

# ll
合計 216
-rw-r--r-- 1 root root 215811 6月 3 16:11 2014 mibs_f5.tar.gz

ファイルが圧縮されている場合は解凍してください
※Linux系はtarコマンドがよろしいみたい。(メモ)

# tar -xzvf mibs_f5.tar.gz
# ll
合計 216
drwxr-xr-x 2 502 502 4096 3月 13 07:59 2014 mibs_f5
-rw-r--r-- 1 root root 215811 6月 3 16:11 2014 mibs_f5.tar.gz

ベンダーMIBを認識させる為オプションファイルを編集

次に上記で追加したMIBファイルを認識させるためにオプション指定をします。

# vi /etc/sysconfig/snmptrapd

OPTIONS="-Lsd -p /var/run/snmptrapd.pid -M /usr/share/snmp/mibs:/usr/share/snmp/vendormibs -m all " #追加

ファイルへの追加設定が完了したら”snmptarpd”を再起動し、設定を反映します。

# service snmptrapd restart
snmptrapd を停止中: [ OK ]
snmptrapd を起動中: [ OK ]


ベンダーMIBが反映されているか確認する

snmpwalkコマンドで適当なOIDを引っ張ってきます。

snmpwalk -v 2c -c public (ベンダーアドレス)

以下のようなコマンドで省略系のMIB名を出力し、-Ofをつけることで、完全なMIB名が出力されます。

# snmptranslate .1.3.6.1.4.1
SNMPv2-SMI::enterprises

#  snmptranslate -Of SNMPv2-SMI::enterprises
.iso.org.dod.internet.private.enterprises

MIB名から出力したい場合は -Ib オプションを指定しなければいけません。 また、上記と同様に -Of オプションで完全なMIB名が出力されます。 OID で出力したい場合は、-On オプションを使用します。

# snmptranslate -Ib enterprises
SNMPv2-SMI::enterprises

# snmptranslate -Of -Ib enterprises
.iso.org.dod.internet.private.enterprises

# snmptranslate -On -Ib enterprises
.1.3.6.1.4.1

これで、確認できれば正常にベンダーMIBが認識されているかわかります。

以上です。


関連記事


2 件のコメント

  • これだとsnmptradしか認識できないんじゃないですかね。
    正しくは、snmp.confのMIBDIRSに追加すべきです。

  • コメントを残す

    メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

    日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

    ABOUTこの記事をかいた人

    blank

    インターネット関連のSEをやっています。 ネットワーク、サーバー、ストレージ、仮想基盤まで幅広く手を出しており、MVNOの構築経験もあります。 現在は、Pythonを使ったプログラミングの開発をしネットワークの自動化ツールを作成しています! Pythonの入門書も作成しているので、ぜひ参考にしてください!