2015年10月31日

オープンソースの SNMP エージェント・シミュレータ - snmposter と「俺、 fork したよ」って話

僕がブログを始めたのは、まだその頃珍しかった Java 言語で記述されたオープンソースの SNMP(Simple Network Management Protocol)ライブラリ SNMP4J(http://www.snmp4j.org)の詳しい説明をエントリすれば月間 100 万 PV ぐらい稼いで広告収入でアーリー・リタイアできるかもって考えたのがきっかけでした。 でも、結局・・・全然・・・そんなことにはならなくて、今もまだ(まあまあ)真面目に働いてます。 今日は SNMP マネージャーの開発や評価で必要になる SNMP エージェント・シュミレーターの1つ、snmposter を紹介をします。

snmposter

  続きを読む
Posted by netbuffalo at 20:41Comments(0)TrackBack(0)

2013年01月31日

How to use "smiparser" - Free MIB/SMI Parser for Java

これまでSNMP4Jを使って、Java + 実践SNMPプログラミングというテーマで何回か解説してきましたが、MIBパーサーの話は避けてきました。 フリーのJava MIB ParserといえばMibbleがあるのにです。

理由は、Mibbleは良いAPIですがライセンスがGPLだから。 

GPLはコピー・レフトに例えられるようにコードの自由を強く保証しますが、開発者・利用者としてみると原理主義的な面があり、僕には少し窮屈に感じられるのです。

mib-smiparser

今日はJava開発者が、より自由(?)に利用できるsmiparserをご紹介します。
  続きを読む
Posted by netbuffalo at 22:00Comments(0)TrackBack(0)

2011年01月11日

実践SNMP+Java-Trap受信性能

久しぶりにSNMP4Jです。今回はTrap受信性能について評価してみます。
一般的な商用ソフトウェアのTrap受信性能は1000~1200(trap/sec)といったところですが、
SNMP4Jの受信性能はどの程度でしょうか?

早速確認してみましょう。
  続きを読む
Posted by netbuffalo at 09:11TrackBack(0)

2010年08月06日

実践SNMP+Java - Timeout Model

今回はタイムアウトとリトライ数について考えます。
 
サンプルコードを使って動く・動かないを検証するだけであればタイムアウトとリトライはさほど気にすることは無いパラメータですが、実践ではいざという時に重要なパラメータになります。
  続きを読む
Posted by netbuffalo at 19:49TrackBack(0)

2010年07月26日

実践SNMP+Java - SNMP Set

SNMP4Jを利用したSNMP Setについて説明します。

その名の通りSetを使うとSNMPを使ってエージェントの値を設定する事が出来ます。
  続きを読む
Posted by netbuffalo at 20:06TrackBack(0)

2010年07月23日

実践SNMP+Java - SNMP Inform

SNMP4Jを利用したSNMPv2 Informの送信について説明します。

これまでに説明したSNMPv1 Trap, SNMPv2 Trapを使うと、SNMPマネージャにアラームを通知することが出来ますが、Trapの場合、それだけではマネージャ側が受信したか否かを送信(SNMPエージェント)側で知ることは出来ません。

ですから、重要なアラームであるほど通知先(相手)が受信したことを知りたい、という実践(運用)上の矛盾が生じます。
  続きを読む
Posted by netbuffalo at 14:49TrackBack(0)

2010年07月22日

実践SNMP+Java - SNMPv2 Trap

SNMP4Jを利用したSNMPv2 Trapの送信について説明します。
 
SNMPv2トラップではv1に比較し、PDUフォーマットがGet/GetNext/Setリクエストと統一されています。
  続きを読む
Posted by netbuffalo at 13:04TrackBack(0)

2010年07月21日

実践SNMP+Java - SNMPv1 Trap

SNMP4Jを利用したSNMPv1 Trapの送信について説明します。
  続きを読む
Posted by netbuffalo at 18:36TrackBack(0)

2010年07月20日

実践SNMP+Java GetBulk

SNMP4Jを利用したSNMP GetBulk操作について説明します。

GetBulkは前回説明したGetNextの繰り返しであるWalkに近く、まとめて・複数のMIBオブジェクトを取得する為のSNMP PDUタイプです。
 
連続したMIBオブジェクトを一括で取得したい場合、GetNextに比較すると、
マネージャ/エージェント間のPDU数を減らすことが出来る為、効率良く取得出来ます。
  続きを読む
Posted by netbuffalo at 14:50TrackBack(0)

2010年07月17日

実践SNMP+Java DisplayString

GetNext/Walkに関する記事で紹介したコードを使って、ifTable.ifEntry.ifDescrを取得すると、次のような:で分割されたHexStringが表示される場合があります。
(大部分のケースでは正しいインタフェースの名称が表示されます)

何故でしょうか?
  続きを読む
Posted by netbuffalo at 20:19TrackBack(0)

実践SNMP+Java GetNextとWalk

SNMP4Jを利用したSNMP GetNextとWalk操作について説明します。
まずは、シンプルなGetNextコードから説明します。 
  続きを読む
Posted by netbuffalo at 17:47TrackBack(0)

実践SNMP+Java Get

ここではSNMP4Jを利用したSNMP Getオペレーションについて説明します。
  続きを読む
Posted by netbuffalo at 03:56TrackBack(0)

2010年07月15日

実践SNMP+Java SNMP4Jの特徴

SNMP4J(http://www.snmp4j.org)はALIIライセンスで提供されているSNMP APIライブラリです。
  続きを読む
Posted by netbuffalo at 18:52TrackBack(0)

2010年07月14日

実践SNMP+Java はじめに

Javaを使ったSNMPプログラミング、さらに現場で使える実践的となると、探しても中々情報が見つからず苦労した思い出があります。これから勉強するエンジニアに同じ回り道はさせたくないと思い、自分で書いてみることにしました。
  続きを読む
Posted by netbuffalo at 11:27TrackBack(0)