ネットワークデバイスの管理と監視は、組織のスムーズな運用に欠かせません。その目的を果たすため、多くの組織ではSNMP (Simple Network Management Protocol)を使用しています。
SNMPは、ネットワーク管理者が対象デバイスのステータスやパフォーマンスに関する情報を収集し、デバイスを設定するための標準的なインターネットプロトコルです。
この記事では、SNMP監視について詳しく解説し、各種のバージョンやコンポーネントを見ていきます。
SNMPはSimple Network Management Protocolの略で、ルーター、スイッチ、サーバー、プリンターなどのネットワークデバイスの管理と監視を目的とした標準的なインターネットプロトコルです。
ネットワーク管理者はSNMPを使用することで、対象デバイスのステータスとパフォーマンスに関する情報を収集し、デバイスの設定と制御をリモートで行えます。このプロトコルは、管理システムと管理対象デバイスという考え方に基づいて動作します。
管理システム(ネットワーク管理ソフトウェアやツール)は、SNMPを使用して管理対象デバイスにリクエストを送信し、情報を取得したり特定の操作を実行したりします。
SNMP監視は、ネットワークデバイスの情報を収集および管理するいくつかのコンポーネントで構成されています。各コンポーネントがどのように連携するかを以下にまとめました。
SNMPコマンドを使用すると、SNMP監視でのデータの収集、構成、イベント通知の受信が行いやすくなります。コマンドを使用することで、SNMPマネージャーが管理対象デバイス上のSNMPエージェントとやり取りして、ネットワーク管理に必要な情報を収集できます。
よく使われるSNMPコマンドをいくつか紹介します。
Getは、管理対象デバイスから特定のSNMPオブジェクトまたは属性の値を取得します。SNMPマネージャーによって開始され、SNMPエージェントに送信されます。コマンドには取得したいオブジェクトのOID (オブジェクト識別子)を指定します。エージェントは対象オブジェクトの値をレスポンスとして返します。
GetNextは、MIB階層内で次に位置するオブジェクトの値を取得します。マネージャーは現在位置にあるオブジェクトのOIDを指定し、エージェントはその位置の次にあるオブジェクトのOIDと値を返します。
Setは、管理対象デバイスのSNMPオブジェクトの値を設定します。SNMPマネージャーはこのコマンドを使用して、デバイスの設定やパラメーターを変更できます。
GetBulkは、1回のリクエストで管理対象デバイスから大規模なデータを取得します。さまざまなオブジェクトを取得する際は、GetやGetNextのコマンドを複数回にわたり実行するよりも、GetBulkを使用するのが効率的です。
Trapは、SNMPエージェントの方からSNMPマネージャーに送信される自発的な通知です。エージェントはトラップメッセージをマネージャーに送信します。このメッセージには、イベントと重大度の情報が含まれています。リンク障害、高いCPU使用率、システムの再起動など、特定のイベントや条件によってトラップをトリガーできます。
SNMPは、時間とともに進化してきました。バージョンを重ねるごとに、セキュリティ、機能性、パフォーマンスが強化されています。以下に、SNMPのバージョン1、2、3の概要を説明します。
SNMPバージョン1は、SNMPの最初のバージョンとして、ごく基本的な機能を備えています。コミュニティベースのセキュリティ認証モデルを使用していて、コミュニティ文字列と呼ばれるパスワードのような共通の資格情報を使用します。SNMP v1のセキュリティ機能は限定的で、暗号化をサポートしていません。
SNMPバージョン2では、SNMP v1を強化して、機能性を改善しています。大規模なデータを取得するSNMP GetBulk操作や、通知を確実に届けるためのSNMP Informメッセージなど、いくつかの機能が追加されました。
ただし、SNMP v2cは引き続きコミュニティ文字列を使用して認証を行っているので、セキュリティリスクに対して脆弱です。加えて、SNMPメッセージの完全性と秘匿性を守る強力なセキュリティ機構を備えていません。
SNMPバージョン3は、SNMPの最新バージョンです。以前のバージョンで懸念されていたセキュリティの問題に対応しており、強化されたセキュリティ機能が利用できます。セキュリティが最も強固なバージョンで、セキュリティレベルやセキュリティモデルといった概念も導入されました。
セキュリティモデル:SNMP v3では、以下の3種類のセキュリティモデルを定義しています。
セキュリティレベル:SNMP v3はさらに、以下の3つのセキュリティレベルを定義します。
SNMP v3では、強力な認証、メッセージの完全性と暗号化など、セキュリティ面が強化されています。これらの機能強化があるので、安全なSNMPの監視と管理に適したバージョンとして推奨されます。
重要な点として、SNMP v3では以前のバージョンとの下位互換性がありません。ただし、多くのネットワークデバイスと監視システムが、複数のSNMPバージョンをサポートしているので、柔軟に導入でき、レガシーシステムとの互換性も確保されています。
ネットワークデバイスのパフォーマンス、健全性、利用率など、SNMPメトリクスから重要なインサイトが得られます。標準的なSNMPメトリクスには、次のようなものがあります。
どのメトリクスが利用できるかは、デバイスや実装されているSNMPによって異なります。ネットワーク管理者は監視の要件に応じて適切なメトリクスを選択でき、それらのメトリクスを通じてネットワークインフラの全体的な健全性についてのインサイトが得られます。
(関連記事:NOCとSOCの違いについて)
SNMP監視ツールはさまざまな種類が入手可能であり、ネットワーク管理者はこれらを使ってSNMP対応デバイスの監視と管理に活用できます。よく使われるツールをいくつか紹介します。
SolarWinds NPMは、SNMPに対応したネットワーク監視の総合的なソリューションです。SNMPデバイスをリアルタイムで監視し、アラートを送信し、レポートを作成する機能が用意されています。デバイス検出、パフォーマンス監視、帯域幅使用率の分析、アラートの自動化にも対応しています。
PRTGは、「センサー」を使用して監視をするという独自のアプローチで、ほかのツールの中でも際立っています。PRTGの監視機能は、こうしたセンサーによって支えられています。
各センサーは、監視すべき特定の要素に対応しています。たとえば、あるセンサーはサーバーのCPU負荷を監視し、別のセンサーは利用可能なディスク容量をチェックする、といった具合です。
PRTGの特長は、さまざまなSNMPセンサーが事前に設定されていることです。これらのセンサーは、HP、Synology、Dell、Ciscoなど、メーカー各社のデバイスに対応しています。つまり、これらのメーカー製デバイスを追加の設定なしで簡単に監視できるということです。
ManageEngine OpManagerも、SNMPの管理に最適なツールです。さまざまな目標レベルを設定できるので、ネットワークやデバイス全体の健全性を確保できます。さらにOpManagerでは、ネットワークのマッピング、表示する情報のカスタマイズなど、追加の機能が利用できます。
Spiceworks Network Monitorは、無料で使用できるSNMP監視ツールです。ほかのソフトウェアパッケージとは異なり、このツールはSNMPの監視に特化しています。すぐにセットアップできる、使いやすいダッシュボードを備えています。
SNMP対応のデバイスをウィジェットとしてダッシュボードに追加できるので、重要なデバイスデータを常に可視化できます。アラート機能もシンプルで使いやすく、グローバルとデバイスごとに基本的なしきい値を設定して通知を送信できます。
Observiumは、メンテナンスの少ないSNMP監視ツールで、以下の3つのバージョンがあります。
どのバージョンを選んでも、Observiumは使いやすいツールです。デバイスの自動検出機能を使用するか、手動で選択して、監視対象のデバイスを追加できます。デバイスを追加した後は、概要ページに移動して各デバイスのステータスが確認できます。
SNMP監視は、ネットワーク管理の高機能なソリューションです。管理者に必要なツールとインサイトを備えているので、ネットワークインフラの効率的な運用を確保できます。SNMP監視と適切なツールを活用することで、組織のネットワークを監視および管理し、問題に対処できます。
このブログはこちらの英語ブログの翻訳です。
この記事について誤りがある場合やご提案がございましたら、ssg-blogs@splunk.comまでメールでお知らせください。
この記事は必ずしもSplunkの姿勢、戦略、見解を代弁するものではなく、いただいたご連絡に必ず返信をさせていただくものではございません。
Splunkプラットフォームは、データを行動へとつなげる際に立ちはだかる障壁を取り除いて、オブザーバビリティチーム、IT運用チーム、セキュリティチームの能力を引き出し、組織のセキュリティ、レジリエンス(回復力)、イノベーションを強化します。
Splunkは、2003年に設立され、世界の21の地域で事業を展開し、7,500人以上の従業員が働くグローバル企業です。取得した特許数は1,020を超え、あらゆる環境間でデータを共有できるオープンで拡張性の高いプラットフォームを提供しています。Splunkプラットフォームを使用すれば、組織内のすべてのサービス間通信やビジネスプロセスをエンドツーエンドで可視化し、コンテキストに基づいて状況を把握できます。Splunkなら、強力なデータ基盤の構築が可能です。