【フリーツール】【Win】SNMP関連のツール ~NET-SNMP編 ~

NET-SNMP

 * オープンソースSNMP開発キット

ダウンロード

http://sourceforge.net/project/showfiles.php?group_id=12694&package_id=162885

設定

http://www.nognog.com/techmemo/NET-SNMP_Win32_Install_HOWTO.php
を参考に行うのがいい。以下の5ステップを行う。

(1) インストール(普通にできるので省略)
(2) 「snmpd.conf」の設置
(3) Windowsサービスへの登録
(4) サービスの起動
(5) 動作確認(オプション)

「snmpd.conf」の設置

 [1] [スタート]-[プログラム]-[Net-SNMP]-[Net-SNMP Help]を選択
 [2] [検索]タグを選択し、「conf」で検索する
 [3] 検索結果一覧の中に「EXAMPLE.win32」を選択し、全て内容をコピーしてメモ帳へ貼り付ける
 [4] メモ帳の内容を以下のように修正(2か所)

 ■修正1
 【修正前】
  com2sec local localhost COMMUNITY
  com2sec mynetwork NETWORK/24 COMMUNITY
 【修正後】
  com2sec local localhost public
  com2sec mynetwork 0.0.0.0/0 public

 ■修正2
 【修正前】
  syslocation Right here, right now.
  syscontact Me <me@somewhere.org>
 【修正後】
  syslocation Anywhere, JAPAN.
  syscontact Administrator <me@somewhere.org>

 [5] 「C:\usr\etc\snmp\snmpd.conf」として保存

Windowsサービスへの登録

 [1] [スタート]-[プログラム]-[Net-SNMP]-[Service]-[Register Agent Service]を選択
   (※トラブルシューティング【1】を参照のこと)

サービスの起動

 [1] [スタート]-[ファイル名を指定して実行]を選択
 [2] 「%SystemRoot%\system32\services.msc /s」を実行
 [3] 「Net-SNMP Agent」を右クリックし、「開始」
   (※トラブルシューティング【2】を参照のこと)

動作確認

 [1] [スタート]-[ファイル名を指定して実行]を選択
 [2] 「cmd」を実行し、コマンドプロンプトを立ち上げる
 [3] 「cd c:\usr\bin\」に移動
 [4] 「snmpwalk -v 1 -c public localhost」を実行
  =>「SNMPv2-MIB::・・・」って表示されたらOK

参考資料

http://zumikurashi.blogspot.jp/2010/11/net-snmp.html
http://codezine.jp/article/detail/2830

snmptrapd

 * SNMPトラップを受け取るためのもの

snmptrapd.conf の設置

 * 「C:\usr\etc\snmp\snmptrapd.conf」として保存

構文

authCommunity 【TRAP を受信したときの挙動】 【コミュニティ名】

※「TRAP を受信したときの挙動」について
 ・execute:コマンドの実行
 ・log    :ログ出力
 ・net    :TRAPの転送

traphandle 【トラップOID】 【プログラム名】

※「トラップOID」について
 トラップOID に「default」を指定すると、全ての TRAPを対象とする

サンプル

authCommunity log,execute,net public

参考資料

http://wiki.livedoor.jp/engineernochiebukuro/d/TRAP%20%A4%F2%BC%F5%BF%AE%A4%B9%A4%EB%A4%CB%A4%CF

コマンド

snmptrapコマンド:送信

サンプル

snmptrap -v 2c -c public 127.0.0.1 "" .1.3.6.1.6.3.1.1.5.100

・「-v 2c」:SNMP Version
・「-c public」:trap用コミュニティ名 
・「127.0.0.1」:trapの送信先
・「""」:uptime(時刻)。これは省略。
・「.1.3.6.1.6.3.1.1.5.100」:トラップのOID

構文

snmptrap [OPTION] uptime trap-oid [OID TYPE VALUE]

参考文献

http://www.itmedia.co.jp/enterprise/articles/0705/31/news042_4.html
http://yosilove.blogspot.jp/2012_09_01_archive.html
http://d.hatena.ne.jp/minsaa/20070228/1172640388


トラブルシューティング

【1】「Can't open SCM(Seervice Control Manager):アクセスが拒否されました」

現象

 * Windows7において、Windowsサービスへの登録で、「Can't open SCM(Seervice Control Manager):アクセスが拒否されました」が表示され、登録できない

解決策

 * [Register Agent Service]を右クリックし、「管理者として実行」で解決

【2】「エラー1067 プロセスを途中で強制終了しました」

現象

 * Windows7において、「Net-SNMP Agent」を「開始」した後に、「エラー1067 プロセスを途中で強制終了しました」が表示され、開始されない
 * Windows Server(64Bit)で、「error1067 the process terminated unexpectedly」が表示された

解決策

 * 「SNMP サービス」「SNMP トラップ」を停止させてから、開始してみる

関連記事

SNMP関連のツール ~マネージャー編 etc ~

http://blogs.yahoo.co.jp/dk521123/31480347.html