amegonの雑なブログ

日常的なものから技術的なものまでメモの雑記

SnmpB 使い方

目的

SNMP 機器の監視を行うための項目を作成するにあたり、MIB ファイルを確認してあーだこーだとやっていました。
しかし、MIB ファイルというのは製品によって固有の MIB (Private MIB)が提供されていたり、そもそも数が多い上にファイルとファイルがリンクしていて、この情報を取得するためにはこのMIBファイルが必要で、、、なんてことをテキストベースのファイルだけでやっていくのは非常に面倒です。
そこで、もっと視覚的に理解を助けてくれるツールがあったらなー、というところで出会ったのがこの SnmpB というツールです。
一部使い方がわかっていない機能もありますが、自分自身の使用メモとして残しておきたい思いで記載しています。
他の方の役にも立てば幸いです。

SnmpB とは

SnmpB はメインの機能を一言でいうと MIBブラウザです。
SNMP(Simple Network Management Protocol)を用いて、対象となる機器の情報を MIB(Management Information Base)を元に取得、設定することができます。

個人的に重宝するのが、MIB ファイルがあれば対象の機器がなくとも MIB のツリーを表示することができるところです。
対象機器によっては複数の Private MIB が提供されていて、構成を把握するのに四苦八苦しますが、SnmpB の機能を使用して MIB ファイルからツリーを作成すれば MIB の構造を理解しやすくなります。(と思っている。)

後述しますが、MIB ブラウザの基本的な機能だけではなく、SNMP Trap の受信など多くの機能を有しており、対象機器の SNMP 動作確認だけではなく監視ツールとしても利用できる可能性があると思います。

できること

基本的な機能と応用的な機能(個人的見解)に分けて、以下のことが実現されています。

基本的な機能

  • MIB の定義内容の確認
    • MIB をツリーで描画し、MIB 内に定義されている内容を GUI で確認できる
  • MIB ブラウザ機能
    • 特定の機器に対して、指定した MIB の情報を SNMP を使用して情報取得することができる
    • MIB の指定は前述の MIB ツリーで行う
  • MIB ファイルの追加
    • 新たに取得した MIB ファイルを SnmpB に追加することで、ツリーの描画に加えることができる

応用的な機能

  • MIB の編集
  • ディスカバリ
  • SNMP Trap の受信
  • グラフ
  • ログ

今回紹介するバージョンと使用環境

SnmpB とそれを動作させる環境は以下で試しました。

  • SnmpB
    • Version 0.8
  • 使用環境
    • PC
    • ネットワーク機器

ダウンロードとインストール

ダウンロードサイト

以下の URL からダウンロードしてください。
執筆時点での最新版は 0.8 でした。

https://sourceforge.net/projects/snmpb/

※ サイトの Files を確認すると、0.9 というフォルダはあるのですが、中身がなく、、、今後できるのかな?

インストール

ダウンロードした snmpb-0.8.exe をダブルクリックなりしてインストールしてください。
インストール時に特に設定変更する必要はないと思いますので、サクサクっとインストールしてみましょう。
今回はすべてデフォルト設定でインストールしました。

ちなみに、アンインストールはメニューの中にありました。
(設定のアプリ内には SnmpB が表示されておらず、アンインストールはメニューからのみ実行できるようです。)

ざっくりやってみる

対象のネットワーク機器を追加して SNMP で情報取得

以下順に操作していきます。

  • Options の Manager Agent Profiles... を選択
  • 表示されたダイアログの左側の四角内で 右クリック → New agent profile を選択
  • 左側の四角内に newagent が表示され、右側のパラメータが入力された状態が表示される
  • 必要なパラメータを入力
    • ここでは以下のパラメータを入力してOKを押す。
      • Name:AR260SV2
      • Agent Address/Name:192.168.1.254
  • メインダイアログに戻り、Remote SNMP Agent に AR260SV2 が表示された状態になる
  • MIB Tree> MIB Tree 上で 右クリック → Walk を選択する
  • ダイアログ右側の Query Results に Walk の実行結果が表示される

今回のケースでは、SNMP で情報が取得することができた。

対象のネットワーク機器の Private MIB を登録

次に、AR260SV2 の Private MIB を登録してみる。
登録した結果が反映されていることを確認するために、まず現在の状態で Walk を実施し、Private MIB を登録したのち再度 Walk を実施して結果の違いを確認する。

事前確認

  • Remote SNMP Agent に AR260SV2 が選択されている状態で MIB Tree を展開し、system を 右クリック → Walk を実行する
    • MIB Tree → iso → org → dod → internet → mgmt → mib-2 → system
  • Query Results に表示された内容で、2. sysObjectID.0enterprise.207.1.23.1.1 と表示されていることを確認する

