コンピュータのSNMPプロトコルについての深い理解: 原理、機能、およびアプリケーションのシナリオ

序文

Simple Network Management Protocol (SNMP) は、ネットワーク デバイスを管理するためのプロトコルであり、管理者がネットワーク上のデバイスを監視、構成、トラブルシューティングできるようにします。この記事では、SNMP バージョン、管理情報ベース MIB、管理情報構造 (SMI)、SNMP メッセージ、5 種類のプロトコル データ ユニット、および操作プロセスを詳しく紹介します。

1.SNMPのバージョン

 

SNMP には、SNMPv1、SNMPv2c、SNMPv3 という 3 つのバージョンがあります。SNMPv1 は最も古いバージョンですが、セキュリティが低く、単純な管理操作のみをサポートしています。SNMPv2c は SNMPv2 のサブセットであり、いくつかの新しい機能が追加されていますが、セキュリティはまだ十分ではありません。SNMPv3 は最新バージョンであり、セキュリティと拡張性が向上し、暗号化や認証などの機能がサポートされています。

2. 経営情報の構造(SMI)

 

管理情報構造 (SMI) は、MIB 内のオブジェクト タイプと属性を定義します。SMI は、整数、文字列、ブール値などのいくつかの基本データ型を定義し、シーケンスやセットなどのいくつかの複雑なデータ型も定義します。SMI は、オブジェクト識別子の形式、データ型のエンコード方法など、いくつかのルールも定義します。

3. SNMPメッセージ

 

SNMP パケットは、SNMP プロトコルにおける基本的な通信単位であり、管理操作のための要求または応答情報が含まれています。SNMP メッセージはヘッダーとデータ部分で構成されます。ヘッダーにはバージョン番号やコミュニティ文字列などの情報が含まれ、データ部分には特定の管理操作情報が含まれます。

4. SNMP プロトコルは 5 つのデータ単位を定義します

それらは、管理情報ベース (MIB)、SNMP プロトコル データ ユニット (PDU)、Get リクエスト、GetNext リクエスト、および Set リクエストです。これら 5 つのデータ ユニットについては、以下で個別に紹介します。

1. 管理情報ベース (MIB)


管理情報ベースは SNMP プロトコルの重要な概念であり、ネットワーク デバイスのさまざまな属性や状態を記述するために使用される階層データベースです。MIB 内の各オブジェクトには、OID (Object Identifier) と呼ばれる一意の識別子があります。OID は、MIB 内の各オブジェクトを識別するために使用される一連の番号です。MIB 内のオブジェクトには、CPU 使用率、メモリ使用率、インターフェイス ステータスなど、ネットワーク デバイスのさまざまな属性を指定できます。

2. SNMP プロトコル データ ユニット (PDU)


SNMP プロトコル データ ユニットは、SNMP プロトコルの基本データ ユニットであり、ネットワーク デバイス間で管理情報を送信するために使用されます。SNMP プロトコル データ ユニットには次のフィールドが含まれます。

1. バージョン番号: SNMP プロトコルのバージョン番号 現在、SNMPv1、SNMPv2c、SNMPv3 の 3 つのバージョンがあります。
2. コミュニティ名: SNMP メッセージの送信者と受信者が同じ管理ドメインに属しているかどうかを確認するために使用されます。
3. リクエスト識別子: SNMP メッセージの一意性を識別するために使用されます。
4. エラーステータス: 成功、失敗など、SNMP メッセージの処理ステータスを示すために使用されます。
5. エラー インデックス: SNMP メッセージ内のエラーのあるオブジェクトのインデックスを示すために使用されます。

3. リクエストの取得


Get リクエストは、ネットワーク デバイスからオブジェクトの値をリクエストするために使用される SNMP プロトコルのデータ ユニットです。Get リクエストには次のフィールドが含まれます。

1. バージョン番号: SNMP プロトコルのバージョン番号。
2. コミュニティ名: SNMP メッセージの送信者と受信者が同じ管理ドメインに属しているかどうかを確認するために使用されます。
3. リクエスト識別子: SNMP メッセージの一意性を識別するために使用されます。
4. エラーステータス: 成功、失敗など、SNMP メッセージの処理ステータスを示すために使用されます。
5. エラー インデックス: SNMP メッセージ内のエラーのあるオブジェクトのインデックスを示すために使用されます。
6. オブジェクト識別子リスト: 取得するオブジェクトの OID を指定するために使用されます。

4. GetNext リクエスト


GetNext リクエストは SNMP プロトコルのデータ ユニットで、ネットワーク デバイスから次のオブジェクトの値をリクエストするために使用されます。GetNext リクエストには次のフィールドが含まれます。

