SNMP でエージェントを開発していますが、MIB ファイルに関連する質問があります。エージェントはどのように MIB からオブジェクトの値を取得/設定しますか (「MIB」は、値のないオブジェクトの定義のみを指すと思います)。MIB ファイルからオブジェクトのデバイス ハンドル値を管理するにはどうすればよいですか?
1 に答える
SNMP エージェントを作成するには、いくつかの手順に従う必要があります。
リスト項目 最初に MIB を定義します。MIB では、さまざまなオブジェクトの作成/設定/取得操作を公開します。これらのオブジェクトはツリーにグループ化されます。
MIB を解析し、そこからデータ モデルを取得するパーサー モジュールを記述します。
トランスポート モジュール、メッセージ プロセッサ モジュール、およびメッセージ ディスパッチャ モジュールを記述します。
トランスポートを介して (ネットワークを介して) データを定義する場合は、標準の SNMP PDU 形式に従います。
メッセージがトランスポートから受信された後、エージェント側のメッセージ処理モジュールは、認証や承認 (SNMP v3 の場合) などのいくつかをチェックし、OID の可用性をチェックします (OID で定義されているかどうかをチェックします)。 MIB かどうか) およびその他のチェックがあるかどうかを確認します。
すべてが成功した場合は、応答 PDU を作成し、同じ要求 ID を使用して、要求を開始したマネージャーに送り返します。
ゼロからすべてを作成して自由に利用できるライブラリを利用する必要がないため、開発に関するさらなるアイデアについては、 net-snmpとsnmp4jを確認してください。