SNMPの基礎として、構成要素・通信の種類・MIB・コミュニティ・バージョンについて説明します。
Cisco機器のSNMP設定方法は、下記を参照してください。
SNMP(Simple Network Management Protocol)とは
SNMP(エスエヌエムピー)とは、「Simple Network Management Protocol」の略で、ネットワーク機器やサーバーを管理するためのプロトコルです。SNMPを用いることにより、ネットワーク経由で様々な機器の監視・管理・制御を行うことができます。
構成要素(マネージャとエージェント)
SNMPの構成要素として、「SNMPマネージャ」と「SNMPエージェント」の2つがあります。それぞれの役割は下記の通りです。
SNMPの構成要素
構成要素 | 役割 | 機器 |
---|---|---|
SNMPマネージャ | SNMPエージェントの監視・管理・制御を行う機器(ソフトウェア) | Windows端末/サーバー、Linuxサーバー |
SNMPエージェント | SNMPマネージャによって管理される機器 | ネットワーク機器、サーバー、PC端末等 |
通信の種類
SNMPリクエスト(要求・ポーリング)
SNMPマネージャから情報を要求し、SNMPエージェントが情報を提供する。
Ciscoルーターからの情報取得例
Server[~]: snmpget -v2c -c public 192.168.1.100 1.3.6.1.4.1.9.9.109.1.1.1.1.8.1
SNMPv2-SMI::enterprises.9.9.109.1.1.1.1.8.1 = Gauge32: 7
SNMPマネージャから設定変更を要求し、SNMPエージェントが設定変更を行う。
Ciscoルーターの設定変更例
Server[~]: snmpset -v2c -c private 192.168.1.100 1.3.6.1.2.1.2.2.1.7.4 i 2
IF-MIB::ifAdminStatus.4 = INTEGER: down(2)
%SYS-5-CONFIG_I: Configured from 192.168.1.2 by snmp
%LINK-5-CHANGED: Interface GigabitEthernet0/3, changed state to administratively down
%LINEPROTO-5-UPDOWN: Line protocol on Interface GigabitEthernet0/3, changed state to down
SNMPリクエスト(マネージャからエージェントへの通信)は、「UDPの161番ポート」が利用されます。
SNMPトラップ
SNMPエージェントが能動的にSNMPマネージャに情報を送信する。
SNMPトラップ(エージェントからマネージャへの通信)は、「UDPの162番ポート」が利用されます。
MIB・OID
MIBとOIDの説明
SNMPエージェントが管理している情報データベースのことを「MIB(Management Information Base)」と呼びます。
MIBはツリー型の階層構造を持っており、項目には番号が付けられています。この番号のことを「OID(Object-ID)」と呼びます。
また、MIBには「標準化された標準MIB」と「各ベンダー固有の拡張MIB」があります。
ネットワーク機器のMIB/OID
ネットワーク機器が持つ代表的なMIB/OIDとしては、下記があります。
ネットワーク機器自体の情報
名称 | OID | 説明 | 標準/拡張 |
---|---|---|---|
sysName | 1.3.6.1.2.1.1.5.0 | 機器のホスト名・ノード名 | 標準 |
sysDescr | 1.3.6.1.2.1.1.1.0 | 機種名やOSバージョン等の機種情報 | 標準 |
sysUpTime | 1.3.6.1.2.1.1.5.0 | 機器が起動してからの時間 | 標準 |
インターフェース関連の情報
名称 | OID | 説明 | 標準/拡張 |
---|---|---|---|
ifIndex | 1.3.6.1.2.1.2.2.1.1 | インターフェースのインデックス番号 | 標準 |
ifDescr | 1.3.6.1.2.1.2.2.1.2 | インターフェース名 | 標準 |
ifPhyAddress | 1.3.6.1.2.1.2.2.1.6 | インターフェースの物理アドレス(MACアドレス) | 標準 |
ifOperStatus | 1.3.6.1.2.1.2.2.1.8 | インターフェースのUP/DOWNステータス | 標準 |
ifHCInOctets | 1.3.6.1.2.1.31.1.1.1.6 | インターフェースの受信データ量(総Byte数) | 標準 |
ifHCOutOctets | 1.3.6.1.2.1.31.1.1.1.10 | インターフェースの送信データ量(総Byte数) | 標準 |
リソース関連の情報
名称 | OID | 説明 | 標準/拡張 |
---|---|---|---|
cpmCPUTotal5secRev | 1.3.6.1.4.1.9.9.109.1.1.1.1.6 | 5秒平均のCPU利用率 | 拡張(Cisco) |
cpmCPUTotal1minRev | 1.3.6.1.4.1.9.9.109.1.1.1.1.7 | 1分平均のCPU利用率 | 拡張(Cisco) |
cpmCPUTotal5minRev | 1.3.6.1.4.1.9.9.109.1.1.1.1.8 | 5分平均のCPU利用率 | 拡張(Cisco) |
ciscoMemoryPoolUsed | 1.3.6.1.4.1.9.9.48.1.1.1.5 | 利用中のメモリの容量 | 拡張(Cisco) |
ciscoMemoryPoolFree | 1.3.6.1.4.1.9.9.48.1.1.1.6 | メモリの空き容量 | 拡張(Cisco) |
トラップ
名称 | OID | 説明 | 標準/拡張 |
---|---|---|---|
coldStart | 1.3.6.1.6.3.1.1.5.1 | 機器の電源投入され起動 | 標準 |
linkDown | 1.3.6.1.6.3.1.1.5.3 | インターフェースがDOWNに変化 | 標準 |
linkUp | 1.3.6.1.6.3.1.1.5.4 | インターフェースがUPに変化 | 標準 |
topologyChange | 1.3.6.1.2.1.17.0.2 | STPのトポロジが変化 | 標準 |
ospfNbrStateChange | 1.3.6.1.2.1.14.16.2.2 | OSPFのネイバー状態が変化 | 標準 |
bgpEstablished | 1.3.6.1.2.1.15.7.1 | BGPのピアが確立 | 標準 |
ciscoEnvMonTemperatureNotification | 1.3.6.1.4.1.9.9.13.3.0.3 | 温度異常を検知 | 拡張(Cisco) |
ciscoEnvMonFanNotification | 1.3.6.1.4.1.9.9.13.3.0.4 | ファン異常を検知 | 拡張(Cisco) |
cHsrpStateChange | 1.3.6.1.4.1.9.9.106.2.0.1 | HSRP状態が変化 | 拡張(Cisco) |
コミュニティ
コミュニティ名
コミュニティとは、SNMPで管理する対象のグループを示す名前です。下図のように管理対象に名前を付けてグループ分けすることができます。SNMPエージェントは同じコミュニティ名のマネージャからの要求にのみ答えることができます。
コミュニティは、SNMPv2cまでで利用される考え方です。SNMPv3では利用されません。(SNMPv3では、ユーザー名とパスワードによる認証を行います。)
RO(Read-Only)とRW(Read-Write)
コミュニティ毎にアクセス権限を設定することができます。
アクセス権限 | 説明 |
---|---|
RO(Read-Only) | MIB情報の読み取りのみ可能 |
RW(Read-Write) | MIB情報の読み取りと書き込み(変更)が可能 |
アクセス権限をRWとすると、SNMPを利用して設定変更や再起動が可能となるため、注意が必要です。
「コミュニティ:public」は読み取り権限のみとする
Router1(config)#snmp-server community public ro
「コミュニティ:private」は読み取りと書き込み権限を与える
Router1(config)#snmp-server community private rw
バージョン
SNMPバージョンについて
SNMPには、「SNMPv1」「SNMPv2c」「SNMPv3」の3つのバージョンがあります。※「SNMPv2」は、あまり利用されないまま、「SNMPv2c(Community-based SNMPv2 〜 RF1901)」に移行されました。
各バージョンの違い
各バージョンの違いは下記の通りです。
項目 | SNMPv1 | SNMPv2c | SNMPv3 |
---|---|---|---|
認証 | コミュニティ名 | コミュニティ名 | ユーザ単位のパスワード認証 |
暗号化 | 無し | 無し | 有り |
トラップの再送 | 無し | 有り | 有り |
メッセージの種類 | 5種類 ・Get Request ・GetNext Request ・Set Request ・Get Response ・TRAP | 7種類 ・Get Request ・GetNext Request ・Set Request ・Get Response ・TRAP ・GetBulk Request ・Inform Request | 7種類 ・Get Request ・GetNext Request ・Set Request ・Get Response ・TRAP ・GetBulk Request ・Inform Request |
値のカウンター | 32bit | 64bit | 64niy |
設定の容易さ | 簡単 | 簡単 | 複雑 |
・SNMPv2cでは、トラップの確認応答を要求できるようになり、データの値も64ビットに拡張されました。(主に機能面の強化)
・SNMPv3では、認証方式の強化と暗号化機能が導入されました。(主にセキュリティ面の強化)
以上で、SNMPとは【構成要素・通信の種類・MIB・コミュニティ・バージョン】の説明は完了です!