Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

BGP監視プロトコル

BGPルーティング情報の監視

目的

監視機能を使用して、ルーティングデバイス上のBGPルーティング情報を監視します。

アクション

CLIでBGPルーティング情報を表示するには、以下のコマンドを入力します。

  • show bgp summary

  • show bgp neighbor

BGP監視プロトコルについて

BGP監視プロトコル(BMP)は、監視ステーションがBGP対応デバイスからルートを受信できるようにするプロトコルです。監視ステーションは、アクティブなルートだけでなく、すべてのルートを受信します。BMPは、ルート監視メッセージ(基本的にはカプセル化されたBGP更新メッセージ)と他のいくつかのメッセージタイプを統計と状態の変化に使用します。すべてのメッセージは、ルーターから監視ステーションに送られます。

注:

インターフェイスが無効になると、TCPセッションを監視するBMPが240秒(4分間)シャットダウンされます。これは予期される動作です。

データは、 Adjacency-RIB-In ルーティングテーブルから収集されます。 Adjacency-RIB-In テーブルはポリシー前のテーブルであり、これらのテーブル内のルートがルーティングポリシーによってフィルタリングまたは変更されていないことを意味します。

注:

Local-RIBテーブルはポリシー後のテーブルです。

Junos OSリリース22.4R1以降、仮想ルータータイプのルーティング情報ベース(RIB)と仮想ルーティングおよびフォワーディング(VRF)を監視するポリシーを設定できます。BGPモニタリングプロトコル(BMP)では、監視用とレポート用の2つの別々のRIBセットを指定できます。この機能により、BMPはルートとルーティングインスタンスに基づいてトラフィックをフィルタリングできます。

BGP監視プロトコルバージョン3の設定

BGPモニタリングプロトコル(BMP)により、Junos OSはルーターから別のデバイス上の監視アプリケーションにBGPルート情報を送信できます。監視アプリケーションは、BMP 監視ステーションまたは BMP ステーションと呼ばれます。ネットワークにBMPを展開するには、各ルーターでBMPを設定する必要があり、少なくとも1つのBMPステーションも設定する必要があります。この手順では、ルーターでBMPを設定する方法について説明します。

ここで説明するステートメントを [edit routing-options bmp] 階層レベルで設定することで、すべてのBMPステーションにこれらの設定を指定できます。また、これらのステートメントを [edit routing-options bmp station station-name] 階層レベルで構成することで、特定のBMPステーションの設定を構成することもできます。

以下の手順では、ルーターでBMPバージョン3を設定する方法について説明します。

  1. memory limitステートメントを設定して、BMP監視ステーションのメモリ制限を指定します。値はバイト単位である必要があります。

  2. station-addressステートメントを設定して、BMP監視ステーションの名前またはアドレスを指定します。どちらか一方を指定できますが、両方を指定することはできません。アドレスは有効なIPv4またはIPv6アドレスである必要があります。
  3. station-portステートメントを設定して、BMP監視ステーションのポート番号を指定します。
  4. ステートメントを使用してメッセージ送信間の秒数を指定することにより、統計情報がBMP監視ステーションに送信される頻度を設定しますstatistics-timeout。値を 0 に設定すると、統計メッセージは送信されません。

異なるルーティングインスタンスで実行するようにBGP監視プロトコルを設定する

Junos OSリリース18.3R1以降、BGP監視プロトコル(BMP)で使用するルーティングインスタンスを指定できるようになりました。Junos OSリリース18.3R1以前は、デフォルトのルーティングインスタンスを使用する必要がありました。デフォルトでは、Junos OSでは、管理イーサネットインターフェイス(通常はfxp0またはem0という名前)が、デバイスのアウトオブバンド管理ネットワークを提供します。ルーティングインスタンスレベルまたはルーティングテーブルレベルで、帯域外の管理トラフィックと帯域内プロトコル制御トラフィック、あるいはユーザートラフィックを明確に分離することはできません。代わりに、すべてのトラフィックがデフォルトのルーティングインスタンスを介して処理されるため、セキュリティ、パフォーマンス、トラブルシューティング方法に関する懸念が生じます。

Junos OSリリース17.3R1以降、デフォルト以外の仮想ルーティングおよび転送(VRF)インスタンスであるmgmt_junosルーティングインスタンスで管理インターフェイスを設定できるようになりました。 mgmt_junosルーティングインスタンスの設定で説明されているようにこの管理ルーティングインスタンスを設定すると、管理トラフィックがシステム内の他の制御トラフィックやプロトコルトラフィックとルーティングテーブル(default.inet.0テーブル)を共有する必要がなくなります。ただし、このデフォルト以外の管理インスタンスをBMPに使用できるのは、Junos OSリリース18.3R1以降です。また、BMPには設定済みのルーティングインスタンスを使用することもできます。デフォルトのルーティングインスタンスである必要はもうありません。

