SNMPのメッセージフォーマット

SNMPのメッセージフォーマット

今回は、「SNMPマネージャー」「SNMPエージェント」
やりとりに利用されるメッセージフォーマットについて
見ていきたいと思います。

 

SNMPのメッセージフォーマット

 

SNMPパケットは、一般的な「ヘッダ」と「データ」という形式ではなく、
「タイプ」「長さ」そして「値」という3つのフィールドが使われていて、
4つの階層構造になっています。

1階層目では、SNMPのバージョン番号(v1、v2c、v3)を指定している
フィールドと、SNMPマネージャとSNMPエージェント間で
やり取りする認証用の識別子を指定する「コミュニティ名」フィールド、
SNMPコマンドのフィールドが含まれています。

2階層目では、SNMPパケットの役割を伝えるためのコマンドを指定する
「コマンドタイプ」フィールド、それぞれのリクエストを識別するための、
リクエストIDやエラー状況を伝えるためのエラーステータスなどの
フィールドがあります。

エラーステータス・フィールドの値の意味は以下のとおりです。

  • 0:noError
    エラーなし
  • 1:tooBig
    返信された結果のサイズが大きすぎて、エージェント側が応答を作成できない
  • 2:noSuchName
    要求された名前(オブジェクト)が存在しない
  • 3:badValue
    要求されたオブジェクトに、正しくない値が含まれている
  • 4:readOnly
    Read-Onlyとなっているオブジェクトを変更しようとした
  • 5:genError
    その他の定義されていないエラー

3階層目では、複数の管理情報のフィールドがあり、
最後の4階層目で管理情報の種類を意味するオブジェクトIDと、
その値がペアで入っています。

実際にネットワークの運用を行う上で押さえておきたい点は
以下の2点です。

  • SNMPコマンド
  • 管理情報(MIB:Management Information Base)

 

SNMPコマンド

SNMP(Simple Network Management Protocol)は、
コマンドのやり取りで機器やネットワークの管理を行います。
Simpleと名が付いているように、コマンドも5つしかありません。

  • GetRequest
    SNMPエージェントへ情報を要求するコマンド
  • GetNextRequest
    SNMPエージェントへ次の情報を要求するコマンド
  • GetResponse
    SNMPエージェントからの要求に対して、応答を返すコマンド
  • SetRequest
    情報を書き込む際に使用するコマンド
  • Trap
    SNMPマネージャへ情報を通知するコマンド

関連記事

メールマガジン

ネットワ-ク初心者のみなさま。
ネットワークの基礎知識を疎かにすることは
大変危険です!!

「初心者にも理解できるネットワーク技術」

これを読めばネットワークの基礎が分かる!!
ネットワーク関連の仕事に就きたいとお考えの学生の方や、ネットワークに興味があって転職を考えている社会人の方、まずは登録してみてください。

もちろん無料です!!

↓メールマガジン購読はこちら↓

メールアドレス: