SNMP4JGUI

SNMP4JをGUIから実行するツール

作者 アスシ

Vector

SNMP4JをGUIから実行するツール

〜SNMPのライブラリ「snmp4j.jar」を使ってSNMP-Walkを実行〜

ダウンロード(Free)

SNMP(Simple Network Management Protocol)のツールはたくさんあるけど、内部で使っているライブラリ
は結構同じフリーのライブラリを使っていたりするもので、中でもsnmp4j を使っているツールをよく目にします。

 

snmp4jのページ

http://www.snmp4j.org/index.html

 

ダウンロードから「SNMP4J sources and library v.xx」を選択してzipファイルを取得して、解凍すると snmp4j\dist\lib
配下に SNMP4J.jar が入っているので、これを使います。

 

* src:ソースフォルダも同胞されているので見てみると、src\org\snmp4j 配下の Snmp.java というクラスが中心に
    なっているクラスらしい。

 

ただ、このクラスを解析して、自作でSnmp.java を利用するクラスを作成するのは大変なので、
snmp4j\src\org\snmp4j\tools\console 配下の SnmpRequest.java を利用するのが簡単です。

 

SnmpRequest.javaにはmainメソッドがあり、引数を与えて実行することで SNMP Get などのリクエスト
実行できます。

 

SnmpRequestの実行手順はこんな感じです。

 > java -cp <フォルダパス>\SNMP4J.jar org.snmp4j.tools.console.SnmpRequest [オプション] address [OID]

 

zipファイルを Cドライブ直下に解凍した場合の例:

●localhostのsysNameを取得

    * アドレスが「127.0.0.1」、sysNameのOIDは「1.3.6.1.2.1.1.5」です。 

C:\>java -cp "C:\snmp4j\dist\lib\SNMP4J.jar" org.snmp4j.tools.console.SnmpRequest -v 2c 127.0.0.1 1.3.6.1.2.1.1.5


2009/05/12 10:03:06 org.snmp4j.log.JavaLogAdapter log
情報: UDP receive buffer size for socket 127.0.0.1/0 is set to: 8192
Received response after 32 millis
Response received with requestID=623926875, errorIndex=0, errorStatus=Success(0)
1.3.6.1.2.1.1.5.0 = SNMPMACHINE      ← sysNameを取得している!!!

 

●localhostのSNMPの全OID情報をSNMP WALKで取得 

   * SNMP WALKを実行する際のオプションは「-Ow」です。

C:\>java -cp "C:\snmp4j\dist\lib\SNMP4J.jar" org.snmp4j.tools.console.SnmpRequest -v 2c -Ow 127.0.0.1

 

1.3.6.1.2.1.1.1.0 = Hardware: x86 F------------------
1.3.6.1.2.1.1.2.0 = 1.3.6.1.4.1.311.1-----------------
1.3.6.1.2.1.1.3.0 = 0:57:24.52
   ( 長いので途中、省略.. )

1.3.6.1.4.1.77.1.3.5.0 = 0
1.3.6.1.4.1.77.1.3.7.0 = 0
1.3.6.1.4.1.77.1.4.1.0 = A------------------      
← 最終OIDまでWALKで取得!!!

Total requests sent:    283
Total objects received: 2827                     ← localhostから2827件のOID情報を取得した!!!
Total walk time:        3000 milliseconds

 

●localhostにSNMP Trapを送信 

   * SNMP Trapを送信する際のオプションは「-p TRAP」です。

  localhostの162番ポートにSNMP v2 Trapを送信しています。Trapを受信できるツール等を使って確認できます。(画面)

C:\>java -cp "C:\snmp4j\dist\lib\SNMP4J.jar" org.snmp4j.tools.console.SnmpRequest -v 2c -p TRAP localhost/162

 

2009/05/12 11:03:06 org.snmp4j.log.JavaLogAdapter log
情報: UDP receive buffer size for socket 127.0.0.1/0 is set to: 8192
TRAP sent successfully                    ← Trap送信成功!!!

 

★その他の SnmpRequest を実行する際のオプションは ココ にSnmpRequest.java 内に記載のコメントを貼っています。★

 


SNMP4J-GUIは、コマンドからSNMPRequestを実行するのが面倒だったので、GUIから実行するようにしたツールです。特に、SNMP WALKの実行に注力しています。
( * WALK以外のコマンド実行用のツールも含んでいます。)
 
中身は SNMPRequest を呼んでいるだけで、SNMPRequest では結果を System.out.println で出力していますが、このツールでは StringBuffer を画面に返すようにしました。
 
ダウンロード(フリーソフト)
1: SNMP4J.jarも含んだexeファイル
        SNMP4J-GUI_ALL1.1(Vector)
 
 
 

バナースペース