BMP の非デフォルト ルーティング インスタンスの設定

BMP が使用するルーティングインスタンスを変更するには、BMP ステーションと接続モード(パッシブまたはアクティブ)を設定する必要があります。アクティブモードでは、ルーターはBMPステーションとのTCP接続を開始しようとします。パッシブモードでは、ルーターはBMPステーションがTCPセッションを開始するのを待ちます。また、ポートとステーションアドレスを設定する必要があります。

注:

デフォルト以外のルーティングインスタンスを使用するには、 [edit routing-instances] 階層レベルで設定する必要があります。

BMPにデフォルト以外のルーティングインスタンスを設定するには:

  1. edit routing-instances階層レベルでルーティングインスタンスを設定します。
  2. BMP ルーティングインスタンスのルーティングインスタンスを設定します。
  3. 接続モードを設定します。
    • パッシブモードを設定する場合は、以下の追加ステートメントを設定します。

    • アクティブモードを設定する場合、少なくとも以下の追加ステートメントを設定してください。

BMPのmgmt_junosの設定

BMP が使用するルーティングインスタンスを変更するには、BMP ステーションと接続モード(パッシブまたはアクティブ)を設定する必要があります。アクティブモードでは、ルーターはBMPステーションとのTCP接続を開始しようとします。パッシブモードでは、ルーターはBMPステーションがTCPセッションを開始するのを待ちます。また、ポートとステーションアドレスを設定する必要があります。

注:

管理ルーティングインスタンスを使用するには、 [edit routing-instances] 階層レベルで設定し、 management-instance 設定ステートメントを使用して有効にする必要があります。

BMPのルーティングインスタンスとしてmgmt_junosを設定するには:

  1. デフォルト以外の管理ルーティングインスタンスを設定します。
  2. edit routing-instances階層レベルでルーティングインスタンスを設定します。
  3. BMP ルーティングインスタンスのルーティングインスタンスを設定します。
  4. 接続モードを設定します。
    • パッシブモードを設定する場合は、以下の追加ステートメントを設定します。

    • アクティブモードを設定する場合は、以下の追加ステートメントを設定します。

例:BGP監視プロトコルの設定

この例では、BGPモニタリングプロトコル(BMP)を有効にする方法を示しています。BMPのJunos OS実装は、RFC 8671に基づいています。

要件

  • ルーター インターフェイスを設定します。

    注:

    インターフェイスが無効になると、TCPセッションを監視するBMPが240秒(4分間)シャットダウンされます。これは予期される動作です。

  • 内部ゲートウェイプロトコル(IGP)を設定します。

  • BGPおよびルーティングポリシーを設定します。

  • 特定のTCPポートでリッスンするように監視ステーションを設定します。

概要

BMP データが送信される監視ステーションを設定するには、 station-address ステートメントと station-port ステートメントの両方を設定する必要があります。ステーションアドレスには、IPアドレスまたは監視ステーションの名前のいずれかを指定できます。 name には、ステーション名を指定します。ステーションポートには、TCPポートを指定します。BMP は TCP 上で動作します。監視ステーションは特定のTCPポートでリッスンするように設定されており、ルーターはそのポートへのアクティブな接続を確立し、そのTCP接続でメッセージを送信するように設定されています。BMPは、デフォルトのルーティングインスタンスでのみ設定します。ただし、BMPは、デフォルトのルーティングインスタンスのルートと、他のルーティングインスタンスのルートに適用されます。

オプションで、監視ステーションにデータを送信する頻度を指定することができます。デフォルトは1 分です。この間隔を変更するには、 statistics-timeout seconds ステートメントを含めます。 seconds については、15から65,535までの  値を指定できます。

トポロジー

図1は、サンプルトポロジーを示しています。この例では、ルーターPE1にBMPが設定されています。サーバーアドレスは192.168.64.180です。サーバー上のリスニングTCPポートはポート11019です。

図1:BMPトポロジーNetwork topology diagram with a server connected to PE1 and PE2 devices, linking to CE1 and CE2 devices via fxp0 interfaces.

設定

CLIクイックコンフィグレーション

この例を簡単に設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、コマンドを [edit] 階層レベルのCLIにコピー&ペーストしてください。

手順

