SNMPトラップ
SNMPトラップの設定
トラップは、SNMP エージェントからリモートネットワーク管理システムまたはトラップ受信者に送信される未承認メッセージです。企業は、システム ログに加えて、障害監視ソリューションの一部として SNMP トラップを使用します。Junos OSでは、SNMPトラップを使用したい場合は、トラップグループを設定する必要があります。
1つ以上のSNMPトラップタイプのグループを作成し、名前を付け、SNMPトラップのグループを受信するシステムを定義することができます。トラップグループの名前は、コミュニティ名と呼ばれる1つの可変バインディング(varbind)としてSNMPトラップ通知パケットに組み込まれます。
SNMPトラップを設定するには:
SNMPトラップオプションを設定する
SNMPトラップオプションを使用して、発信インターフェイスに関わらず、ルーターが送信したすべてのSNMPトラップの送信元アドレスを単一アドレスに設定できます。さらに、SNMPv1トラップのエージェントアドレスを設定できます。SNMPv1トラップのコンテンツについては、RFC 1157をご覧ください。
SNMPはマスタルーティングインスタンスのみと関連付けることができます。
SNMPトラップオプションを設定するには、trap-optionsを参照してください。
また、トラップオプションを有効にするには、トラップグループを設定する必要があります。トラップグループについては、SNMPトラップグループを設定するを参照してください。
このトピックには、以下のセクションが含まれています。
SNMPトラップのソースアドレスを設定する
トラップパケットの送信元アドレスは、lo0、ルーターインターフェイスの1つに設定された有効なIPv4アドレスまたはIPv6アドレス、論理システムアドレス、またはルーティングインスタンスのアドレスなどの複数の方法で設定できます。値lo0は、SNMPトラップパケットの送信元アドレスがインターフェイスlo0上で設定された最低のループバックアドレスに設定されていることを示しています。
SNMPトラップは、ソースアドレスが有効なIPv4またはIPv6アドレスであるか、設定されている場合にのみ生成できます。
トラップパケットの送信元アドレスを以下の形式のいずれかで設定できます。
ルーターインターフェイスの1つに設定された有効なIPv4アドレス
ルーターインターフェイスの1つで設定された有効なIPv6アドレス
lo0。つまり、インターフェイスlo0上で設定された最低のループバックアドレス論理システム名
ルーティングインスタンス名
送信元アドレスとして有効なIPv4アドレス
ルーターインターフェイスの1つのSNMPトラップの送信元アドレスとして有効なIPv4インターフェイスアドレスを指定するには、[edit snmp trap-options]階層レベルにsource-addressステートメントを含めます。
[edit snmp trap-options] source-address address;
addressは、ルーターインターフェイスの1つで設定された有効なIPv4アドレスです。
送信元アドレスとして有効なIPv6アドレス
ルーターインターフェイスの1つのSNMPトラップの送信元アドレスとして有効なIPv6インターフェイスアドレスを指定するには、[edit snmp trap-options]階層レベルにsource-addressステートメントを含めます。
[edit snmp trap-options] source-address address;
addressは、ルーターインターフェイスの1つで設定された有効なIPv6アドレスです。
送信元アドレスとして最低のループバックアドレス
インターフェイスlo0上で設定された最低のループバックアドレスを送信元アドレスとして使用するようにSNMPトラップの送信元アドレスを指定するには、[edit snmp trap-options]階層レベルにsource-addressステートメントを含めます。
[edit snmp trap-options] source-address lo0;
ループバックアドレスを有効にして設定するには、[edit interfaces lo0 unit 0 family inet]階層レベルにaddressステートメントを含めます。
[edit interfaces]
lo0 {
unit 0 {
family inet {
address ip-address;
}
}
}
トラップパケットの送信元アドレスとしてループバックアドレスを設定するには:
[edit snmp]
trap-options {
source-address lo0;
}
trap-group "urgent-dispatcher" {
version v2;
categories link startup;
targets {
192.168.10.22;
172.17.1.2;
}
}
[edit interfaces]
lo0 {
unit 0 {
family inet {
address 10.0.0.1/32;
address 127.0.0.1/32;
}
}
}
この例では、IPアドレス10.0.0.1はルーターから送信されたすべてのトラップの送信元アドレスです。
送信元アドレスとしての論理システム名
SNMPトラップの送信元アドレスとして論理システム名を指定するには、[edit snmp trap-options]階層レベルにlogical-system logical-system-nameステートメントを含めます。
例えば、以下の設定は、SNMPトラップの送信元アドレスとして論理システム名ls1を設定します。
[edit snmp]
trap-options{
logical-system ls1;
}
送信元アドレスとしてのルーティングインスタンス名
SNMPトラップの送信元アドレスとしてルーティングインスタンス名を指定するには、[edit snmp trap-options]階層レベルにrouting-instance routing-instance-nameステートメントを含めます。
例えば、以下の設定は、SNMPトラップの送信元アドレスri1としてルーティングインスタンスナを設定します。
[edit snmp]
trap-options {
routing-instance ri1;
}
SNMPトラップ用のエージェントアドレスを設定する
エージェントアドレスは、SNMPv1トラップパケットでのみ使用できます(RFC1157参照)。デフォルトでは、ルーターのデフォルトローカルアドレスはSNMPv1トラップのエージェントアドレスフィールドで指定されません。エージェントアドレスを設定するには、[edit snmp trap-options]階層レベルにagent-addressステートメントを含めます。現在、エージェントアドレスは、発信インターフェイスのアドレスのみです。
[edit snmp] trap-options { agent-address outgoing-interface; }
発信インターフェイスをエージェントアドレスとして設定するには
[edit snmp]
trap-options {
agent-address outgoing-interface;
}
trap-group “ urgent-dispatcher” {
version v1;
categories link startup;
targets {
192.168.10.22;
172.17.1.2;
}
}
この例では、送信された各SNMPv1トラップパケットのエージェントアドレス値が発信インターフェイスのIPアドレスに設定されています。
標準SNMPトラップにsnmpTrapEnterpriseオブジェクト識別子を追加する
snmpTrapEnterpriseオブジェクトは、トラップを定義したエンタープライズの特定に役立ちます。通常、snmpTrapEnterpriseオブジェクトは、エンタープライズ固有のSNMPバージョン2トラップの最後のvarbindとして表示されます。ただし、Junos OSでは、標準のSNMPトラップにsnmpTrapEnterpriseオブジェクト識別子を追加することもできます。
標準トラップにsnmpTrapEnterpriseを追加するには、[edit snmp trap-options]階層レベルにenterprise-oidステートメントを含めます。enterprise-oidステートメントが設定に含まれていない場合、snmpTrapEnterpriseはエンタープライズ固有のトラップにのみ追加されます。
[edit snmp] trap-options { enterprise-oid; }
SNMPトラップグループを設定する
1つ以上のSNMPトラップタイプのグループを作成し、名前を付け、SNMPトラップのグループを受信するシステムを定義することができます。SNMP トラップを送信するトラップ グループを設定する必要があります。SNMPトラップグループを作成するには、trap-groupを参照してください。
定義するトラップグループごとに、targetのステートメントを含めて、トラップグループにSNMPトラップの受信者として少なくとも1つのシステムを指定する必要があります。ホスト名ではなく、各受信者のIPv4またはIPv6アドレスを指定します。
トラップグループがで受信できるトラップタイプを、categoriesステートメントで指定します。トラップが属するカテゴリについては、Junos OSがサポートする標準SNMPトラップとJunos OSトピックでサポートされるエンタープライズ固有のSNMPトラップを参照してください。
routing-instanceステートメントで、トラップグループが使用するルーティングインスタンスを指定します。トラップグループで設定されたターゲットはすべて、このルーティングインスタンスを使用します。
トラップグループは以下のカテゴリーを受信できます。
-
authentication—認証エラー -
chassis—シャーシまたは環境通知 -
chassis-cluster—クラスタリング通知 -
configuration—設定通知 -
link—リンク関連通知(アップダウン遷移、DS-3およびDS-1ラインステータスの変更、IPv6インターフェイスの状態の変更、および受動的な監視PICオーバーロード)注:受動的な監視PICオーバーロードインターフェイストラップを送信するには、
linkのトラップカテゴリを選択します。 -
otn-alarms—OTNアラームトラップサブカテゴリー -
remote-operations—リモート操作通知 -
rmon-alarmーRMONイベントのアラーム -
routing—ルーティングプロトコル通知 -
servicesー回線ダウンまたはアップ、接続ダウンまたはアップ、CPU超過、アラーム、ステータス変更などのサービス通知 -
sonet-alarms—SONET/SDHアラーム注:SONET/SDHサブカテゴリを除外すると、SONET/SDHトラップアラームタイプがすべてトラップ通知に含まれます。
-
loss-of-light—光損失のアラーム通知 -
pll-lock—PLLロックのアラーム通知 -
loss-of-frame—フレーム損失のアラーム通知 -
loss-of-signal—信号損失のアラーム通知 -
severely-errored-frame—重大エラーフレームのアラーム通知 -
line-ais—回線アラーム表示信号(AIS)のアラーム通知 -
path-ais—パスAISのアラーム通知 -
loss-of-pointer—ポインタ損失のアラーム通知 -
ber-defect—SONET/SDHビット誤り率のアラーム障害通知 -
ber-fault—SONET/SDH誤り率のアラーム障害通知 -
line-remote-defect-indication—回線リモート障害を示すアラーム通知 -
path-remote-defect-indication—パスリモート障害検出のアラーム通知 -
remote-error-indication—リモートエラー検出のアラーム通知 -
unequipped—未搭載のアラーム通知 -
path-mismatch—パス不一致のアラーム通知 -
loss-of-cell—セル同期損失のアラーム通知 -
vt-ais—仮想トリビュタリ(VT)AISのアラーム通知 -
vt-loss-of-pointer—ポインターVT損失のアラーム通知 -
vt-remote-defect-indication—VTリモート障害検出のアラーム通知 -
vt-unequipped—VT未搭載のアラーム通知 -
vt-label-mismatch—VTラベル不一致のエラー通知 -
vt-loss-of-cell—セル同期VT損失の通知
-
-
startup—システムのウォームスタートおよびコールドスタート -
timing-events—タイミングイベントと障害通知 -
vrrp-events新しいプライマリや認証の障害などのVRRP(仮想ルーター冗長プロトコル)イベント
SONET/SDHサブカテゴリーを含む場合、これらのSONET/SDHトラップアラームタイプのみがトラップ通知に含まれます。
versionのステートメントにより、トラップグループのターゲットに送信されたトラップのSNMPバージョンを指定できます。v1のみを指定した場合、SNMPv1トラップが送信されます。v2のみを指定した場合、SNMPv2トラップが送信されます。allを指定した場合、すべてのトラップ条件に対してSNMPv1とSNMPv2トラップが両方とも送信されます。versionのステートメントの詳細については、バージョン(SNMP)を参照してください。
内部処理用の__juniper_internal_trap_group__という名のデフォルトトラップグループが作成されます。__juniper_internal_trap_group__という名のトラップグループは設定しないでください。
Junos OSを実行しているデバイスにSNMPトラップオプションとグループを設定する
一部のキャリアは、中央 NMS にトラップを転送する複数のトラップレシーバーがあります。これにより、ルーターから中央のNMSにさまざまなトラップ受信機を介しての1つ以上のSNMPトラップのパスの設定が可能になります。Junos OSを実行しているデバイスを設定し、トラップグループに設定されているすべてのトラップレシーバーに各SNMPトラップの同じコピーを送信することができます。
各SNMPトラップパケットのIPヘッダーにおける送信元アドレスは、デフォルトで発信インターフェイスのアドレスに設定されています。トラップレシーバーがパケットを中央 NMSに転送すると、送信元アドレスが保存されます。各SNMPトラップパケットの送信元アドレスのみを参照する中央 NMSは、各SNMPトラップが異なる送信元から来たと仮定します。
現実には、SNMP トラップは同じルーター発ですが、それぞれが異なる発信インターフェイスを介してルーターを後にします。
以下のセクションのステートメントは、NMSが重複したトラップを認識し、発信インターフェイスに基づいてSNMPv1トラップを区別できるようにするものです。
SNMP トラップオプションとトラップグループを設定するには、 階[edit snmp]層レベルで および でステートtrap-groupメントtrap-optionsを含めます。
[edit snmp] trap-options { agent-address outgoing-interface; source-address address; } trap-group group-name { categories { category; } destination-port port-number; targets { address; } version (all | v1 | v2); }
例:SNMPトラップグループを設定する
リンクとスタートアップ トラップの という名前のトラップ通知リストurgent-dispatcherを設定します。このリストはローカル ルーターによって生成されたトラップが送信されるネットワーク管理ホスト( 1.2.3.4と fe80::1:2:3:4)を識別するために使用されます。エージェントがリストされたターゲットにトラップを送信するとき、トラップ グループに指定された名前は SNMP コミュニティ文字列として使用されます。
[edit]
snmp {
trap-group "urgent-dispatcher" {
version v2;
categories link startup;
targets {
1.2.3.4;
fe80::1:2:3:4;
}
}
}
トラップの管理
以下に、SNMP 通知の管理に関する詳細を示します。
-
SysLogイベントに基づいてトラップを生成します。
イベントポリシーには、システムログメッセージに基づいてイベントのトラップを発生させるアクションを含めることができます。この機能により、重要なシステムログメッセージが発生した場合、SNMPトラップベースのアプリケーションの通知が可能になります。対応するトラップがないシステムログメッセージをトラップに変換できます。システムログメッセージではなく、ネットワーク管理システムトラップを使用してネットワークを監視する場合、この機能を使用して、すべての主要なイベントの通知を確認できます。
イベントの受信時にトラップを発生させるポリシーを設定するには、階層レベルに以下のステートメント
[edit event-options policy policy-name]を含めます。以下の例は、イベントのトラップを発生させるための設定の構成例を示しています
ui_mgd_terminate。[edit event-options policy p1] events ui_mgd_terminate; then { raise-trap; } -
トラップのカテゴリーに基づいてトラップをフィルタリングします。
SNMPトラップは、多くのカテゴリーに分類されます。Junos OSには、
[edit snmp trap-group trap-group]階層レベルでの設定オプションcategoriesが用意されており、特定のホストで受信したいトラップのカテゴリーを指定できます。このオプションは、Junos OSの特定のモジュールのみを監視したい場合に使用できます。以下の例は、
link、vrrp-events、servicesおよびotn-alarmsトラップのみを受信する場合の構成例を示しています。[edit snmp] trap-group jnpr { categories { link; vrrp-events; services; otn-alarms; } targets { 192.168.69.179; } } -
オブジェクト識別子に基づいてトラップをフィルタリングします。
Junos OSには、そのオブジェクト識別子に基づいて特定のトラップを除外できる、より高度なフィルターオプションも用意されています。
notify-filterオプションを使用して、特定のトラップまたはトラップグループのフィルターを除外できます。以下の例は、ジュニパーネットワークスエンタープライズ固有の構成管理トラップを除く構成例を示しています(以下の例に示すように、SNMPv3設定ではSNMPv1およびSNMPv2トラップのフィルタリングもサポートすることに注意してください)。
[edit snmp] v3 { vacm { security-to-group { security-model v2c { security-name sn_v2c_trap { group gr_v2c_trap; } } } access { group gr_v2c_trap { default-context-prefix { security-model v2c { security-level none { read-view all; notify-view all; } } } } } } target-address TA_v2c_trap { address 10.209.196.166; port 9001; tag-list tg1; target-parameters TP_v2c_trap; } target-parameters TP_v2c_trap { parameters { message-processing-model v2c; security-model v2c; security-level none; security-name sn_v2c_trap; } notify-filter nf1; } notify v2c_notify { type trap; tag tg1; } notify-filter nf1 { oid .1.3.6.1.4.1.2636.4.5 exclude; oid .1 include; } snmp-community index1 { community-name "$9$tDLl01h7Nbw2axN"; ## SECRET-DATA security-name sn_v2c_trap; tag tg1; } view all { oid .1 include; } }