Private MIB の登録

  • AR260SV2 の Private MIB である ateatos.mib を C:\work\snmp\add_mib というフォルダを作成して保存しておく。
    • Private MIB を保存するフォルダの場所は任意
  • Options → Preferences を選択する
  • 左側四角内の Modules を選択した状態で右下の Add ボタンを押し、type new path here と表示されたところに C:\work\snmp\add_mib を入力してOKボタンを押す。
  • メイン画面で Modules を選択し、Available MIB modules に ateatos.mib が追加されていることを確認する
  • ateatos.mib を選択した状態で、画面中央の -> を選択し、Load MIB modules に EATOS-SMI が追加されたことを確認する
    • EATOS-SMI は ateatos.mib に定義されている モジュール名(DEFINITIONS) である。MIB ファイル名が表示されるわけではないことに注意。
    • このとき RFC-1215 も Loaded MIB modules に移動する。関連するモジュールがある場合には一緒に実施してくれるようである。

結果確認

  • Tree に戻って system を 右クリック → Walk を実行する
  • Query Results に表示された内容で、2. sysObjectID.0ar260sv2 と表示されていることを確認する
    • ここで表示された ar260sv2 は、ateatos.mib に定義されている製品名であり、Private MIB を登録したことで表示が変わったことがこれで確認できた。
    • ateatos.mib 内の記載
        --
        -- sysObjectID of AR260 Series
        --
           ar260sv2      OBJECT IDENTIFIER ::= { ar260series 1 }
      

ちなみに

Private MIB を追加したことで、MIB Tree に以下のツリーが追加で描画されている。

追加する Private MIB によって、Tree のどこに情報が追加されるのかは変わるので、確認場所は注意すること。

各部の名称と役割

全部の機能を把握しているわけではないので、個人的に有用なところから紹介していきます。
また、機能的にも ??? のところがあるかもしれませんが、ご容赦ください。

メニュー

File

このメニューは、SnmpB の Editor 機能で MIB ファイルの作成、編集を行う際に使用する。
そのため、他の機能の使用時にはメニューが有効にならない。

  • New MIB
    • 新しい MIB を作成する。編集していたファイルの情報はクリアされる。
  • Open MIB...
    • 既存の MIB ファイルを開き、その内容を表示する。
  • Save MIB
    • 編集した MIB を上書き保存する。
  • Save MIB As...
    • 編集した MIB をファイル名を変えて保存する。

Tools

このメニューは、SnmpB の Tree 機能と Editor 機能で使用するメニューがある。

  • GoTo Line...
    • 指定した行数にカーソルを移動する
  • Find...
    • 指定した文字が含まれる(表示される)箇所に移動する
  • Replace...
    • 文字の置換を行う
  • Find next
    • Find で指定した文字が次に一致する箇所に移動する
  • Multiple Varbinds...
    • Tree で MIB のノードを選択した際に使用可能。
    • (使い方がわかっていない)
  • Stop Walk
    • 開始した walk の停止 (たぶん)
  • Verify MIB syntax
    • Editor 機能で編集している MIB の構造を検証する。結果は Verification log に表示される。
  • Extract MIB from RFC...
    • (使い方がわかっていない)

Options

  • Manage Agent Profiles...
    • SnmpB がアクセスする対象の設定
  • Manage SNMPv3 USM Profiles...
    • SNMPv3 の設定をす場所。ここで設定しておいた Profile を Manage Agent Profiles 内の Agent に設定して使用する。
  • Preferences...
    • Tree の表示形式や MIB ファイルの保存場所パスの設定、SNMP Trap の受信ポート番号の設定などができる。

Help

  • About SnmpB
    • バージョン情報等の AboutBox

メイン画面

主な機能を以下に記載します。

  • Tree
    • 対象となる機器の設定
    • MIB Tree の表示
    • MIB Tree で選択した Node の情報表示
    • 取得した結果の表示
  • Modules
    • SnmpB に登録する MIB モジュールの設定
  • Editor
    • MIB の作成、編集に使用
    • MIB の構文チェック結果を表示
  • Discovery
    • 指定した情報でネットワーク内を探索して情報が取得できた機器の情報を表示する
  • Traps
    • 機器から送信された SNMP Trap の情報を表示する
  • Graphs
    • 指定した MIB OID の取得値をグラフで表示する
  • Log
    • (おそらく)SnmpBのシステムに関するログを表示する。

参考

最後に

Martin Jolicoeur へ素敵なツールを提供してくれたことと、このツールの紹介に許可をくれたことに心から感謝します。

Dear Martin Jolicoeur,
Thank you very much for providing a best tool and for allowing me to introduce this tool.