ステップバイステップの手順

次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『Junos OS CLIユーザーガイド』の「構成モードでのCLIエディターの使用」を参照してください。

BMPを設定するには:

  1. 受信ステーションのアドレスを設定します。

  2. 受信ステーションポートを設定します。

結果

設定モードから、 show routing-options コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

検証

BMP の動作確認

目的

show bgp bmp コマンドを実行して、ルーター上の一連の統計情報と現在のBMPセッション状態を表示します。

アクション

BGPプロトコルトラフィックのトレース操作について

さまざまな BGP プロトコルのトラフィックをトレースして、BGP プロトコルの問題をデバッグできます。BGPプロトコルトラフィックをトレースするには、[edit protocols bgp]階層レベルでtraceoptionsステートメントを含めます。ルーティングインスタンスの場合、[edit routing-instances routing-instance-name protocols bgp]階層レベルにtraceoptionsステートメントを含めます。

flagステートメントを使用して、以下のBGPプロトコル固有のトレースオプションを指定できます。

  • 4byte-as—4 バイト AS イベント。

  • bfd—BFD プロトコル イベント。

  • damping- 動作のダンピング。

  • graceful-restart—グレースフルリスタートイベント。

  • keepalive—BGPキープアライブメッセージ。

  • nsr-synchronization—ノンストップのアクティブなルーティング同期イベント。

  • open—BGPオープンパケット。これらのパケットは、接続を確立するときにピア間で送信されます。

  • packets—すべての BGP プロトコル パケット。

  • refresh—BGPリフレッシュパケット。

  • update—BGP更新パケット。これらのパケットは、BGPシステムへのルーティング更新を提供します。

グローバルトレースオプションは、[edit routing-options]階層レベルでtraceoptionsステートメントによって設定された設定から継承されます。[edit protocols bgp]階層レベルに含まれるtraceoptions flagステートメントを使用して、BGPプロトコルの以下のグローバルトレースオプションを上書きできます。

  • all—すべてのトレーシング操作

  • general—すべての通常の操作とルーティングテーブルの変更(通常の操作とルートトレースの操作の組み合わせ)

  • normal—通常のイベント

  • policy- ポリシー処理

  • route—ルーティング情報

  • state- 状態遷移

  • task- ルーティングプロトコルタスク処理

  • timer- ルーティングプロトコルタイマー処理

オプションで、以下のフラグ修飾子を1つ以上指定できます。

  • detail—詳細なトレース情報。

  • filter—トレース情報をフィルターします。 route および damping トレースフラグにのみ適用されます。

  • receive—受信しているパケット。

  • send—送信中のパケット。

注:

allトレースフラグとdetailフラグ修飾子は、CPUが非常にビジー状態になる可能性があるため、注意して使用してください。

注:

updateフラグのみを有効にした場合、受信したキープアライブメッセージはトレースメッセージを生成しません。

filterフラグ修飾子を指定することで、traceステートメントをフィルタリングし、フィルタを通過するステートメント情報のみを表示できます。filter修飾子は、routeおよびdampingトレースフラグでのみサポートされています。

match-onステートメントは、プレフィックスに基づいてフィルターの一致を指定します。ルートフィルターでマッチングするために使用されます。

注:

ネイバー単位のトレース フィルタリングは、 route および damping フラグのBGPネイバー単位レベルではサポートされていません。トレース オプション フィルタリングのサポートは、ピア グループ レベルで行われます。

例:論理システム上の BGP トレース ファイルの表示

この例では、論理システムに保存されているファイルを一覧表示する方法を示しています。

要件

概要

論理システムの個々のディレクトリ構造は、 /var/logical-systems/logical-system-name ディレクトリに作成されます。このフォルダには、以下のサブディレクトリが含まれています。

  • /config—論理システムに固有のアクティブな設定が含まれます。

  • /log—論理システムに固有のシステムログとトレースファイルが含まれます。

    ログファイルの以前のバージョンのJunos OSとの下位互換性を維持するために、論理システムの構成時に /var/logs/logical-system-name ディレクトリから /var/logical-systems/logical-system-name ディレクトリへのシンボリックリンク(シンボリックリンク)が作成されます。

  • /tmp—論理システムに固有の一時ファイルを含みます。

各論理システムのファイル システムにより、論理システム ユーザーはトレース ログを表示したり、論理システム ファイルを変更したりできます。論理システム管理者は、論理システムに固有のすべてのファイルを表示および変更するためのフル アクセス権を持っています。

