SNMP通信の詳細(デバッグとパケットキャプチャ)【SNMPv2c】

SNMP通信の詳細(デバッグとパケットキャプチャ)【SNMPv2c】

SNMP通信(SNMPv2c)の詳細について、Cisco機器のデバッグログとパケットキャプチャを参照して説明します。

SNMPの説明やSNMPv2cの設定方法については、下記を参照してください。

目次

SNMP関連のデバッグ(Cisco機器)

Cisco機器のSNMP関連のデバッグには下記のコマンドがあります。

Router1#debug snmp ?
  cef              SNMP CEFMIB Errors
  cifextmib-err    SNMP CISCO-IF-EXT-MIB Errors
  cifextmib-trace  SNMP CISCO-IF-EXT-MIB Trace
  detail           SNMP Detail
  headers          SNMP packet headers
  ifmib-err        SNMP IFMIB Errors
  ifmib-trace      SNMP IFMIB Trace
  mib              MIB commands
  packets          SNMP packets
  requests         SNMP requests
  sessions         SNMP sessions
  sync             SNMP state synchronization
  timers           SNMP timer activity
  tunnel-mib       SNMP TUNNEL-MIB

今回は、下記のデバッグを有効にしています。

debug snmp detail
debug snmp packets
debug snmp headers
Router1#show debugging
SNMP:
  SNMP Detail debugging is on
  SNMP packet debugging is on
  SNMP packet header debugging is on

SNMPリクエストの通信詳細

単一情報のリクエスト(SNMPGet – Get Request)

SNMPマネージャからSNMPエージェント(Cisco機器)へ、ホスト名情報(sysName)をリクエストします。

単一情報のリクエスト(SNMPGet - Get Request)

SNMPマネージャでの実行コマンド・実行結果

SNMPマネージャで下記のコマンドを実行します。

snmpget -v2c -c public 192.168.1.100 1.3.6.1.2.1.1.5.0
Server[~]: snmpget -v2c -c public 192.168.1.100 1.3.6.1.2.1.1.5.0
SNMPv2-MIB::sysName.0 = STRING: Router1

SNMPマネージャが、SNMPエージェントからホスト名を取得できています。

デバッグ確認

SNMPエージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

ツリー情報のリクエスト(SNMPWalk – GetNext Request)

SNMPマネージャからSNMPエージェント(Cisco機器)へ、インターフェース情報(ifDescr)をリクエストします。

SNMPマネージャでの実行コマンド・実行結果

SNMPマネージャで下記のコマンドを実行します。

snmpwalk -v2c -c public 192.168.1.100 1.3.6.1.2.1.2.2.1.2
Server[~]: snmpwalk -v2c -c public 192.168.1.100 1.3.6.1.2.1.2.2.1.2
IF-MIB::ifDescr.1 = STRING: GigabitEthernet0/0
IF-MIB::ifDescr.2 = STRING: GigabitEthernet0/1
IF-MIB::ifDescr.3 = STRING: GigabitEthernet0/2
IF-MIB::ifDescr.4 = STRING: GigabitEthernet0/3
IF-MIB::ifDescr.5 = STRING: Null0

SNMPマネージャが、SNMPエージェントからインターフェース情報を取得できています。

デバッグ確認

SNMPエージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

ツリー情報の一括リクエスト(SNMPBulkWalk – GetBulk Request)

SNMPマネージャからSNMPエージェント(Cisco機器)へ、インターフェース情報(ifDescr)を一括リクエストします。

通常のSNMPWalkでは、全ての情報を取得するためにGetNext Requestを繰り返しましたが、SNMPBulkWalkでは、一つのResponseに複数の情報を格納して提示します。

SNMPマネージャでの実行コマンド・実行結果

SNMPマネージャで下記のコマンドを実行します。

snmpbulkwalk -v2c -c public 192.168.1.100 1.3.6.1.2.1.2.2.1.2
Server[~]: snmpbulkwalk -v2c -c public 192.168.1.100 1.3.6.1.2.1.2.2.1.2
IF-MIB::ifDescr.1 = STRING: GigabitEthernet0/0
IF-MIB::ifDescr.2 = STRING: GigabitEthernet0/1
IF-MIB::ifDescr.3 = STRING: GigabitEthernet0/2
IF-MIB::ifDescr.4 = STRING: GigabitEthernet0/3
IF-MIB::ifDescr.5 = STRING: Null0

SNMPマネージャが、SNMPエージェントからインターフェース情報を取得できています。

デバッグ確認

SNMPエージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

設定変更リクエスト(SNMPSet – Set Request)

SNMPマネージャからSNMPエージェント(Cisco機器)へ、Gi0/3のシャットダウン(ifAdminStatus = 2)をリクエストします。

SNMPマネージャでの実行コマンド・実行結果

SNMPマネージャで下記のコマンドを実行します。

snmpset -v2c -c private 192.168.1.100 1.3.6.1.2.1.2.2.1.7.4 i 2
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)

SNMPマネージャからの要求で、SNMPエージェントがインターフェースをシャットダウンしています。

デバッグ確認

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

SNMPトラップの通信詳細

通常のトラップ送信(Trap)

SNMPエージェント(Cisco機器)からSNMPマネージャへ、SNMPトラップ(Gi0/3のリンクダウン)を送信します。

SNMPエージェント(Cisco機器)での実行コマンド・実行結果

SNMPエージェント(Cisco機器)で下記のコマンドを実行します。

interface Gi0/3
shutdown
Router1(config-if)#interface Gi0/3
Router1(config-if)#shutdown
Router1(config-if)#
%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エージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

確認応答を要求するトラップ送信(Inform Request – 確認応答有り)

SNMPエージェント(Cisco機器)からSNMPマネージャへ、SNMPトラップ(Gi0/3のリンクダウン)を送信します。

SNMPエージェント(Cisco機器)での実行コマンド・実行結果

SNMPエージェント(Cisco機器)で下記のコマンドを実行します。

interface Gi0/3
shutdown
Router1(config-if)#interface Gi0/3
Router1(config-if)#shutdown
Router1(config-if)#
%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エージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

確認応答を要求するトラップ送信(Inform Request – 確認応答無し → 再送)

SNMPエージェント(Cisco機器)からSNMPマネージャへ、SNMPトラップ(Gi0/3のリンクダウン)を送信します。

Inform Request のリトライ回数、タイムアウト時間は下記のコマンドで設定できます。

snmp-server inform retries [0-100] timeout [0-42949671] pending [1-4294967295]

詳細は、下記を参照してください。

SNMPトラップの確認応答を要求するための設定(SNMPトラップの再送)

SNMPエージェント(Cisco機器)での実行コマンド・実行結果

SNMPエージェント(Cisco機器)で下記のコマンドを実行します。

interface Gi0/3
shutdown
Router1(config-if)#interface Gi0/3
Router1(config-if)#shutdown
Router1(config-if)#
%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エージェント(Cisco機器)のデバッグログを確認します。

キャプチャ確認

SNMPマネージャとSNMPエージェント(Cisco機器)の間で取得したパケットキャプチャを確認します。

以上で、SNMP通信の詳細(デバッグとパケットキャプチャ)【SNMPv2c】の説明は完了です!

  • URLをコピーしました!
  • URLをコピーしました!
目次