見出し画像

SNMPの解説

SNMP(Simple Network Management Protocol)

ネットワークデバイスを管理および監視するためのプロトコル。ルータ、スイッチ、サーバー、プリンターなどのデバイスが対象であり、ネットワーク管理者がこれらのデバイスのパフォーマンスを監視し、障害を検出し、問題をトラブルシューティングするために使用される。

UDP(User Datagram Protocol)を使用してデータを送受信する。一般的にポート161で動作する。


アーキテクチャ

  • マネージャー(Manager): ネットワーク管理システム(NMS)で、ネットワークデバイスから情報を収集し、それを監視・管理するためのコンソール。

  • エージェント(Agent): 管理対象デバイスにインストールされるソフトウェアで、SNMPマネージャーの要求に応じてデバイスの情報を提供する。

  • MIB(Management Information Base): 管理情報ベース。ネットワークデバイスの管理に必要な情報を定義するデータベース。


MIB

ネットワーク管理プロトコルで使用されるデータベースで、ネットワークデバイスに関する管理情報を構造化して提供する。

MIBの基本構造

  1. オブジェクト

    • MIBはオブジェクトの集合体であり、各オブジェクトはネットワークデバイスの特定の属性や情報を表す。例えば、デバイスの名前、インターフェースのステータス、メモリ使用量など。

  2. OID(Object Identifier)

    • 各オブジェクトはOID(Object Identifier)という一意の識別子で識別される。OIDはツリー構造で表され、各ノードが特定の情報を表す。

    • 例えば、1.3.6.1.2.1はインターネットプロトコルの管理情報を指す。

  3. ツリー構造

    • MIBは階層的なツリー構造を持ち、ルートから個々のオブジェクトまで一連のノードで構成される。ルートから下位のノードに向かって各オブジェクトが分類される。

ISO(1)
 ├── Identified Organization(3)
      ├── Dod(6)
           ├── Internet(1)
                ├── Directory(1)
                ├── Management(2)
                     ├── MIB-2(1)
                          ├── System(1)
                          ├── Interfaces(2)
                          ├── ...

OIDの階層の一部を示しており、各レベルが特定のカテゴリを表している。OIDはドットで区切られた一連の数値で表される。

具体例

  • 1.3.6.1.2.1.1:

    • ISO(1)

    • Identified Organization(3)

    • Dod(6)

    • Internet(1)

    • Management(2)

    • MIB-2(1)

    • System(1)


SNMPの主要な動作と用途

GET リクエスト

SNMPマネージャーがエージェントから特定の管理情報を取得するために送信される。このリクエストには、取得したい情報を指定するOIDが含まれる。

SET リクエスト

SNMPマネージャーがエージェントに対して特定のOIDの値を設定するために送信される。このリクエストには、設定したい値が含まれる。ネットワークデバイスの設定を変更するために使用される。例えば、インターフェースを有効または無効にする、デバイスのパラメータを変更するなどがある。

TRAP

エージェントがマネージャーに対して自発的に通知を送信する動作を指す。この通知は、特定のイベントや障害が発生した際に送信される。例えば、デバイスの障害や異常を即時に検出し、管理者に通知するために使用される。

WALK

SNMPマネージャーが連続したGET-NEXTリクエストを使用してMIBツリー全体を探索する動作を指す。これにより、デバイスのすべての管理情報を収集することができる。これにより、MIBツリー内のすべてのオブジェクトを順次取得することが可能となる。


SNMPのバージョン

SNMPv1

SNMPv1は1988年に最初に開発されたバージョン。基本的なネットワーク管理機能を提供し、。認証にはコミュニティストリングというシンプルなテキストベースのパスワードを使用する。基本的な操作には、GET、SET、TRAPなどが含まれるが、セキュリティ機能は限られており、パスワードは平文で送信される。

SNMPv2c

SNMPv2は1993年に開発された改良版。SNMPv1に比べてパフォーマンスが向上している。SNMPv2cは、SNMPv1と同様にコミュニティストリングを使用して認証を行うが、GETBULKやINFORMなどの追加操作がサポートされている。これにより、大量のデータを効率的に取得することが可能。ただし、セキュリティ機能はSNMPv1と同様に限られている。

SNMPv3

SNMPv3は1998年に開発された最新バージョン。セキュリティと管理機能が大幅に強化されている。このバージョンでは、ユーザー名とパスワードによる認証(AuthNoPriv)や認証と暗号化(AuthPriv)をサポート。これにより、セキュアなネットワーク管理が可能になる。また、監査とアクセス制御リスト(ACL)により、詳細な管理が行える。

まとめ

  • SNMPv1: セキュリティが脆弱で、現代のネットワークではほとんど使用されない。

  • SNMPv2c: パフォーマンスは向上したが、セキュリティが不十分で内部ネットワークで主に使用される。

  • SNMPv3: 強化されたセキュリティ機能を持ち、現代のネットワーク管理において最も推奨される。














よろしければサポートお願いします!よりいい情報を発信します。