AlertMap ファイル

内容
casp1032jp
内容
SNMP トラップの概要
SNMP トラップは、トラップ PDU (Protocol Data Unit)として送出されます。PDU は、以下の情報で構成されます。
  • エンタープライズ OID
    トラップの送信元のデバイスの製造元を識別します。たとえば、1.3.6.1.4.1.X は、X がエンタープライズ(Sun など)を表すエンタープライズ OID です。X の前の数値は、情報管理を担当する世界規模の団体の階層を表します。IANA (Internet Assigned Numbers Authority)は、企業および MIB ツリー上の企業の管理 MIB を識別するエンタープライズ レベルの数値を割り当てます。詳細については、IANA の Web サイト(http://www.iana.org)を参照してください。
  • ネットワーク アドレス
    トラップ生成元の管理対象エレメントのネットワーク アドレスを指定します。
  • 一般トラップ ID
    0 から 6 までの値になります。SNMP プロトコルには、6 つの業界標準トラップがあります。これらのトラップには、一般トラップ ID として 0-5 の番号が割り当てられています。番号の 6 はトラップがエンタープライズ固有トラップであることを示します。エンタープライズ固有トラップは、開発者向けの管理対象ノード用に作成された独自仕様のトラップです。独自仕様の MIB は、これらのトラップを定義します。
  • 固有トラップ
    トラップ MIB のトラップ定義に基づく固有トラップ番号を指定します。
  • タイム スタンプ
    トラップが作成された日時を指定します。
  • 変数バインド
    トラップで定義されている変数と値を指定します。これらの変数は、通常はほかの MIB オブジェクトを参照するポインタです。
たとえば、Cisco のルータまたはスイッチで冗長電源の障害が発生した場合、トラップ PDU で以下の情報が送信されます。
  • デバイスのネットワーク アドレス
  • トラップのタイムスタンプ
  • エンタープライズ OID: 1.3.6.1.4.1.9
  • 一般トラップ ID: 6
  • 固有トラップ ID: 5
  • 変数バインド: 1.3.6.1.4.1.9.9.13.1.5.1.2,
    1.3.6.1.4.1.9.9.13.1.5.1.3
ネットワーク アドレスとタイムスタンプ情報は、トラップ送信元のデバイスおよび時刻によって異なります。
エンタープライズ OID は、末尾の 2 桁でベンダー企業を識別します。この例では、9 が Cisco デバイスによって生成されたトラップであることを示します。
一般トラップ ID の 6 は、このトラップが独自仕様の MIB で定義されたエンタープライズ固有トラップであることを示します。固有トラップ ID の 5 は、参照されている Cisco MIB でトラップに割り当てられている番号です。このトラップは、Cisco 環境監視 MIB (CISCO-ENVMON-MIB)の以下の部分で定義されています。
ciscoEnvMonRedundantSupplyNotification TRAP-TYPE -- Reverse mappable trap ENTERPRISE ciscoEnvMonMIBNotificationPrefix VARIABLES { ciscoEnvMonSupplyStatusDescr, ciscoEnvMonSupplyState } -- Status -- mandatory DESCRIPTION "A ciscoEnvMonRedundantSupplyNotification is sent if the redundant power supply (where extant) fails. Since such a notification is usually generated before the shutdown state is reached, it can convey more data and has a better chance of being sent than does the ciscoEnvMonShutdownNotification." ::= 5
このトラップ定義では、変数バインディングとして送信される 2 つの変数(ciscoEnvMonSupplyStatusDescr と ciscoEnvMonSupplyState)が使用されています。このような変数は、実際には MIB で定義されているほかの管理対象オブジェクトへの参照です。変数バインディングで送信される OID は、参照される管理対象オブジェクトを表します。
ciscoEnvMonSupplyStatusDescr と ciscoEnvMonSupplyState は、以下に示す MIB からの抜粋部分で定義されています。
ciscoEnvMonSupplyStatusDescr OBJECT-TYPE SYNTAX DisplayString(SIZE(0..32)) -- Rsyntax OCTET STRING(SIZE(0..32)) ACCESS read-only STATUS mandatory DESCRIPTION "Textual description of the power supply being instrumented. This description is a short textual label, suitable as a human- sensible identification for the rest of the information in the entry." ::= { ciscoEnvMonSupplyStatusEntry 2 } ciscoEnvMonSupplyState OBJECT-TYPE SYNTAX CiscoEnvMonState -- Rsyntax INTEGER { -- normal(1), -- warning(2), -- critical(3), -- shutdown(4), -- notPresent(5), -- notFunctioning(6) -- } ACCESS read-only STATUS mandatory DESCRIPTION "The current state of the power supply being instrumented." ::= { ciscoEnvMonSupplyStatusEntry 3 }
ciscoEnvMonSupplyStatusDescr 変数には電源を説明する文字列値が格納され、ciscoEnvMonSupplyState 変数にはそのステータスに応じて 1、2、3、4、5、または 6 のいずれかが格納されます。各変数の現在値は、トラップ PDU の変数バインディングを使用して検出します。
CA Spectrum
イベントへのトラップのマッピングについて
CA Spectrum
 がトラップを受信した場合、
CA Spectrum
 がトラップ情報を使用するために、特定の 
CA Spectrum
に関連付けられている必要があります。この関連付けは、AlertMap ファイルで定義されます。
CA Spectrum
は、Ping 可能 モデル タイプでモデリングされたデバイスからの SNMP トラップを受信できます。この関連付けを有効にするには、
CA Spectrum
.vnmrc ファイルで enable_traps_for_pingables 変数に TRUE を設定する必要があります。この方法については、「」セクションを参照してください。Ping 可能モデル タイプの AlertMap ファイルは、
<$SPECROOT>
\SS\CsVendor\Cabletron\Pingable ディレクトリに存在します。
AlertMap ファイルによるアラートの処理について
トラップ送信元の管理対象エレメントの IP アドレスは、トラップ情報の一部として送信されます。
CA Spectrum
はこの IP アドレスを使用して、トラップ送信元の管理対象エレメントを表現するモデルを特定します。この情報から、
CA Spectrum
は管理対象エレメントに関連付けられているモデル タイプを特定することができます。
トラップを適切に処理するために、
CA Spectrum
AlertMap ファイルを参照します。AlertMap ファイルは、その場所によって、グローバル(すなわち
CA Spectrum
の全モデル タイプ)に適用したり、特定モデル タイプのモデルにのみ適用したりすることができます。
したがって、特定のモデル タイプのトラップ マッピングのみ変更する必要がある場合は、そのモデル タイプ用の AlertMap ファイルを変更する必要があります。モデル タイプ レベルの AlertMap ファイルが存在しない場合は、新たに作成して変更する必要があります。
アラートのマップ方法をグローバルに(すなわちすべてのモデル タイプで)変更する必要がある場合、そのトラップのマッピングが指定されているすべての AlertMap ファイルを見つけ出して、各ファイルを変更する必要があります。
注:
 グローバルな AlertMap ファイルは、すべてのベンダー モデル タイプに適用されます。ファイルを作成したベンダーのモデル タイプにのみ適用されるわけではありません。
AlertMap ファイルの場所
デフォルト トラップ マッピングは
<$SPECROOT>
/SS/CsVendor ディレクトリに存在し、MIB ツールでカスタマイズされたトラップ マッピングは
<$SPECROOT>
/custom/Events/AlertMap ディレクトリに存在します。MIB ツールでカスタマイズされたトラップ マッピングは、
CA Spectrum
をアップグレードしても維持され、既存のどのデフォルト トラップ マッピングよりも優先されます。カスタム トラップ マッピングとデフォルト トラップ マッピングの操作の詳細については、「[マップ]タブ」を参照してください。
グローバルな AlertMap ファイルは
<$SPECROOT>
/SS/CsVendor/
<developername>
/AlertMap です。
<developername>
は、通常は、モデル タイプに関連付けられているベンダー、製造元、または開発者の名前です。
ディレクトリの名前に開発者以外の名前が使用されている場合があります。たとえば、IETF ディレクトリには、標準の RFC トラップがマップされている AlertMap ファイルが存在します。
モデル タイプ固有の AlertMap ファイルは、
<$SPECROOT>/SS/CSVendor/<developername>
/
<model_type_name>
AlertMap にあり、
<developername>
は、モデル タイプに関連付けられているベンダー、製造元、または開発者の名前です(たとえば Compaq)。ユーザが独自の管理モジュールを開発している場合は、ユーザの開発者名が使用されます。
<model_type_name>
は、モデル タイプの名前です。
トラップのマッピングがモデル タイプの AlertMap ファイルとグローバルな AlertMap ファイルの両方に存在する場合、そのモデル タイプについては、モデル タイプの AlertMap ファイルが優先されます。
MIB ツールでトラップをマップすると、DSS 環境のすべての
SpectroSERVER
で、以下のファイルにエントリが生成されます。
<$SPECROOT>
/custom/Events/AlertMap
上記ファイル内のトラップのマッピング情報は、
SpectroSERVER
のほかのファイルまたはディレクトリにすでに設定されている同じトラップのマッピング情報よりも優先されます。
AlertMap ファイルの名前はすべて、常に「AlertMap」です。Windows 環境では、ファイル拡張子は使用しません。
注:
 MIB およびトラップの管理に関する詳細については、「」セクションを参照してください。
注:
 jnxVpnIfUp および jnxVpnIfDown の 2 つのトラップのトラップ マッピングは、<$SPECROOT>/SS/CSVendor/junpr_rtr/ ディレクトリにある AlertMap ファイルから削除されました。VPN Manager Explorer ビューには、VPN サイト モデル下のデバイス モデルが表示されません。そのため、JnxVPN トラップは、デバイス モデルではなく、VPN Manager モデルにアラームをアサートします。 
AlertMap ファイルの構文
CA Spectrum
は、適切な AlertMap ファイルが見つかると、トラップに一致するエントリを探します。AlertMap ファイルの各エントリは、アラート コード、イベント コード、および OID マップの 3 つのコンポーネントで構成されます。
spec--alertmapfile_OTH
アラート コード
アラート コードは、トラップに含まれるエンタープライズ OID 文字列、一般トラップ ID、および固有トラップ ID の 3 つの情報で構成されます。
1.3.6.1.4.1.9: エンタープライズ OID (左記は Cisco デバイスを示す)
6: 一般トラップ ID (左記の 6 はエンタープライズ固有トラップを示す)
5: 固有トラップ ID (左記は 5)
イベント コード
イベント コードは、16 進形式で表現された 4 バイト整数です。各イベント コードは 2 つの情報で構成されます。前半の 2 バイトにはファイルを作成した開発者の開発者 ID が含まれます。後半の 2 バイトはその開発者が使用しているすべてのイベント コードを通じて固有な、イベントを識別するための番号です。
イベント コードが 0 であるようなアラートでは、イベントは生成されません。
イベント コードが 0 以外の場合、
CA Spectrum
は OID マップを使用して、アラート変数をイベント変数にマップします。
OID マップ
マップするトラップに、変数バインドと呼ばれる可変情報が 1 つ以上含まれている場合があります。変数バインドは、それぞれがトラップに関する情報を提供します。この情報を
CA Spectrum
で使用できるように、変数バインドをイベント変数にマップすることができます。
変数バインドと
CA Spectrum
でのマップ方法は、アラート マップ エントリの OID マップ セクションで指定されます。1 つのアラート マップ エントリに複数の OID マップが関連付けられる場合があり、SNMP トラップで複数の変数バインドが送信されたことを示します。複数の OID マップは、以下の例に示すように、バックスラッシュ文字(\)と改行で区切る必要があります。
1.3.6.1.4.1.9.6.5 0x180000 1.3.6.1.4.1.9.9.13.1.5.1.3(1,2)\ 1.3.6.1.4.1.9.9.13.1.5.1.2(4,0)
以下の例に示すように、OID マップは OID、値変数 ID、およびインスタンス変数 ID の 3 つに分割できます。
spec--alertmapbreakdown_OTH
OID は、トラップで送信された特定の変数を識別します。前述の例の OID は、Cisco 環境監視 MIB (CISCO-ENVMON_MIB)の ciscoEnvMonSupplyState 変数を参照します。
値変数 ID には、変数バインドで送信された変数の値が格納されます。任意の整数値を取ることができますが、インスタンス変数 ID に使用される整数とは異なる値である必要があります。値が 0 の場合、変数バインドの値を格納する必要がないことを示します。
インスタンス変数 ID には、OID のインスタンス部分が格納されます。変数バインドによってトラップ MIB 内のテーブル変数の特定のオブジェクトが識別されている場合、通常はインスタンス ID が含まれています。任意の整数値を取ることができますが、値変数 ID に使用される整数とは異なる値である必要があります。値が 0 の場合、インスタンス変数の値を格納する必要がないことを示します。
重要:
OID と値変数 ID の間および値変数 ID とインスタンス変数 ID の間には、スペースは使用できません。
コメント
AlertMap ファイルにコメントを追加する場合、# と // の 2 つをコメント識別子として使用できます。どちらかのコメント識別子の後から次の行の先頭までの間に入力されたテキストは、AlertMap ファイルを処理する際に無視されます。
以下に例を示します。
#Comment 0.0 0x10306 #Comment 1.0 0x10307 //Comment 2.0 0x220001 1.3.6.1.2.1.2.2.1.1(1,2) 3.0 0x220002 1.3.6.1.2.1.2.2.1.1(1,2)\ 1.3.6.1.2.1.2.2.1.3(4,0) //Comment //Comment 4.0 0x1030a 5.0 0x1030b 1.3.6.1.4.1.45.6.271 0x1060f 1.3.6.1.4.1.45.1.2.1.9.2.1.2(3,4) #Comment
OID マップ」で示したように、バックスラッシュ(\)文字は行続行文字として使用されます。行続行文字を使用するときにコメントを使用することもできます。
以下に例を示します。
3.0 0x220002 1.3.6.1.2.1.2.2.1.1(1,2)\ #Comment 1.3.6.1.2.1.2.2.1.2(3,0)\ //Comment 1.3.6.1.2.1.2.2.1.3(4,0)
注:
インライン コメントと複数行コメントはサポートされていません。
CA Spectrum
によるアラート変数とイベント変数のマップ
CA Spectrum
がアラート変数をイベント変数にマップする手順を、以下に示します。
  1. CA Spectrum
    は AlertMap ファイルをスキャンして、OID マップの OID がトラップ変数の OID 全体またはその先頭部分と一致するエントリを探します。
  2. 複数の OID マップの OID がトラップ変数の OID の先頭部分と一致する場合、
    CA Spectrum
    は一致する先頭部分が最も長い(最も一致する) OID を選択します。
  3. OID マップが見つかった場合、
    CA Spectrum
    は値変数 ID を調べて、トラップ変数の値をイベント変数に変換するかどうかを決定します。OID マップが見つからなかった場合、
    CA Spectrum
    はアラート変数を無視します。
  4. 値変数 ID が 0 の場合、
    CA Spectrum
    はトラップ変数の値を無視します。0 以外の場合、トラップ変数から取得したイベント変数のタイプ、長さ、および値に基づいて、イベント変数が生成されます。これによって、値変数 ID を使用して、イベント フォーマット ファイルで変数バインドの値を表現できるようになります。
  5. CA Spectrum
    は OID マップを調べて、トラップ変数のインスタンス ID をイベント変数に変換するかどうかを決定します。OID マップの OID がトラップ変数の OID 全体と一致する場合、インスタンス ID は変換しません。パラメータのインスタンス変数 ID が 0 の場合、インスタンス OID は無視されます。インスタンス ID が存在し、インスタンス変数 ID が 0 以外の場合、イベント変数が生成されます。これによって、インスタンス変数 ID を使用して、イベント フォーマット ファイルで OID インスタンスの値を表現できるようになります。
エラー メッセージ
CA Spectrum
が IP アドレスのモデルを識別できなかった場合、不明な SNMP デバイスからトラップを受信したことを示すイベント(イベント 0x00010802)が、VNM モデルの名前で生成されます。このイベントには、エージェント IP アドレス、エンタープライズ OID、トラップ コード、コミュニティ名、変数バインド データなど、トラップに関する詳細が含まれます。
CA Spectrum
が、トラップ送信元のモデルは正しく特定できたが、AlertMap ファイルでトラップ コードに該当するエントリを見つけられなかった場合、不明なアラートを受信したことを示すイベント(0x00010801)が、トラップ送信元モデルの名前で生成されます。このイベントには、エージェント IP アドレス、デバイス タイプ、デバイス時刻、トラップ タイプ、変数バインド データなど、トラップに関する詳細が含まれます。
SNMPv2 サポート
CA Spectrum
は、RFC 2576 「Coexistence between Version 1, Version 2, and Version 3 of the Internet-Standard Network Management Framework」の定義に従って、SNMPv2 フォーマットの InformRequest とトラップの受信と処理をサポートします。
InformRequest のサポート
CA Spectrum
は、SNMPv2 InformRequest を受信すると、RFC 2576 の定義に従ってデコードし、SNMPv1 フォーマットに変換します。InformRequest に対する応答が生成され、通知の送信元に返信されます。
CA Spectrum
イベントへの SNMPv2 トラップのマップ方法
SNMPv2 トラップを
CA Spectrum
イベントにマップする場合、AlertMap ファイルで変換されているトラップを参照する必要があります。
SNMPv2 トラップを変換する手順の概要を以下に示します。この処理の詳細については、RFC 2576 を参照してください。RFC 2576 のセクション 3.2 に、SNMPv2 トラップを SNMPv1 トラップに変換して SNMPv1 環境で使用できるようにする方法が説明されています。
  1. トラップの SNMPv1 エンタープライズ OID を、以下の手順に従って決定します。
    1. SNMPv2 snmpTrapOID パラメータが標準トラップ(RFC 1907 で定義)の 1 つである場合、snmpTrapEnterprise.0 変数バインドが存在する場合はその値を SNMPv1 エンタープライズ パラメータの値に設定します。存在しない場合は、snmpTraps を SNMPv1 エンタープライズ パラメータの値に設定します。
    2. SNMPv2 snmpTrapOID パラメータが標準トラップではない場合、以下の条件に従って処理します。
      snmpTrapOID の最後のサブ ID の 1 つ手前のサブ ID が 0 の場合、最後の 2 つのサブ ID を削除した値をエンタープライズ番号とします。
      snmpTrapOID = 1.3.6.1.4.1.1916.4.1.0.1
      エンタープライズ番号 = 1.3.6.1.4.1.1916.4.1
      snmpTrapOID の最後のサブ ID の 1 つ手前のサブ ID が 0 以外の場合、最後のサブ ID を削除した値をエンタープライズ番号とします。
      snmpTrapOID = 1.3.6.1.4.1.5486.1.3.8
      エンタープライズ番号 = 1.3.6.1.4.1.5486.1.3
  2. トラップの SNMPv1 一般トラップ ID を、以下の手順に従って決定します。
    1. SNMPv2 snmpTrapOID パラメータが RFC 1907 で定義されている標準トラップである場合、そのトラップの標準の一般トラップ パラメータ(0-5)を使用します。
      標準トラップ = 1.3.6.1.6.3.1.1.5.1 (コールド スタート)
      一般トラップ ID = 0
    2. SNMPv2 snmpTrapOID パラメータが標準トラップではない場合、一般トラップ パラメータに 6 を設定します。
      snmpTrapOID = 1.3.6.1.4.1.5486.1.3.8
      一般トラップ ID = 6
  3. SNMPv1 固有トラップ パラメータを、以下の手順に従って決定します。
    1. SNMPv2 snmpTrapOID パラメータが RFC 1907 で定義されている標準トラップである場合、固有トラップ パラメータに 0 を設定します。
      標準トラップ = 1.3.6.1.6.3.1.1.5.1 (コールド スタート)
      固有トラップ パラメータ = 0
    2. SNMPv2 snmpTrapOID パラメータが標準トラップではない場合、固有トラップ パラメータに SNMPv2 snmpTrapOID パラメータの最後のサブ ID を設定します。
      snmpTrapOID = 1.3.6.1.4.1.5486.1.3.8
      固有トラップ パラメータ = 8
  4. SNMPv2 変数バインドは、直接 SNMPv1 バインドに変換されます。RFC 2576 で記述されているように、タイプ Counter64 の変数バインドは変換不可です。
例:
SNMPv2 snmpTrapOID 1.3.6.1.4.1.5486.1.3.8 を
SpectroSERVER
に送信した場合
AlertMap ファイルのアラート コードとして、OID 1.3.6.1.4.1.5486.1.3.6.8 を使用する必要があります。
エンタープライズ OID:
1.3.6.1.4.1.5486.1.3
一般トラップ番号:
6
固有トラップ番号:
8