snmp_walk.pl

SNMP ヘルパーを使用してデバイス全体またはデバイスの一部の SNMP ウォークを実行します。

説明

snmp_walk.pl スクリプトは、デバイス MIB 全体 (デフォルトでは internet から開始) または MIB の一部のウォークを実行します。

デフォルトでは、スクリプトは画面に出力を書き込みます。 -format オプションを使用して、スクリプトによる出力の書き込み方法を変更できます。

制約事項:

このスクリプトを実行する前に、ヘルパー・サーバー・プロセス ncp_d_helpserv と、マスター・プロセス・コントローラー ncp_ctrl または SNMP ヘルパー・プロセス ncp_dh_snmp のいずれかが、必要なドメインで実行されていることを確認します。

トラブルシューティング

このスクリプトは SNMPヘルパーを通して機器にアクセスし、SNMPヘルパーに設定されているコミュニティーの文字列を使用します。 ディスカバリー構成 GUIを使用して、コミュニティー・ストリングやデバイス・アクセスのその他の側面を構成できます。

ポーリングステーションと機器管理ノード間のネットワーク遅延や輻輳がスクリプトへの応答を遅延させる場合があります。

このスクリプトで問題を解決するには次の手順を行います。

  1. 次のコマンドを発行して、SNMP ヘルパーのプロセス ID を見つけます。 ps -aef | grep dh_snmp
  2. 次のコマンドでSNMPヘルパーのログとトレース レベルを増やします。

    kill -usr1 process_id
    kill -usr1 process_id
    kill -usr2 process_id
    kill -usr2 process_id
    kill -usr2 process_id
    kill -usr2 process_id

    ここで、 process_id は SNMP ヘルパーのプロセス ID です。

  3. snmp_walk.pl スクリプトを実行します。
  4. $NCHOME/log/precision ディレクトリー内の ncp_dh_snmp.log ファイルと ncp_dh_snmp.trace ファイルを確認します。

スクリプトの実行

スクリプトを実行するには、以下のようなコマンド行を使用します。
$NCHOME/precision/bin/ncp_perl $NCHOME/precision/scripts/perl/scripts/snmp_walk.pl -domain domain_name [
 -debug ] [ -format ] [ -help ] [ -ignoreInstanceFilters ] [ -latency ] [ -quiet ]
 IP_address OID|MIB_variable [ community_add_on ]
注: SNMP インターフェース・フィルターを無視するようにこのスクリプトを構成できます。 SNMP インターフェース・フィルターについて詳しくは、 SNMP インターフェース・フィルターを参照してください。

以下のコマンド行の例では、IP アドレス 1.2.3.4 のデバイスの ifTable のウォークが実行されます。 ifTable は MIB 変数として指定されます。 出力は画面に書き込まれます。

$NCHOME/precision/bin/ncp_perl $NCHOME/precision/scripts/perl/scripts/snmp_walk.pl -domain TEST 1.2.3.4 ifTable

以下のコマンド行の例では、VLAN コンテキストで IP アドレス 1.2.3.4 のデバイスの ifTable のウォークが実行されます。 出力は画面に書き込まれます。

$NCHOME/precision/bin/ncp_perl $NCHOME/precision/scripts/perl/scripts/snmp_walk.pl -domain TEST -format out 1.2.3.4 ifTable @vlan2

コマンド行オプション

スクリプトのコマンド行オプションについて次の表で説明します。

表 1. snmp_walk.pl コマンド行オプション
コマンド行オプション 説明
-debug オプション: プロセスのデバッグ・レベル (1 から 4) を設定します。
-domain ドメイン

必須。SNMP ウォークを実行する対象のデバイスを含むドメイン。

-format

デフォルトでは、スクリプトは画面に出力を書き込みます。 この動作を変更するには、-format オプションを使用します。

指定可能なオプションは以下のとおりです。
  • name - 名前に基づいて、取得したデータをファイルに書き込みます。 このファイルは IP_address.Starting_OID.MIB_name です。
  • oid - OID に基づいて、取得したデータをファイルに書き込みます。 このファイルは IP_address.Starting_OID.OID_name です。
  • out - 名前に基づいて、取得したデータを画面に書き込みます (STDOUT)。

複数の -format オプションを指定できます。

-help (オプション) このスクリプトのヘルプを表示します。
-ignoreInstanceFilters オプション: インターフェース・フィルターを無視して、デバイスの情報をすべて返します。
IP_address デバイスの IP アドレス。 SNMP を使用してアクセスできるアドレスである必要があります。 デバイス名は使用できません。
-latency オプション。SNMP ヘルパーからの応答が返ってくるまで待つときのタイムアウト (ミリ秒) を指定します。
OID|MIB_variable 必須。 SNMP ウォークを開始する MIB ノード。 ノードは、OID (例えば 1.3.6.1.2.1.2.2.1.1) または MIB 変数 (例えば ifIndex) として表すことができます。
-quiet オプション: 取得したデータと重要な情報のみを出力します。
community_add_on オプション: コミュニティー・ストリングへの追加コンテキスト。