SNMPとデバイスの状態データ
SNMPがネットワークデバイスから状態情報を収集する仕組みを学びます。
「SNMPとデバイスの状態データ」はCoddyKit上の無料Cloud & IT Cert Prepレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCloud & IT Cert Prep学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
SNMPとは
SNMP(Simple Network Management Protocol)は、ルーター、スイッチ、ファイアウォール、サーバーなどのネットワークデバイスから、状態や健全性に関するデータを収集するための標準プロトコルです。中央のマネージャーが各デバイス上で動作する小さなソフトウェアエージェントと通信し、CPU負荷、インターフェースの状態、トラフィックカウンターなどの値を要求します。SNMPは、ほとんどの監視システムの基盤です。
マネージャーとエージェント
SNMPには2つの役割があります。マネージャー(Network Management System、またはNMSとも呼ばれます)は、データを要求して保存する監視サーバーです。エージェントは各管理対象デバイス上で動作するソフトウェアで、要求に応答し、アラートを送信することもできます。マネージャーは多数のエージェントをポーリングし、各エージェントは自分のデバイスに関する情報だけを報告します。このマネージャーとエージェントのモデルは、数千台のデバイスに拡張できます。
MIBとOID
各エージェントは、MIB(Management Information Base)を通じてデータを公開します。MIBは、読み取り可能なすべての情報を構造化してまとめたカタログです。それぞれの値にはOID(Object Identifier)があり、システムの稼働時間を示す1.3.6.1.2.1.1.3.0のようなドット区切りの数値アドレスで表されます。マネージャーが特定のOIDを要求すると、エージェントは現在の値を返します。MIBとOIDによって、SNMPはベンダーが異なっても共通の言語で通信できます。
SNMPの主要メッセージ
SNMPでは、少数のメッセージを使用します。
- Get — マネージャーが1つの値を要求します。
- GetNext / GetBulk — 多数の値を効率よく順番に取得します。
- Set — マネージャーが書き込み可能な値を変更します。
- Trap / Inform — エージェントがイベントをマネージャーに報告します。
GetとSetはマネージャーが開始し、トラップはエージェントが開始します。
Getによるポーリング
マネージャーがポーリングを行うと、一定の間隔でGet要求を送信し、応答を記録します。時間の経過とともに、これらの測定値からCPU、メモリ、帯域幅のグラフを作成できます。ポーリングは傾向の把握には信頼性がありますが、変化を次のポーリングまで把握できないため、わずかな遅延が生じます。SNMPのポーリングは通常、エージェント側のUDPポート161を使用します。
snmpget -v2c -c public 10.0.0.1 sysUpTime.0即時アラートのためのトラップ
トラップとは、インターフェースの停止や電源装置の故障など、注目すべき事象が発生した瞬間にエージェントが送信する、要求されていないメッセージです。トラップはUDPポート162でマネージャーに届きます。トラップはUDPを使用するため、配信は保証されません。一方、インフォームはトラップの受信をマネージャーが確認する、確認応答付きの仕組みです。
SNMPのバージョン
重要なバージョンは3つです。SNMPv1とSNMPv2cは、パスワードとして平文のコミュニティ文字列を使用します。暗号化されずに送信されるため、安全ではありません。SNMPv3では認証と暗号化が追加され、データと認証情報の両方が保護されます。試験でも実務でも、現代的で安全な環境にはSNMPv3を選ぶことが推奨されます。
コミュニティ文字列
v1とv2cでは、コミュニティ文字列がアクセスを制御します。読み取り専用の文字列ではポーリングが可能で、読み書き可能な文字列ではSet操作も可能です。一般的なデフォルト値である「public」(読み取り)と「private」(書き込み)は広く知られているため、そのまま使うのは重大なリスクです。必ずデフォルト値を変更し、できればSNMPv3へ移行してください。
ヘルスデータから分かること
SNMPでは、インターフェースの稼働/停止状態、インターフェースごとのバイト数とパケット数、エラー数と破棄数、CPUとメモリの使用率、温度、稼働時間など、デバイスの豊富なヘルスデータを取得できます。監視ツールはこれらを組み合わせてグラフやアラートを作成します。たとえば、インターフェースのエラー増加はケーブル不良を示唆し、CPU使用率の上昇はデバイスの過負荷を警告している可能性があります。
SNMPと他のデータソースの比較
SNMPは数値カウンターやステータスの取得に優れていますが、唯一のデータソースではありません。Syslogはテキスト形式のイベントメッセージを運び、NetFlowは誰と誰が通信しているか、また通信量がどれだけかを示します。完全な監視プラットフォームでは、SNMPのヘルスメトリクス、syslogイベント、フローデータを組み合わせます。どの問いにどのデータソースが答えられるかを知ることは、トラブルシューティングに欠かせないスキルです。
SNMPのセキュリティ保護
SNMPではデバイス設定の読み取りだけでなく変更も可能なため、慎重にセキュリティを確保してください。暗号化と認証にはSNMPv3を使用し、ACLで管理ネットワークからのアクセスだけに制限し、デフォルトのコミュニティ文字列を変更し、不要な場所ではSNMPを無効にします。SNMPのセキュリティ設定が不十分だと、ネットワークトポロジの情報が漏えいしたり、攻撃者にデバイスを再設定されたりする可能性があります。
クイックチェック
SNMPの知識を確認しましょう。
まとめ
SNMPについて学びました。重要なポイント:
- マネージャーはデバイス上のエージェントをポーリングしてヘルスデータを取得します。
- 値はMIBに格納され、OIDで指定されます。
- Get/Setはマネージャーが開始し、トラップはエージェントが開始するアラートです(トラップはポート162、ポーリングは161)。
- v1/v2cは平文のコミュニティ文字列を使用し、SNMPv3でセキュリティが追加されます。
- SNMPをsyslogやフローデータと組み合わせることで、全体を可視化できます。
よくある質問
「SNMPとデバイスの状態データ」レッスンは無料ですか?
はい。「SNMPとデバイスの状態データ」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cloud & IT Cert Prepコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cloud & IT Cert Prepコースには全4レッスンが含まれています。
「SNMPとデバイスの状態データ」で何を学びますか?
SNMPがネットワークデバイスから状態情報を収集する仕組みを学びます。 ブラウザで直接実行するハンズオンコードでCloud & IT Cert Prepを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cloud & IT Cert Prepを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCloud & IT Cert Prepは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。
「SNMPとデバイスの状態データ」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCloud & IT Cert Prepレッスンでコードを書いて実行できますか?
はい。すべてのCloud & IT Cert Prepレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。
このコースのすべてのレッスン
- 監視が重要な理由
- SNMPとデバイスの状態データ
- ログ、Syslog、アラート
- ベースラインとパフォーマンス指標