各機器の状態を一元管理する(SNMP)
各機器の状態を一元管理する(SNMP)
SNMPとは
ネットワーク機器の状態を把握するプロトコル
ネットワークを安定的に稼働させるためには、障害や混雑が起きていないか、ネットワーク内の状況を把握する必要があります。
そのためにはネットワーク内にある各機器の状態を把握する必要がありますが、ネットワーク機器を一台ずつ管理するのは現実的ではないでしょう。
そこで数あるネットワーク機器を一元管理するためのプロトコルとしてSNMPがあります。
SNMP (Simple Network Management Protocol) とは、ルータ、スイッチを始めネットワーク機器の状態(CPU、メモリの使用率、トラフィック量など)を、ネットワーク経由で把握するためのプロトコルです。
SNMPは、UDP(高速重視のトランスポート層プロトコル)上で動作し、ポート番号に161、162を使用します。
定期的な連絡(ポーリング)には161、障害発生時の通知(トラップ)には162のポート番号を使用します。
SNMPの基本構成
SNMPマネージャとSNMPエージェント
SNMPは、ネットワーク機器を管理する機器をSNMPマネージャ、マネージャに管理されるその他の機器をSNMPエージェントと呼びます。
SNMPマネージャは、WindowsやLinuxなどのOSを含むコンピュータを指し、SNMPエージェントはルータやスイッチ、サーバなどを指します。
具体的な役割としてはSNMPマネージャは、SNMPエージェントと情報のやり取りを行うことで、各機器(エージェント)の情報を収集し、SNMPエージェントは要求に対しての情報を返したり、何か状態が変わった際の通知を行います。
MIB
またこれらのネットワーク機器の情報は、MIB (Management Information Base) と呼ばれるツリー状のデータベースに保存、管理されます。
※RFC1213によってMIBの構造が標準化されました。
MIBでは一つ一つの情報をオブジェクトと呼び、各オブジェクトの識別番号IDをOID(オブジェクトID)として管理します。
SNMPマネージャは、SNMPエージェントとこのOIDを介して情報のやり取りを行います。
SNMPのメッセージ
SNMPマネージャとSNMPエージェント間でやり取りされる、代表的なメッセージの内容について以下の通りになります。
SNMPのバージョン
SNMPにはSNMPv1、SNMPv2c、SNMPv3の3つのバージョンが存在します。メッセージの種類、認証、暗号化など主にセキュリティの内容に違いがあり、バージョンを重ねるごとによりセキュリティが強化されてきています。
バージョン別の違い、セキュリティの内容は下記の通りです。