例:PIM のノンストップ アクティブ ルーティングの設定
PIM のノンストップ アクティブ ルーティングについて
ノンストップアクティブルーティング 構成には、ルーティングエンジンのフェイルオーバー中にルーティングが中断されないように、情報を共有する2つのルーティングエンジンが含まれます。ノンストップ アクティブ ルーティングがデュアル ルーティング エンジン プラットフォームで設定されている場合、PIM 制御状態が両方のルーティング エンジンに複製されます。
この PIM 状態情報には、次のものが含まれます。
ネイバー関係
情報の結合とプルーニング
RP セット情報
ルートとネクストホップ間の同期と、2つのルーティングエンジン間の転送状態
PIM 制御の状態は、プライマリからバックアップのルーティング エンジンに状態情報を複製し、バックアップ ルーティング エンジンがプライマリ ルーティング エンジンの [instance].inet.1 ルーティング テーブルでルートのインストールと変更に対応することによって、バックアップ ルーティング エンジンで維持されます。バックアップ ルーティング エンジンは、PIM プロトコル パケットを直接送受信しません。また、バックアップ ルーティング エンジンは、プライマリ ルーティング エンジンで作成された動的インターフェイスを使用します。これらの動的インターフェイスには、PIM カプセル化、カプセル化解除、およびマルチキャスト トンネル インターフェイスが含まれます。
ノンストップ アクティブ ルーティングが有効な場合、バックアップのルーティング エンジンでは、 clear pim join、 clear pim register、および clear pim statistics 操作モード コマンドはサポートされません。
プライマリ ルーティング エンジンの PIM 設定に加えて、PIM のノンストップ アクティブ ルーティングを有効にするには、[ edit] 階層レベルで以下のステートメントを含める必要があります。
シャーシ冗長グレースフルスイッチオーバー
ルーティングオプションノンストップルーティング
システム・コミット同期
例:PIM によるノンストップ アクティブ ルーティングの設定
この例では、PIM ベースのマルチキャスト IPv4 および IPv6 トラフィックに対してノンストップ アクティブ ルーティングを設定する方法を示します。
必要条件
PIM ベースのマルチキャスト トラフィックのノンストップ アクティブ ルーティングを IPv6 で機能させるには、ルーティング デバイスで Junos OS リリース 10.4 以降が実行されている必要があります。
始める前に:
概要
Junos OS は、以下の PIM シナリオでノンストップ アクティブ ルーティングをサポートしています。
デンスモード
スパース モード
ティッカー
静的 RP
Auto-RP(IPv4 のみ)
ブートストラップ ルーター
非RPルーターの組み込みRP(IPv6のみ)
BFDのサポート
ドラフトローゼンマルチキャストVPNとBGPマルチキャストVPN(プライマリとバックアップルーティングエンジン間でMVPNルート、cmcast、プロバイダートンネル、および転送情報を同期するには、
[edit protocols bgp]
階層レベルでadvertise-from-main-vpn-tables
オプションを使用します)。ネイバーポリシー、ブートストラップルーターのエクスポートおよびインポートポリシー、スコープポリシー、フローマップ、リバースパスフォワーディング(RPF)チェックポリシーなどのポリシー機能
Junos OS リリース 13.3 では、マルチキャスト VPN はノンストップ アクティブ ルーティングではサポートされていません。ポリシーベースの機能(ネイバーポリシー、参加ポリシー、BSRポリシー、スコープポリシー、フローマップ、RPFチェックポリシーなど)は、ノンストップアクティブルーティングではサポートされていません。
この例では、スタティック RP を使用しています。インターフェイスは、IPv4 と IPv6 の両方のトラフィックを受信するように設定されています。R2 は、ローカル RP として RP サービスを提供します。ノンストップ アクティブ ルーティングは RP ルーターではサポートされていないことに注意してください。この例で示す設定は、R1 上にあります。
構成
CLIクイック構成
この例を迅速に設定するには、以下のコマンドをコピーして、テキスト ファイルに貼り付け、改行を削除し、ネットワーク設定に一致させる必要がある詳細情報を変更し、コマンドを [edit]
階層レベルで CLI にコピー アンド ペーストして、設定モードから commit
を入力します。
R1
set system syslog archive size 10m set system syslog file messages any info set system commit synchronize set chassis redundancy graceful-switchover set interfaces traceoptions file dcd-trace set interfaces traceoptions file size 10m set interfaces traceoptions file files 10 set interfaces traceoptions flag all set interfaces so-0/0/1 unit 0 description "to R0 so-0/0/1.0" set interfaces so-0/0/1 unit 0 family inet address 10.210.1.2/30 set interfaces so-0/0/1 unit 0 family inet6 address FDCA:9E34:50CE:0001::2/126 set interfaces fe-0/1/3 unit 0 description "to R2 fe-0/1/3.0" set interfaces fe-0/1/3 unit 0 family inet address 10.210.12.1/30 set interfaces fe-0/1/3 unit 0 family inet6 address FDCA:9E34:50CE:0012::1/126 set interfaces fe-1/1/0 unit 0 description "to H1" set interfaces fe-1/1/0 unit 0 family inet address 10.240.0.250/30 set interfaces fe-1/1/0 unit 0 family inet6 address ::10.240.0.250/126 set interfaces lo0 unit 0 description "R1 Loopback" set interfaces lo0 unit 0 family inet address 10.210.255.201/32 primary set interfaces lo0 unit 0 family iso address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00 set interfaces lo0 unit 0 family inet6 address abcd::10:210:255:201/128 set protocols ospf traceoptions file r1-nsr-ospf2 set protocols ospf traceoptions file size 10m set protocols ospf traceoptions file files 10 set protocols ospf traceoptions file world-readable set protocols ospf traceoptions flag error set protocols ospf traceoptions flag lsa-update detail set protocols ospf traceoptions flag flooding detail set protocols ospf traceoptions flag lsa-request detail set protocols ospf traceoptions flag state detail set protocols ospf traceoptions flag event detail set protocols ospf traceoptions flag hello detail set protocols ospf traceoptions flag nsr-synchronization detail set protocols ospf traffic-engineering set protocols ospf area 0.0.0.0 interface so-0/0/1.0 metric 100 set protocols ospf area 0.0.0.0 interface fe-0/1/3.0 metric 100 set protocols ospf area 0.0.0.0 interface lo0.0 passive set protocols ospf area 0.0.0.0 interface fxp0.0 disable set protocols ospf area 0.0.0.0 interface fe-1/1/0.0 passive set protocols ospf3 traceoptions file r1-nsr-ospf3 set protocols ospf3 traceoptions file size 10m set protocols ospf3 traceoptions file world-readable set protocols ospf3 traceoptions flag lsa-update detail set protocols ospf3 traceoptions flag flooding detail set protocols ospf3 traceoptions flag lsa-request detail set protocols ospf3 traceoptions flag state detail set protocols ospf3 traceoptions flag event detail set protocols ospf3 traceoptions flag hello detail set protocols ospf3 traceoptions flag nsr-synchronization detail set protocols ospf3 area 0.0.0.0 interface fe-1/1/0.0 passive set protocols ospf3 area 0.0.0.0 interface fe-1/1/0.0 metric 1 set protocols ospf3 area 0.0.0.0 interface lo0.0 passive set protocols ospf3 area 0.0.0.0 interface so-0/0/1.0 metric 1 set protocols ospf3 area 0.0.0.0 interface fe-0/1/3.0 metric 1 set protocols pim traceoptions file r1-nsr-pim set protocols pim traceoptions file size 10m set protocols pim traceoptions file files 10 set protocols pim traceoptions file world-readable set protocols pim traceoptions flag mdt detail set protocols pim traceoptions flag rp detail set protocols pim traceoptions flag register detail set protocols pim traceoptions flag packets detail set protocols pim traceoptions flag autorp detail set protocols pim traceoptions flag join detail set protocols pim traceoptions flag hello detail set protocols pim traceoptions flag assert detail set protocols pim traceoptions flag normal detail set protocols pim traceoptions flag state detail set protocols pim traceoptions flag nsr-synchronization set protocols pim rp static address 10.210.255.202 set protocols pim rp static address abcd::10:210:255:202 set protocols pim interface lo0.0 set protocols pim interface fe-0/1/3.0 mode sparse set protocols pim interface fe-0/1/3.0 version 2 set protocols pim interface so-0/0/1.0 mode sparse set protocols pim interface so-0/0/1.0 version 2 set protocols pim interface fe-1/1/0.0 mode sparse set protocols pim interface fe-1/1/0.0 version 2 set policy-options policy-statement load-balance then load-balance per-packet set routing-options nonstop-routing set routing-options router-id 10.210.255.201 set routing-options forwarding-table export load-balance set routing-options forwarding-table traceoptions file r1-nsr-krt set routing-options forwarding-table traceoptions file size 10m set routing-options forwarding-table traceoptions file world-readable set routing-options forwarding-table traceoptions flag queue set routing-options forwarding-table traceoptions flag route set routing-options forwarding-table traceoptions flag routes set routing-options forwarding-table traceoptions flag synchronous set routing-options forwarding-table traceoptions flag state set routing-options forwarding-table traceoptions flag asynchronous set routing-options forwarding-table traceoptions flag consistency-checking set routing-options traceoptions file r1-nsr-sync set routing-options traceoptions file size 10m set routing-options traceoptions flag nsr-synchronization set routing-options traceoptions flag commit-synchronize
プロシージャ
手順
次の例では、設定階層のいくつかのレベルに移動する必要があります。CLI のナビゲーションについては、『Junos OS CLIユーザーガイド』の「 コンフィギュレーション・モードで CLI エディタを使用する」を参照してください。
R1でノンストップアクティブルーティングを設定するには:
ルーティング エンジンを同期します。
[edit] user@host# edit system [edit system] user@host# set commit synchronize user@host# exit
グレースフル ルーティング エンジン スイッチオーバーを有効にします。
[edit] user@host# set chassis redundancy graceful-switchover
R1のインタフェースを設定します。
[edit] user@host# edit interfaces [edit interfaces] user@host# set so-0/0/1 unit 0 description "to R0 so-0/0/1.0" user@host# set so-0/0/1 unit 0 family inet address 10.210.1.2/30 user@host# set so-0/0/1 unit 0 family inet6 address FDCA:9E34:50CE:0001::2/126 user@host# set fe-0/1/3 unit 0 description "to R2 fe-0/1/3.0" user@host# set fe-0/1/3 unit 0 family inet address 10.210.12.1/30 user@host# set fe-0/1/3 unit 0 family inet6 address FDCA:9E34:50CE:0012::1/126 user@host# set fe-1/1/0 unit 0 description "to H1" user@host# set fe-1/1/0 unit 0 family inet address 10.240.0.250/30 user@host# set fe-1/1/0 unit 0 family inet6 address ::10.240.0.250/126 user@host# set lo0 unit 0 description "R1 Loopback" user@host# set lo0 unit 0 family inet address 10.210.255.201/32 primary user@host# set lo0 unit 0 family iso address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00 user@host# set lo0 unit 0 family inet6 address abcd::10:210:255:201/128 user@host# exit
R1 で IPv4 用 OSPF を設定します。
[edit] user@host# edit protocols ospf [edit protocols ospf] user@host# set traffic-engineering user@host# set area 0.0.0.0 interface so-0/0/1.0 metric 100 user@host# set area 0.0.0.0 interface fe-0/1/3.0 metric 100 user@host# set area 0.0.0.0 interface lo0.0 passive user@host# set area 0.0.0.0 interface fxp0.0 disable user@host# set area 0.0.0.0 interface fe-1/1/0.0 passive
R1 で IPv6 用 OSPF を設定します。
[edit] user@host# edit protocols ospf3 [edit protocols ospf3] user@host# set area 0.0.0.0 interface fe-1/1/0.0 passive user@host# set area 0.0.0.0 interface fe-1/1/0.0 metric 1 user@host# set area 0.0.0.0 interface lo0.0 passive user@host# set area 0.0.0.0 interface so-0/0/1.0 metric 1 user@host# set area 0.0.0.0 interface fe-0/1/3.0 metric 1
R1 で PIM を設定します。PIM スタティック アドレスは、RP ルータ(R2)を指します。
[edit] user@host# edit [edit protocols pim] user@host# set protocols pim rpstatic address 10.210.255.202 user@host# set protocols pim rp static address abcd::10:210:255:202 user@host# set protocols pim interface (Protocols PIM) lo0.0 user@host# set protocols pim interface fe-0/1/3.0 mode sparse user@host# set protocols pim interface fe-0/1/3.0 version 2 user@host# set protocols pim interface so-0/0/1.0 mode sparse user@host# set protocols pim interface so-0/0/1.0 version 2 user@host# set protocols pim interface fe-1/1/0.0 mode sparse user@host# set protocols pim interface fe-1/1/0.0 version 2
R1 でパケット単位のロード バランシングを設定します。
[edit] user@host# edit policy-options policy-statement load-balance [edit policy-options policy-statement load-balance] user@host# set then load-balance per-packet
R1 に負荷分散ポリシーを適用します。
[edit] user@host# set routing-options forwarding-table export load-balance
R1でノンストップルーティングを設定します。
[edit] user@host# set routing-options nonstop-routing user@host# set routing-options router-id 10.210.255.201
手順
トラブルシューティングのために、システムログとトレース操作を設定します。
システムログメッセージを有効にします。
[edit] user@host# set system syslog archive size 10m user@host# set system syslog file messages any info
インターフェイス動作をトレースします。
[edit] user@host# set interfaces traceoptions file dcd-trace user@host# set interfaces traceoptions file size 10m user@host# set interfaces traceoptions file files 10 user@host# set interfaces traceoptions flag all
IPv4 の IGP 操作をトレースします。
[edit] user@host# set protocols ospf traceoptions file r1-nsr-ospf2 user@host# set protocols ospf traceoptions file size 10m user@host# set protocols ospf traceoptions file files 10 user@host# set protocols ospf traceoptions file world-readable user@host# set protocols ospf traceoptions flag error user@host# set protocols ospf traceoptions flag lsa-update detail user@host# set protocols ospf traceoptions flag flooding detail user@host# set protocols ospf traceoptions flag lsa-request detail user@host# set protocols ospf traceoptions flag state detail user@host# set protocols ospf traceoptions flag event detail user@host# set protocols ospf traceoptions flag hello detail user@host# set protocols ospf traceoptions flag nsr-synchronization detail
IPv6 の IGP 操作をトレースします。
[edit] user@host# set protocols ospf3 traceoptions file r1-nsr-ospf3 user@host# set protocols ospf3 traceoptions file size 10m user@host# set protocols ospf3 traceoptions file world-readable user@host# set protocols ospf3 traceoptions flag lsa-update detail user@host# set protocols ospf3 traceoptions flag flooding detail user@host# set protocols ospf3 traceoptions flag lsa-request detail user@host# set protocols ospf3 traceoptions flag state detail user@host# set protocols ospf3 traceoptions flag event detail user@host# set protocols ospf3 traceoptions flag hello detail user@host# set protocols ospf3 traceoptions flag nsr-synchronization detail
PIM 操作をトレースします。
[edit] user@host# set protocols pim traceoptions file r1-nsr-pim user@host# set protocols pim traceoptions file size 10m user@host# set protocols pim traceoptions file files 10 user@host# set protocols pim traceoptions file world-readable user@host# set protocols pim traceoptions flag mdt detail user@host# set protocols pim traceoptions flag rp detail user@host# set protocols pim traceoptions flag register detail user@host# set protocols pim traceoptions flag packets detail user@host# set protocols pim traceoptions flag autorp detail user@host# set protocols pim traceoptions flag join detail user@host# set protocols pim traceoptions flag hello detail user@host# set protocols pim traceoptions flag assert detail user@host# set protocols pim traceoptions flag normal detail user@host# set protocols pim traceoptions flag state detail user@host# set protocols pim traceoptions flag nsr-synchronization
すべてのルーティング プロトコル機能をトレースします。
[edit] user@host# set routing-options traceoptions file r1-nsr-sync user@host# set routing-options traceoptions file size 10m user@host# set routing-options traceoptions flag nsr-synchronization user@host# set routing-options traceoptions flag commit-synchronize
転送テーブル操作のトレース。
[edit] user@host# set routing-options forwarding-table traceoptions file r1-nsr-krt user@host# set routing-options forwarding-table traceoptions file size 10m user@host# set routing-options forwarding-table traceoptions file world-readable user@host# set routing-options forwarding-table traceoptions flag queue user@host# set routing-options forwarding-table traceoptions flag route user@host# set routing-options forwarding-table traceoptions flag routes user@host# set routing-options forwarding-table traceoptions flag synchronous user@host# set routing-options forwarding-table traceoptions flag state user@host# set routing-options forwarding-table traceoptions flag asynchronous user@host# set routing-options forwarding-table traceoptions flag consistency-checking
デバイスの設定が完了したら、設定をコミットします。
[edit] user@host# commit
業績
設定モードから、 show chassis、 show interfaces、 show policy-options、 show protocol、 show routing-options、 および show system コマンドを入力して、設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の設定手順を繰り返して設定を修正します。
user@host# show chassis redundancy { graceful-switchover; }
user@host# show interfaces traceoptions { file dcd-trace size 10m files 10; flag all; } so-0/0/1 { unit 0 { description "to R0 so-0/0/1.0"; family inet { address 10.210.1.2/30; } family inet6 { address FDCA:9E34:50CE:0001::2/126; } } } fe-0/1/3 { unit 0 { description "to R2 fe-0/1/3.0"; family inet { address 10.210.12.1/30; } family inet6 { address FDCA:9E34:50CE:0012::1/126; } } } fe-1/1/0 { unit 0 { description "to H1"; family inet { address 10.240.0.250/30; } family inet6 { address ::10.240.0.250/126; } } } lo0 { unit 0 { description "R1 Loopback"; family inet { address 10.210.255.201/32 { primary; } } family iso { address 47.0005.80ff.f800.0000.0108.0001.0102.1025.5201.00; } family inet6 { address abcd::10:210:255:201/128; } } }
user@host# show policy-options policy-statement load-balance { then { load-balance per-packet; } }
user@host# show protocols ospf { traceoptions { file r1-nsr-ospf2 size 10m files 10 world-readable; flag error; flag lsa-update detail; flag flooding detail; flag lsa-request detail; flag state detail; flag event detail; flag hello detail; flag nsr-synchronization detail; } traffic-engineering; area 0.0.0.0 { interface so-0/0/1.0 { metric 100; } interface fe-0/1/3.0 { metric 100; } interface lo0.0 { passive; } interface fxp0.0 { disable; } interface fe-1/1/0.0 { passive; } } } ospf3 { traceoptions { file r1-nsr-ospf3 size 10m world-readable; flag lsa-update detail; flag flooding detail; flag lsa-request detail; flag state detail; flag event detail; flag hello detail; flag nsr-synchronization detail; } area 0.0.0.0 { interface fe-1/1/0.0 { passive; metric 1; } interface lo0.0 { passive; } interface so-0/0/1.0 { metric 1; } interface fe-0/1/3.0 { metric 1; } } } pim { traceoptions { file r1-nsr-pim size 10m files 10 world-readable; flag mdt detail; flag rp detail; flag register detail; flag packets detail; flag autorp detail; flag join detail; flag hello detail; flag assert detail; flag normal detail; flag state detail; flag nsr-synchronization; } rp { static { address 10.210.255.202; address abcd::10:210:255:202; } } interface lo0.0; interface fe-0/1/3.0 { mode sparse; version 2; } interface so-0/0/1.0 { mode sparse; version 2; } interface fe-1/1/0.0 { mode sparse; version 2; } }
user@host# show routing-options traceoptions { file r1-nsr-sync size 10m; flag nsr-synchronization; flag commit-synchronize; } nonstop-routing; router-id 10.210.255.201; forwarding-table { traceoptions { file r1-nsr-krt size 10m world-readable; flag queue; flag route; flag routes; flag synchronous; flag state; flag asynchronous; flag consistency-checking; } export load-balance; }
user@host# show system syslog { archive size 10m; file messages { any info; } } commit synchronize;
検証
構成を確認するには、次のコマンドを実行します。
PIM JOIN EXTENSIVEを表示
PIM ネイバーの inet detail を表示
PIM ネイバー inet6 の詳細を表示
PIM RPS inet detail を表示
PIM RPS inet6 の詳細を表示
show multicast route inet extensive
マルチキャストルートinet6拡張を表示
ルートテーブルinet.1の詳細を表示
ルートテーブルinet6.1の詳細を表示
PIM スパース モード グレースフル リスタートの設定
PIM スパース モードを設定して、ルーティング プロセスの障害時や再起動時にも、既存のマルチキャスト パケット ストリームの転送を継続することができます。この方法で設定できるのは、PIM スパース モードだけです。ルーティング プロセスは失敗すると、他のすべてのマルチキャスト プロトコルを再起動する必要があるため、ルーティング プラットフォームはグレースフル リスタート時に PIM 以外のプロトコルのマルチキャスト パケットを転送しません。PIM スパース密度モードを設定すると、スパース マルチキャスト グループのみがグレースフル リスタートの恩恵を受けます。
ルーティング プラットフォームは、再起動が完了するまで新しいストリームを転送しません。再起動後、ルーティング プラットフォームは、再起動期間中にネイバーから受信したすべての更新で、転送状態を更新します。たとえば、ルーティング プラットフォームは再起動中にネイバーのジョイン状態とプルーニング状態を再学習しますが、再起動が終わるまで転送テーブルに変更を適用しません。
PIM スパース モードが有効な場合、ルーティング プラットフォームは生成識別子と呼ばれる一意の 32 ビット乱数を生成します。世代識別子は、インターネット ドラフト draft-ietf-pim-sm-v2-new-10.txtで指定されているとおり、デフォルトで PIM hello メッセージに含まれます。ルーティング プラットフォームが、ポイントツーポイント インターフェイスで世代識別子を含む PIM Hello メッセージを受信すると、Junos OS はグレースフル リスタートを最適化するアルゴリズムをアクティブにします。
PIM スパース モード グレースフル リスタートが発生する前に、各ルーティング プラットフォームは世代識別子を作成し、マルチキャスト ネイバーに送信します。PIM スパース モードのルーティング プラットフォームが再起動すると、新しい世代識別子が作成され、ネイバーに送信されます。ネイバーは、新しい識別子を受信すると、マルチキャスト更新を再起動ルーターに再送信し、グレースフルリスタートを効率的に終了できるようにします。再起動フェーズは、再起動期間タイマーが期限切れになると完了します。
マルチキャスト転送は、2 つの方法で中断できます。まず、基盤となるルーティング プロトコルが不安定な場合、マルチキャスト RPF チェックが失敗し、中断が発生する可能性があります。第 2 に、グレースフル リスタート期間中は転送テーブルが更新されないため、グレースフル リスタートが完了するまで新しいマルチキャスト ストリームは転送されません。
グレースフルリスタートは、グローバルに、またはルーティングインスタンスに対して設定できます。この例では、グレースフルリスタートをグローバルに設定する方法を示しています。
PIM スパース モードでグレースフル リスタートを設定するには、次の手順に従います。
関連項目
変更履歴テーブル
機能のサポートは、使用しているプラットフォームとリリースによって決まります。 機能エクスプローラー を使用して、機能がプラットフォームでサポートされているかどうかを判断します。