1. バージョン番号: SNMP プロトコルのバージョン番号。
2. コミュニティ名: SNMP メッセージの送信者と受信者が同じ管理ドメインに属しているかどうかを確認するために使用されます。
3. リクエスト識別子: SNMP メッセージの一意性を識別するために使用されます。
4. エラーステータス: 成功、失敗など、SNMP メッセージの処理ステータスを示すために使用されます。
5. エラー インデックス: SNMP メッセージ内のエラーのあるオブジェクトのインデックスを示すために使用されます。
6. オブジェクト識別子リスト: 次に取得するオブジェクトの OID を指定するために使用されます。

5. リクエストの設定


Set リクエストは SNMP プロトコルのデータ単位であり、オブジェクトの値をネットワーク デバイスに設定するために使用されます。Set リクエストには次のフィールドが含まれます。

1. バージョン番号: SNMP プロトコルのバージョン番号。
2. コミュニティ名: SNMP メッセージの送信者と受信者が同じ管理ドメインに属しているかどうかを確認するために使用されます。
3. リクエスト識別子: SNMP メッセージの一意性を識別するために使用されます。
4. エラーステータス: 成功、失敗など、SNMP メッセージの処理ステータスを示すために使用されます。
5. エラー インデックス: SNMP メッセージ内のエラーのあるオブジェクトのインデックスを示すために使用されます。
6. オブジェクト識別子リスト: 設定するオブジェクトの OID を指定するために使用されます。
7. オブジェクト値リスト: 設定するオブジェクトの値を指定するために使用されます。

つまり、SNMP プロトコルの 5 つのデータ ユニットは、ネットワーク機器の管理と監視の重要なコンポーネントであり、ネットワーク管理者がこれらのデータ ユニットの意味と使用法を理解することが非常に重要です。

5. SNMP の操作プロセスは、次の主要なポイントに分けることができます。

1. 管理サイトがプロキシサイトにリクエストを送信します。

SNMP 管理サイトは、ネットワーク経由でエージェント サイトにリクエストを送信し、デバイスのステータス、パフォーマンス、および構成情報を提供するようにエージェント サイトに要求できます。これらのリクエストは、読み取りまたは書き込み操作にすることができます。読み取り操作はデバイスの情報を取得するために使用され、書き込み操作はデバイスの構成を変更するために使用されます。

2. プロキシサイトがリクエストに応答します

エージェントサイトは、管理サイトからリクエストを受信すると、リクエストの種類と内容に応じてリクエストに応答します。読み取り操作の場合、プロキシ サイトはデバイスの情報を返し、書き込み操作の場合、プロキシ サイトはデバイスの構成を変更し、変更結果を返します。

3. 管理サイトが応答を解析します

エージェント サイトから応答を受信した後、管理サイトは応答内容を解析して、デバイスのステータス、パフォーマンス、構成情報を取得します。管理サイトは、読み取り操作の場合は取得した情報を管理インターフェースに表示し、書き込み操作の場合は変更結果を表示します。

4. SNMPプロトコルのセキュリティ

SNMP プロトコルのセキュリティは重要な問題です。SNMP は平文で送信するため、ハッキングされやすいです。SNMP プロトコルのセキュリティを向上させるために、暗号化および認証機能をサポートし、SNMP プロトコルのセキュリティを保護できる SNMPv3 プロトコルを使用できます。

6. 応用シナリオ

1. ネットワークデバイスの監視:

SNMP を使用すると、CPU 使用率、メモリ使用率、ネットワーク帯域幅などのネットワーク デバイスのステータスを監視できます。管理者は SNMP を通じてこの情報を取得し、問題を適時に発見して解決できます。

2. ネットワークパフォーマンス管理:

SNMP は、遅延、パケット損失率、スループットなどのネットワーク パフォーマンスを監視するために使用できます。管理者は、ネットワーク パフォーマンスを最適化するために、SNMP を通じてこの情報を取得できます。

3. ネットワークセキュリティ管理:

SNMP は、侵入検知、ファイアウォールのステータスなどのネットワーク セキュリティを監視するために使用できます。管理者は SNMP を通じてこれらの情報を取得し、セキュリティ上の問題を適時に発見して解決できます。

4. サーバー管理:

SNMP を使用して、CPU 使用率、メモリ使用量、ディスク容量などのサーバーのステータスを監視できます。管理者は SNMP を通じてこの情報を取得し、問題を適時に発見して解決できます。

5. アプリケーションの監視:

SNMP を使用すると、データベース接続数、Web サーバーの応答時間など、アプリケーションのステータスを監視できます。管理者は SNMP を通じてこの情報を取得し、問題を適時に発見して解決できます。

一言で言えば、SNMP は非常に便利なネットワーク管理プロトコルであり、管理者がネットワークの問題を適時に発見して解決し、ネットワークの信頼性とパフォーマンスを向上させるのに役立ちます。

おすすめ

転載: blog.csdn.net/weixin_74021557/article/details/131239541