論理システムのユーザーと管理者は、設定モードの 保存 および 読み込み コマンドを使用して、論理システムレベルで設定ファイルを保存およびロードできます。さらに、論理システムレベルでshow logmonitorfile 動作モードコマンドを発行することもできます。

この例では、論理システム上で BGP トレース ファイルを設定および表示する方法を示します。これらの手順は、トレース操作をサポートする任意の Junos OS 階層レベルのトレース操作に適用するように適応させることができます。

ヒント:

トレース操作をサポートする階層レベルの一覧を表示するには、設定モードで help apropos traceoptions コマンドを入力します。

設定

CLIクイックコンフィグレーション

この例をすばやく設定するには、以下のコマンドをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、[ edit] 階層レベルのCLIにコマンドをコピー&ペーストします。

トレース操作の設定

ステップバイステップの手順

次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。

トレース操作を設定するには:

  1. 論理システム上でトレース操作を設定します。

  2. デバイスの設定が完了したら、設定をコミットします。

トレース ファイルの表示

ステップバイステップの手順

トレース ファイルを表示するには:

  1. メインルーターの動作モードで、論理システム上のディレクトリを一覧表示します。

  2. メインルーターの動作モードで、論理システム上のログファイルを一覧表示します。

  3. bgp-logファイルの内容を表示します。

  4. ログファイルの出力をフィルタリングします。

  5. トレース操作をリアルタイムで表示します。

    注意:

    BGPネイバーテーブルのクリアは、実稼働環境では混乱を伴います。

  6. オプションの一致条件を付けてmonitor startコマンドを実行します。

  7. Esc-Qを押して 、モニター コマンドを一時停止します。 出力の一時停止を解除するには、もう一度Esc-Qを押します。

  8. Enterキーを押しながらmonitor stopと入力して、monitor コマンドを停止します。

  9. トラブルシューティングが終了したら、システム リソースへの不要な影響を避けるために、トレース ログを無効にすることを検討してください。

    コンフィギュレーションが非アクティブ化されると、 非アクティブな タグでコンフィギュレーションに表示されます。トレース操作を再起動するには、 activate コンフィギュレーションモードステートメントを使用します。

  10. トレース操作を再起動するには、 activate コンフィギュレーションモードステートメントを使用します。

トレースログの無効化と再活性化

ステップバイステップの手順

トレース ファイルを無効化してから再活性化するには、次の手順に従います。

  1. トラブルシューティングが終了したら、システム リソースへの不要な影響を避けるために、トレース ログを無効にすることを検討してください。

    コンフィギュレーションが無効化されると、ステートメントが inactive タグとともにコンフィギュレーションに表示されます。

  2. ログを再活性化するには、 activate 設定モードステートメントを使用します。

結果

設定モードから、 show logical-systems A protocols bgp group internal-peers コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

検証

設定が正常に機能していることを確認します。

トレースログファイルが動作していることの確認

目的

イベントがログファイルに書き込まれていることを確認します。

アクション

例:グローバルルーティングプロトコル操作のトレース

この例では、グローバル ルーティング トレース操作を有効にしたときに作成されるファイルを一覧表示する方法を示しています。

要件

表示権限が必要です。

概要

グローバルルーティングプロトコルトレースを設定するには、[edit routing-options]階層レベルでtraceoptionsステートメントを含めます。

traceoptions flagステートメント内のフラグは、識別子です。setコマンドを使用してフラグを設定する場合、すでに設定されている可能性のあるフラグは変更されません。次の例では、タイマー トレース フラグを設定しても、すでに設定されているタスク フラグには影響しません。特定のフラグを削除するには、deleteコマンドを使用します。

この例では、ルーティングテーブルの変更を追跡するトレース ファイルを設定および表示する方法を示します。これらの手順は、トレース操作をサポートする任意の Junos OS 階層レベルのトレース操作に適用するように適応させることができます。

ヒント:

トレース操作をサポートする階層レベルの一覧を表示するには、設定モードで help apropos traceoptions コマンドを入力します。

設定

CLIクイックコンフィグレーション

この例をすばやく設定するには、以下のコマンドをコピーしてテキスト ファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更してから、コマンドを [edit] 階層レベルのCLIにコピー アンド ペーストします。

トレース操作の設定

ステップバイステップの手順

次の例では、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、『Junos OS CLIユーザーガイド』の「設定モードでのCLIエディターの使用」を参照してください。

トレース操作を設定するには:

  1. トレース操作を設定します。

  2. 静的ルートを設定して、ルーティングテーブルを変更します。

  3. デバイスの設定が完了したら、設定をコミットします。

