Cマルチキャストルートの交換
このセクションでは、 シグナリング プロバイダ トンネルとデータ プレーンの設定で説明したタイプ 7 ルートの PE-PE の配布について説明します。
ソースツリーのみモードでは、レシーバープロバイダーエッジ(PE)ルーターは、ローカルレシーバーからの(C-*, C-G)メッセージの受信に応答して、タイプ6ルートを生成し、 <routing-instance-name>.mvpn.0
テーブルにインストールしますが、BGP経由で他のPEルーターにこのルートをアドバタイズしません。受信側PEルーターは、C-joinに対応するタイプ5のルートを待ちます。
タイプ 5 ルートは、アクティブな送信元に関する情報を伝送し、任意の PE ルーターからアドバタイズできます。Junos OSでは、PEルーターは、次のいずれかの条件が発生した場合にタイプ5のルートを発信します。
PE ルータが、VPN マルチキャスト送信元から直接マルチキャスト データの受信を開始します。
PE ルータは候補ランデブー ポイント(ルーター)(候補 RP)であり、C-PIM 登録メッセージの受信を開始します。
PE ルータは、候補 RP とマルチキャスト ソース検出プロトコル(MSDP)セッションを持ち、MSDP ソース アクティブ ルートの受信を開始します。
タイプ 6 とタイプ 5 の両方のルートが <routing-instance-name>.mvpn.0
テーブルにインストールされると、受信側 PE ルーターはタイプ 7 ルートを発信する準備が整います
BGPを使用したCマルチキャストルートのアドバタイズ
VPNインターフェイス経由で受信したC-joinが送信元ツリージョイン(C-S、C-G)である場合、レシーバーPEルーターは単にタイプ7ルートを発信します(次の手順のステップ7)。C 結合が共有ツリー結合(C-*、C-G)である場合、受信側 PE ルーターは、タイプ 7 ルートを発信する前に、いくつかのステップ(ステップ 1 から 7)を実行する必要があります。
ルーターPE1は、送信者PEルーターと同じルーターに配置されている候補RPであることに注意してください。送信側PEルーターと候補RPとして機能する(またはMSDPピアリングする)PEルーターが異なる場合、VPNマルチキャスト登録メッセージは、まず、タイプ5ルートの発信を担当する候補RPとして機能するPEルーターに配信される必要があります。このトピックで参照されているルーターについては、 次世代 MVPN ネットワーク トポロジについてを参照してください。
(C-*, C-G)ジョイン メッセージを受信した PE ルーターは、通常の C-PIM 手順を使用してメッセージを処理し、それに応じて C-PIM データベースを更新します。
ルーターPE3で
show pim join extensive instance vpna 224.1.1.1
コマンドを入力し、ルーターCE3から(*, 224.1.1.1)C-joinメッセージを受信した後、ルーターPE3がC-PIMデータベースを作成することを確認します。user@PE3> show pim join extensive instance vpna 224.1.1.1 Instance: PIM.vpna Family: INET R = Rendezvous Point Tree, S = Sparse, W = Wildcard Group: 224.1.1.1 Source: * RP: 10.12.53.1 Flags: sparse,rptree,wildcard Upstream protocol: BGP Upstream interface: Through BGP Upstream neighbor: Through MVPN Upstream state: Join to RP Downstream neighbors: Interface: so-0/2/0.0 10.12.87.1 State: Join Flags: SRW Timeout: Infinity
C-PIM データベースの (C-*, C-G) エントリはタイプ 6 ルートの生成をトリガーし、C-PIM によって
<routing-instance-name>.mvpn.0
テーブルにインストールされます。タイプ 6 ルートは、候補 RP の IP アドレスを送信元として使用します。ルーターPE3で
show route table vpna.mvpn.0 detail | find 6:10.1.1.1
コマンドを入力して、ルーターPE3がvpna.mvpn.0
テーブルに次のタイプ6ルートをインストールすることを確認します。user@PE3> show route table vpna.mvpn.0 detail | find 6:10.1.1.1 6:10.1.1.1:1:65000:32:10.12.53.1:32:224.1.1.1/240 (1 entry, 1 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4), Next hop index: 262144 Next-hop reference count: 11 State: <Active Int> Age: 1d 1:32:58 Task: PIM.vpna Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: no-advertise target:10.1.1.1:64
タイプ6ルートにアタッチされたルート識別子とルートターゲットは、候補RPのIPアドレスの
<routing-instance-name>.inet.0
テーブル内のルート検索から学習されます。ルーターPE3で
show route table vpna.inet.0 10.12.53.1 detail
コマンドを入力して、ルーターPE3のvpna.inet.0
テーブルに次のC-RP 10.12.53.1
エントリーがあることを確認します。user@PE3> show route table vpna.inet.0 10.12.53.1 detail vpna.inet.0: 9 destinations, 9 routes (9 active, 0 holddown, 0 hidden) 10.12.53.1/32 (1 entry, 1 announced) *BGP Preference: 170/-101 Route Distinguisher: 10.1.1.1:1 Next hop type: Indirect Next-hop reference count: 6 Source: 10.1.1.1 Next hop type: Router, Next hop index: 588 Next hop: via so-0/0/3.0, selected Label operation: Push 16, Push 299808(top) Protocol next hop: 10.1.1.1 Push 16 Indirect next hop: 8da91f8 262143 State: <Secondary Active Int Ext> Local AS: 65000 Peer AS: 65000 Age: 4:49:25 Metric2: 1 Task: BGP_65000.10.1.1.1+179 Announcement bits (1): 0-KRT AS path: I Communities: target:10:1 src-as:65000:0 rt-import:10.1.1.1:64 Import Accepted VPN Label: 16 Localpref: 100 Router ID: 10.1.1.1 Primary Routing Table bgp.l3vpn.0
VPN 送信元がデータの送信を開始した後、(登録メッセージまたは MSDP 送信元アクティブ ルートの受信によって)アクティブな送信元を認識した最初の PE ルーターは、その
VRF mvpn
テーブルにタイプ 5 ルートをインストールします。ルーターPE1で
show route table vpna.mvpn.0 detail | find 5:10.1.1.1
コマンドを入力して、ルーターPE1がvpna.mvpn.0
テーブルに次のエントリをインストールし、ルーターCE1からC-PIM登録メッセージの受信を開始していることを確認します。user@PE1> show route table vpna.mvpn.0 detail | find 5:10.1.1.1 5:10.1.1.1:1:32:192.168.1.2:32:224.1.1.1/240 (1 entry, 1 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4) Next-hop reference count: 30 State: <Active Int> Age: 1d 1:36:33 Task: PIM.vpna Announcement bits (3): 0-PIM.vpna 1-mvpn global task 2-BGP RT Background AS path: I
<routing-instance-name>.mvpn.0
テーブルにインストールされているタイプ 5 ルートは、BGP によってピックアップされ、リモート PE ルーターにアドバタイズされます。ルーターPE1で
show route advertising-protocol bgp 10.1.1.3 detail table vpna.mvpn.0 | find 5:
コマンドを入力して、ルーターPE1がリモートPEルーターに次のタイプ5ルートをアドバタイズしていることを確認します。user@PE1> show route advertising-protocol bgp 10.1.1.3 detail table vpna.mvpn.0 | find 5: * 5:10.1.1.1:1:32:192.168.1.2:32:224.1.1.1/240 (1 entry, 1 announced) BGP group int type Internal Route Distinguisher: 10.1.1.1:1 Nexthop: Self Flags: Nexthop Change Localpref: 100 AS path: [65000] I Communities: target:10:1
(C-*, C-G)のタイプ5とタイプ6の両方のルートを持つ受信側PEルーターは、タイプ7ルートを発信する準備ができました。
ルーターPE3で
show route table vpna.mvpn.0 detail
コマンドを入力して、ルーターPE3のvpna.mvpn.0
テーブルに次のタイプ5、6、および7ルートがあることを確認します。タイプ 6 ルートは、ステップ 2 で C-PIM によってインストールされます。タイプ 5 ルートは、ステップ 5 で BGP 経由で学習されます。タイプ 7 ルートは、同じ(C-*、C-G)に対してタイプ 5 とタイプ 6 の両方のルートがあることに応答して、MVPN モジュールによって発信されます。両方のルート(候補RP[10.12.53.1]のIPアドレスとVPNマルチキャスト送信元[192.168.1.2])の両方が同じルーター[PE1]を介して到達可能であるため、タイプ7ルートのルートターゲットはタイプ6ルートのルートターゲットと同じです。そのため、
10.12.53.1
と192.168.1.2
は同じルートターゲットインポート(10.1.1.1:64
)コミュニティを伝送しますuser@PE3> show route table vpna.mvpn.0 detail 5:10.1.1.1:1:32:192.168.1.2:32:224.1.1.1/240 (1 entry, 1 announced) *BGP Preference: 170/-101 Next hop type: Indirect Next-hop reference count: 4 Source: 10.1.1.1 Protocol next hop: 10.1.1.1 Indirect next hop: 2 no-forward State: <Secondary Active Int Ext> Local AS: 65000 Peer AS: 65000 Age: 1d 1:43:13 Metric2: 1 Task: BGP_65000.10.1.1.1+55384 Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: target:10:1 Import Accepted Localpref: 100 Router ID: 10.1.1.1 Primary Routing Table bgp.mvpn.0 6:10.1.1.1:1:65000:32:10.12.53.1:32:224.1.1.1/240 (1 entry, 1 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4), Next hop index: 262144 Next-hop reference count: 11 State: <Active Int> Age: 1d 1:44:09 Task: PIM.vpna Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: no-advertise target:10.1.1.1:64 7:10.1.1.1:1:65000:32:192.168.1.2:32:224.1.1.1/240 (1 entry, 1 announced) *MVPN Preference: 70 Next hop type: Multicast (IPv4), Next hop index: 262144 Next-hop reference count: 11 State: <Active Int Ext> Age: 1d 1:44:09 Metric2: 1 Task: mvpn global task Announcement bits (3): 0-PIM.vpna 1-mvpn global task 2-BGP RT Background AS path: I Communities: target:10.1.1.1:64
VRF MVPNテーブルにインストールされたタイプ7ルートは、BGPによってピックアップされ、リモートPEルーターにアドバタイズされます。
ルーターPE3で
show route advertising-protocol bgp 10.1.1.1 detail table vpna.mvpn.0 | find 7:10.1.1.1
コマンドを入力して、ルーターPE3が次のタイプ7ルートをアドバタイズしていることを確認します。user@PE3> show route advertising-protocol bgp 10.1.1.1 detail table vpna.mvpn.0 | find 7:10.1.1.1 * 7:10.1.1.1:1:65000:32:192.168.1.2:32:224.1.1.1/240 (1 entry, 1 announced) BGP group int type Internal Route Distinguisher: 10.1.1.3:1 Nexthop: Self Flags: Nexthop Change Localpref: 100 AS path: [65000] I Communities: target:10.1.1.1:64
C ジョインがソース ツリー ジョインである場合、タイプ 7 ルートは(タイプ 5 ルートを待たずに)ただちに発信されます。
ルーターPE2で
show route table vpna.mvpn.0 detail | find 7:10.1.1.1
コマンドを入力して、ルーターPE2が(192.168.1.2, 232.1.1.1
)C-joinの受信に応答して次のタイプ7ルートを発信していることを確認します。user@PE2> show route table vpna.mvpn.0 detail | find 7:10.1.1.1 7:10.1.1.1:1:65000:32:192.168.1.2:32:232.1.1.1/240 (1 entry, 1 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4), Next hop index: 262146 Next-hop reference count: 4 State: <Active Int> Age: 2d 18:59:56 Task: PIM.vpna Announcement bits (3): 0-PIM.vpna 1-mvpn global task 2-BGP RT Background AS path: I Communities: target:10.1.1.1:64
C マルチキャスト ルートの受信
送信側PEルーターは、ルートがローカルで発信されたルートターゲットインポートコミュニティと一致するルートターゲットを伝送している場合、タイプ7ルートをインポートします。すべてのタイプ 7 ルートは、<routing-instance-name>.mvpn.0
テーブルにインストールされるためには、__vrf-mvpn-import-cmcast-<routing-instance-name>-internal__
ポリシーに合格する必要があります。
送信側PEルーターがBGP経由でタイプ7ルートを受信すると、このルートが <routing-instance-name>.mvpn.0
テーブルにインストールされます。その後、BGP ルートは VRF テーブル内で通常の C ジョインに変換され、C ジョインは受信側 PE ルーターのローカル C-PIM データベースにインストールされます。C-PIM データベースに追加された新しい C ジョインは、C-PIM がタイプ 6 またはタイプ 7 ルートを発信するようにトリガーします。送信側 PE ルーターの C-PIM は、BGP 経由で受信した同じタイプ 7 ルートの独自のバージョンを作成します。
show route table vpna.mvpn.0 detail | find 7:10.1.1.1
コマンドを使用して、ルーターPE1の(192.168.1.2, 224.1.1.1
)ジョインメッセージに対応するvpna.mvpn.0
テーブル内のタイプ7ルートの以下のエントリーが含まれていることを確認します。2 つのエントリがあります。1 つのエントリは PIM によってインストールされ、もう 1 つのエントリは BGP によってインストールされます。この例では、(192.168.1.2, 232.1.1.1
)ジョインに対応するタイプ 7 ルートも示しています。
user@PE1> show route table vpna.mvpn.0 detail | find 7:10.1.1.1 7:10.1.1.1:1:65000:32:192.168.1.2:32:224.1.1.1/240 (2 entries, 2 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4) Next-hop reference count: 30 State: <Active Int> Age: 1d 2:19:04 Task: PIM.vpna Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: no-advertise target:10.1.1.1:64 BGP Preference: 170/-101 Next hop type: Indirect Next-hop reference count: 4 Source: 10.1.1.3 Protocol next hop: 10.1.1.3 Indirect next hop: 2 no-forward State: <Secondary Int Ext> Inactive reason: Route Preference Local AS: 65000 Peer AS: 65000 Age: 53:27 Metric2: 1 Task: BGP_65000.10.1.1.3+179 Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: target:10.1.1.1:64 Import Accepted Localpref: 100 Router ID: 10.1.1.3 Primary Routing Table bgp.mvpn.0 7:10.1.1.1:1:65000:32:192.168.1.2:32:232.1.1.1/240 (2 entries, 2 announced) *PIM Preference: 105 Next hop type: Multicast (IPv4) Next-hop reference count: 30 State: <Active Int> Age: 2d 19:21:17 Task: PIM.vpna Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: no-advertise target:10.1.1.1:64 BGP Preference: 170/-101 Next hop type: Indirect Next-hop reference count: 4 Source: 10.1.1.2 Protocol next hop: 10.1.1.2 Indirect next hop: 2 no-forward State: <Secondary Int Ext> Inactive reason: Route Preference Local AS: 65000 Peer AS: 65000 Age: 53:27 Metric2: 1 Task: BGP_65000.10.1.1.2+49165 Announcement bits (2): 0-PIM.vpna 1-mvpn global task AS path: I Communities: target:10.1.1.1:64 Import Accepted Localpref: 100 Router ID: 10.1.1.2 Primary Routing Table bgp.mvpn.0
リモート C 結合(BGP を介して学習したタイプ 7 ルートを通常の C 結合に変換)は、送信側 PE ルーターの VRF C-PIM データベースにインストールされ、通常の C-PIM 手順に基づいて処理されます。このプロセスにより、エンドツーエンドの C マルチキャスト ルーティング交換が完了します。
show pim join extensive instance vpna
コマンドを使用して、ルーター PE1 が C-PIM データベースに次のエントリをインストールしたことを確認します。
user@PE1> show pim join extensive instance vpna Instance: PIM.vpna Family: INET R = Rendezvous Point Tree, S = Sparse, W = Wildcard Group: 224.1.1.1 Source: 192.168.1.2 Flags: sparse,spt Upstream interface: fe-0/2/0.0 Upstream neighbor: 10.12.97.2 Upstream state: Local RP, Join to Source Keepalive timeout: 201 Downstream neighbors: Interface: Pseudo-MVPN Group: 232.1.1.1 Source: 192.168.1.2 Flags: sparse,spt Upstream interface: fe-0/2/0.0 Upstream neighbor: 10.12.97.2 Upstream state: Local RP, Join to Source Keepalive timeout: Downstream neighbors: Interface: Pseudo-MVPN Instance: PIM.vpna Family: INET6 R = Rendezvous Point Tree, S = Sparse, W = Wildcard