トレース ファイルの表示

ステップバイステップの手順

トレース ファイルを表示するには:

  1. 動作モードで、システム上のログファイルを一覧表示します。

  2. routing-table-changesファイルの内容を表示します。

  3. ログファイルの出力をフィルタリングします。

  4. トレース操作をリアルタイムで表示するには、オプションの一致条件を付けてmonitor startコマンドを実行します。

  5. 静的ルートを無効にします。

  6. Enterキーを押し、monitor stopと入力して、monitorコマンドを停止します。

  7. トラブルシューティングが終了したら、システム リソースへの不要な影響を避けるために、トレース ログを無効にすることを検討してください。

    コンフィギュレーションが非アクティブ化されると、 非アクティブな タグでコンフィギュレーションに表示されます。

  8. トレース操作を再起動するには、 activate コンフィギュレーションモードステートメントを使用します。

結果

設定モードから、 show routing-options コマンドを入力して設定を確認します。出力に意図した設定が表示されない場合は、この例の手順を繰り返して設定を修正します。

検証

設定が正常に機能していることを確認します。

トレースログファイルが動作していることの確認

目的

イベントがログファイルに書き込まれていることを確認します。

アクション

BMP 操作のトレース

[edit routing-options bmp]階層レベルでtraceoptionsステートメントを設定するか、[edit routing-options bmp station station-name]階層レベルで特定のBMPステーションを設定することで、すべてのBMPステーションのBMP動作をトレースできます。

BMP 動作をトレースするには、以下のステップを実行します。

  1. traceoptionsステートメントを設定します。
  2. fileオプションを使用して、トレース操作の出力を受信するファイル名を指定します。名前を引用符で囲みます。すべてのファイルが /var/log のディレクトリに置かれます。BMPトレーシングの出力は、bmp-logファイルに置くことをお勧めします。
  3. (オプション) files オプションを使用して、トレースファイルの最大数を指定します。 trace-file.0 という名前のトレースファイルが最大サイズに達すると、トレースファイルの最大数に達するまで名前が trace-file.0trace-file.1などに変更されます。その後、最も古いトレース ファイルが上書きされます。最大ファイル数を指定する場合は、 size オプションで最大ファイルサイズも指定する必要があります。
  4. (オプション) size オプションを使用して、各トレースファイルの最大サイズをキロバイト(KB)、 メガバイト(MB)、または ギガバイト(GB)で 指定します。 trace-file という名前のトレース ファイルがこのサイズに達すると、名前が trace-file.0 に変更されます。 trace-file が再び最大サイズに達すると、 trace-file.0trace-file.1trace-filetrace-file.0に名前が変更されます。この名前変更スキームは、トレース ファイルの最大数に達するまで続きます。その後、最も古いトレース ファイルが上書きされます。最大ファイルサイズを指定する場合は、 files オプションを使用してトレースファイルの最大数も指定する必要があります。
  5. (オプション)ログファイルは、 world-readable (デバイス上のすべてのユーザーがアクセス可能)または no-world-readable (デバイス上のすべてのユーザーがアクセスできない)に指定できます。
  6. flagステートメントを使用して、以下のBMP固有のトレースオプションを指定できます。
    • all—すべてのBMP監視操作をトレースします。

    • down—ダウンメッセージ。

    • error- エラー状態。

    • event—主要なイベント、ステーションの確立、エラー、およびイベント。

    • general—一般的なイベント。

    • normal—通常のイベント。

    • packets—すべてのメッセージ。

    • policy- ポリシー処理。

    • route—ルーティング情報。

    • route-monitoring—ルート監視メッセージ。

    • state- 状態遷移。

    • statistics—統計メッセージ。

    • task—ルーティングプロトコルタスク処理。

    • timer—ルーティングプロトコルタイマー処理。

    • up—アップメッセージ。

    • write—メッセージの書き込み。

    オプションで、以下のフラグ修飾子を1つ以上指定できます。

    • detail—詳細なトレース情報を提供します。

    • disable—トレースフラグを無効にします。

    • receive—受信しているパケットをトレースします。

    • send—送信中のパケットをトレースします。

    注:

    allトレースフラグとdetailフラグ修飾子は、コンピューターの処理能力が増加するため、注意して使用してください。

変更履歴テーブル

サポートされる機能は、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がお使いのプラットフォームでサポートされているかどうかを確認します。

リリース
説明
18.3R1
Junos OSリリース18.3R1以降、BGP監視プロトコル(BMP)で使用するルーティングインスタンスを指定できるようになりました。