この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
このドキュメントは、米国シスコ発行ドキュメントの参考和訳です。リンク情報につきましては、日本語版掲載時点で、英語版にアップデートがあり、リンク先のページが移動/変更されている場合がありますことをご了承ください。あくまでも参考和訳となりますので、正式な内容については米国サイトのドキュメントを参照ください。
注: この製品のマニュアルセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。
SR/MPLS ハンドオフが導入される前は、Cisco ACI ファブリックにあるテナント VPN を MPLS ネットワークに拡張する方法が 2 つありました。
● IP ハンドオフを使用します。ボーダー リーフは VRF-lite を使用してプロバイダー エッジ(PE)ルータに接続されます。主な欠点は、拡張する必要がある各 VPN で、物理または論理インターフェイスとルーティング プロトコル セッションが必要であり、これにより拡張性と自動化に課題が生じることになります。

WAN への IP ハンドオフ接続
次のリンクには、IP ハンドオフと L3out に関する詳細が記載されています。
● GOLF を使用します。スパインは PE ルータに対して EVPN VxLAN を実行し、PE ルータは EVPNoVxLAN と L3VPNoMPLS 間のインターワーキング機能を実行します。このオプションは、IP ハンドオフと比較してスケーリングの点で利点がありますが(ボーダー リーフと DC-PE の間には単一の EVPN セッションがあるため)、DC-PE で VxLAN を有効にする必要があります。 また、一部のサービス プロバイダーでは VxLAN のサポートが限定的なものになる可能性があります。

WAN への GOLF 接続
次のリンクには、GOLF に関する詳細が記載されています。
SR/MPLS ハンドオフは、セグメント ルーティング(SR)MPLS を使用してボーダー リーフまたはリモート リーフを DC-PE に接続できるようにする新しい相互接続オプションです。SR/MPLS は、SP コアでははるかに一般的であるため、他のソリューションよりも優れています。このソリューションには、次の利点があります。
● DC と SP 間の統合トランスポートとポリシー
● 複数の VRF の単一コントロール プレーン セッション
● DC から制御される SP コアのトラフィック エンジニアリング

SR-MPLS から WAN への接続
注: ソリューションは SR/MPLS ハンドオフという名前ですが、既存の MPLS LDP または RSVP-TE ネットワーク展開と完全に互換性があります。ただし、特にトラフィックエンジニアリング制御機能を最大限に活用するには、セグメント ルーティング ネットワークが必要です。
いっそうの詳細については、SR/MPLS ハンドオフ ホワイト ペーパー(https://www.cisco.com/c/en/us/solutions/collateral/data-center-virtualization/application-centric-infrastructure/white-paper-c11-744107.html)を参照してください。
使用例
このセクションでは、SR/MPLS ハンドオフを使用できるサンプル ユース ケースを示します。
エンタープライズ向けプライベート クラウド

エンタープライズ向けプライベート クラウド
このユースケースでは、オペレーターは複数の企業にレイヤ 3 VPN を提供しますが、顧客専用のアプリケーションをデータセンターにホストすることでプライベート クラウド サービスにも提供します。SP から DC へのエンドツーエンドの VPN 拡張は、SR/MPLS ハンドオフまたは MPLS ハンドオフを使用して簡単に実現できます。
同様の使用例は、独自のデータセンターとプライベート WAN ネットワークを持つ企業です。企業には、特定のユーザーグループからのみ到達可能にする必要があるいくつかのアプリケーションがあります。DC のセグメンテーションは、SR/MPLS ハンドオフを使用して WAN 全体に簡単に拡張できます。
さらに、アプリケーションの制約に基づいて、アプリケーションの要件に基づいてコア内の特定のパスを介してトラフィックを操作できます。
5G ネットワーク スライシング

5G ネットワーク スライシング
SR/MPLS ハンドオフにより、5G ネットワーク スライシングに自動化が追加されます。各スライスが異なる VPN を使用できます。スライス内のトラフィックが 1 つまたは複数のサービス クラスを使用する場合があります。SR/MPLS ハンドオフにより、DC と WAN 間の VPN 拡張と、WAN の特定のトランスポートパスでのサービス クラスのマッピングの両方が自動化されます。
上記の使用例では、2 つのモバイル スライスが作成されます。1 つのスライスは、インターネットおよび一般サービスにアクセスするエンド ユーザー専用で、もう 1 つはエンタープライズ カスタマー専用です。
図 5 の例に示すように、トラフィックはプレミアム ルーティング パスを使用して専用の UPF にシームレスに誘導され、プレミアム ルーティング パスを使用して UPF から企業の本社サイトにシームレスに誘導されます。一方、エンド ユーザー トラフィックは別の専用 UPF に誘導され、インターネットに向かう前にいくつかの Gi サービスに誘導されます。エンドユーザー トラフィックのアンダーレイでのベスト エフォート ルーティング。
トランジットとしての ACI
Cisco ACI ファブリックを SR/MPLS ハンドオフのトランジットとして使用できるユース ケースがいくつかあります。これは、トラフィックがファブリックに着信した後ファブリックを出て、最終的に宛先に到達することを意味します。

サービス チェーンを使用するトランジットとしての Cisco ACI Fabric
図 6 は、ユーザーからのモバイル トラフィックがファブリック内のサービス チェーンに誘導される典型的な GiLAN のユースケースを示しています。トラフィックは、ファブリックを離れてインターネットの宛先に到達する前に、必要なすべてのサービスを通過します。

サービスのないトランジット
図 7 は、Cisco ACI ファブリックが 2 つのネットワーク間のトランスポートとしてのみ使用される 2 つの使用例を示しています。
左側の図は、メインフレームにアクセスするユーザーを示しています。メインフレームは、通常の L3out を使用してボーダー リーフに接続されます。トラフィックは SR/MPLS ハンドオフを使用して外部ネットワークから送信され、Cisco ACI ファブリックを介してメインフレームが接続されている L3out に伝送されます。
右側では、所在場所のユーザーがメイン DC にあるコンテンツにアクセスしています。地域 DC を使用してたとえばモバイル コア機能をホストできますが、所在場所のに関連するトラフィックの中継としてのみ使用されます。
対象読者
このドキュメントの対象読者は、データセンター IT、Telco クラウド、エンタープライズ DC ですが、これらに限定されません。
このマニュアルの目的
このドキュメントは、お客様の導入またはテストを容易にし、迅速に行うための検証済みの設計と設定から構成されています。
特に ACI に関連する詳細な設定を記載しているため、ドキュメントは非常に長くなりました。ただし、これにより、読者は構成をコピーして貼り付けて、検証済みの設計を簡単に再現できるようになっています。
検証済みのハードウェアおよびソフトウェア
以下に示すバージョン番号は、テスト済みであり、情報として提供されているものです。それら以降のバージョンでも、問題なく使用できます。
サービス プロバイダー ネットワーク
DC-PE として機能し、XR 7.0.2 を実行している NCS5500
DC-PE として機能し、XR 7.0.2 を実行している ASR9K T シリーズおよび Tomhawk ラインカード
データセンター ネットワーク
ACI APIC コントローラのバージョン:5.0(1k)
ACI スイッチバージョン:15.0(1k)
テスト済みの ACI スイッチハードウェア:
リーフスイッチ:N9K-C93360YC-FX2、N9K-C9336C-FX2、N9K-C93240YC-FX2、N9K-C93180YC-FX、N9K-C9348GC-FXP
スパイン スイッチ:N9K-C9364C
サポートされているハードウェアの完全なリストは、次の URL で入手できます。
構成は、使用されているハードウェアの組み合わせに関係なく同じです。
このドキュメントでは、ACI と MPLS コアとの間の SR/MPLS ハンドオフに焦点を当てているため、MPLS コアのセグメント ルーティング ベースの構成については詳しく説明しません。この基本構成は、IGP セグメント ルーティング構成(SRGB 定義、プレフィックス SID 構成)に関連しています。
設計の観点から、SR/MPLS ハンドオフを実装すると、コア SR ドメインが Cisco ACI ファブリックに拡張される可能性があります。この場合、ACI リーフに使用されるセグメント識別子(ノード SID)は、SR コアを含む SR ドメイン全体で一意である必要があります。
操作を容易にするために、SR ドメイン全体で同じセグメント ルーティング グローバル ブロック(SRGB)値を使用することをお勧めします。このドキュメントで考慮される SRGB は、ネットワーク全体で [16000, 32000] です。
表 1. ループバック アドレス
| ノード |
ループバックIPアドレス |
| リーフ 3 |
20.204.103.1/32
|
| リーフ 4 |
20.204.104.1/32
|
| リーフ 5 |
20.204.105.1/32
|
| リーフ 6 |
20.204.106.1/32
|
| リーフ 7 |
20.204.107.1/23
|
| リーフ 8 |
20.204.108.1/32
|
| リーフ 11 |
20.204.111.1/32
|
| リーフ 12 |
20.204.112.1/32
|
| リーフ 13 |
20.204.113.1/32
|
| リーフ 14 |
20.204.114.1/32
|
| PE1 |
201.201.201.1/32
|
| PE2 |
201.201.201.2/32
|
| PE3 |
201.201.201.3/32
|
| PE6 |
201.201.201.6/32
|
| PE7 |
201.201.201.7/32
|
| AGG2-PE1 |
201.221.201.1/32
|
| AGG2-PE2 |
201.221.201.2/32
|
| AGG2-RR1-EVPN |
201.221.202.3/32
|
| AGG2-RR2-EVPN |
201.221.202.4/32
|
| AGG3-PE1 |
201.231.201.1/32
|
| AGG3-PE2 |
201.231.201.2/32
|
設計

ACI メイン DC とリモート リーフ間の基本通信
図 8 では、 2 つのワークロード A と B が、通信するリモートリーフを備えた ACI メイン DC にそれぞれ接続されています。トラフィック フローのトランスポート要件はありません。
SR/MPLS ハンドオフは、ボーダー リーフと DC-PE の間で実装されます。中央の Cisco ACI ファブリックは、DC-PE として機能する PE2 に直接接続されたボーダー リーフとして Leaf3 を使用します。リモート リーフ Leaf5 は、DC-PE として機能する PE6 に直接接続されています。
ACI と SP ネットワークは異なる AS 番号を使用しています。
注: ACI ボーダー リーフと SP コアの間での iBGP の使用はまだサポートされていません。
この設計では、データプレーンとコントロールプレーンに同じループバックが使用されることを前提としています。これは、ACI がコントロールプレーンとデータプレーンに個別のループバックを使用することをサポートしている場合でも、最も単純なソリューションです。
テナント構成の観点からは、VRF はサイト間で拡張されません。各 ACI サイトでは、ルート ターゲット(RT)の異なるセットを持つ異なる VRF を使用する必要があります。この例では、Cisco ACI ファブリックには RT 1:2110005 を使用する TENANT_BASIC_21 と呼ばれる VRF があり、リモート リーフ サイトには RT 1:2110006 を使用する TENANT_BASIC_2121 と呼ばれる VRF があります。SP コアは、VPN ユニキャスト アドレス ファミリ ドメインで RT 1:2110000 を使用します。
注: VRF が拡張されると、VxLAN トンネルが自動的に作成され、SR/MPLS パスの代わりに VxLAN パスが使用されます。詳細は次のセクションに記載されています。
セットアップはリモート リーフ サイトと通信するファブリック サイトとして提示されていますが、以下で詳しく説明するように、他の組み合わせもテストされ、完全にサポートされています。

さまざまな検証済みトラフィックの組み合わせ
構成は、リストされているすべてのケースで同じです。
インフラストラクチャ設定
インフラストラクチャの構成は、DC-PE と ACI ボーダー リーフ間の SR/MPLS ハンドオフの設定で構成されます。この単純な使用例では、DC-PE へのボーダー リーフのマルチホーミングがなく、高速コンバージェンスに関連する調整がないことを前提としています。次のセクションでは、マルチホーミングについて説明します。
PE2 DC-PE の構成
インターフェイスから BL への構成
インターフェイス TenGigE0/0/0/0/4
SR/MPLS に使用される ifav204-leaf3:1/1 へ接続されている場合の説明
ipv4 アドレス 120.1.53.2 255.255.255.0
load-interval 30
!
BGP ラベル付きユニキャスト構成
BGP LU(ラベル付きユニキャスト)構成には、いくつかの構成ブロックが必要です。
1. 最初に、BGP LU アドレスファミリを構成し、ローカル ループバック アドレスを BGP LU に再配布する必要があります。ループバック アドレスのフィルタリングは、ローカル ループバック アドレスを定義するプレフィックス セット PFXSET-OWN-LO0 を活用したルート ポリシー CONNECTED-TO-BGP-LU を使用して有効になります。ルート ポリシーはループバックに関連付けられたノード SID 値を入力パラメータとして取るため、ノード SID を BGP プレフィックス SID 属性として BGP-LU ルートに添付できます。この設定では、ノード SID「2」がルートポリシーのパラメータとして使用されます。
router bgp 1
bgp router-id 201.201.201.2
address-family ipv4 unicast
redistribute connected route-policy CONNECTED-TO-BGP-LU(2)
allocate-label all
!
!
prefix-set PFXSET-OWN-LO0
201.201.201.2/32
end-set
!
route-policy CONNECTED-TO-BGP-LU($node_sid)
if destination in PFXSET-OWN-LO0 then
set label-index $node_sid
pass
endif
end-policy
!
2. 次に、ACI ボーダー リーフとの BGP-LU セッションを設定する必要があります。
BGP-LU の提案された構成では、ネイバーグループを使用します。必要に応じて、ネイバーグループを再利用したり、複数の BGP-LU ピアに適用したりできます。この例では、単一のピアが構成されています。デフォルトでは、XR では eBGP ピアでいくつかの明示的なポリシーを設定する必要があります。そうでない場合、すべてのルートがドロップされます。
DC-PE は ACI ボーダー リーフに直接接続されているため、BGP-LU セッションを介して DC-PE が受信したボーダー リーフ ループバック アドレスを SP ネットワークに伝達する必要はありません。インバウンドポリシー SET-CT-NO-ADVERTISE は、既知の「no-advertise」BGP コミュニティを設定することにより、BGP-LU プレフィックスが他の BGP ピア(存在する場合)に伝播されないようにします。
アウトバウンド ポリシー ADVERTISE-LO0-ONLY により、DC-PE がローカル ループバック アドレスを ACI リーフにのみ伝達することが保証されます(これも、リーフと DC-PE が直接接続されているためです)。
router bgp 1
neighbor-group ACI-site-LU
remote-as 987654321
address-family ipv4 labeled-unicast
route-policy SET-CT-NO-ADVERTISE in
maximum-prefix 10 80 warning-only
route-policy ADVERTISE-LO0-ONLY out
!
!
neighbor 120.1.53.1
use neighbor-group ACI-site-LU
!
!
community-set COMSET-NO-ADVERTISE
no-advertise
end-set
!
route-policy SET-CT-NO-ADVERTISE
set community COMSET-NO-ADVERTISE
end-policy
!
route-policy ADVERTISE-LO0-ONLY
if destination in PFXSET-OWN-LO0 then
pass
else
drop
endif
end-policy
!
3. 最後のステップでは、リーフへのインターフェイスで MPLS 転送をアクティブにします。
router bgp 1
mpls activate
interface TenGigE0/0/0/0/4
!
router static
address-family ipv4 unicast
120.1.53.1/32 TenGigE0/0/0/0/4
BGP オーバーレイ設定
BGP オーバーレイの設定は、DC-PE での BGP サービス オーバーレイ アドレス ファミリのアクティブ化で構成されます。
SP コア側では、DC-PE は VPNv4/VPNv6 アドレス ファミリを実行する必要がありますが、EVPN アドレス ファミリは ACI リーフに向けて実行されます。
注: ACI ボーダー リーフと DC-PE は直接接続されていますが、EVPN セッションはループバック アドレス間で実行されます。次に、eBGP マルチホップを EVPN セッションに実装する必要があります。
この設定では、制約付きルート配布も VPNv4/v6 ピアでアクティブになりますが、アクティブにする必要はありません。
BGP-LU セッションと同様に、提供される構成は高速コンバージェンスを含まないシングル ホーミングの使用例用です。
router bgp 1
address-family vpnv4 unicast
!
address-family vpnv6 unicast
!
address-family ipv4 rt-filter
!
address-family l2vpn evpn
!
neighbor-group ACI-site-EVPN
remote-as 987654321
ebgp-multihop 255
update-source Loopback0
address-family l2vpn evpn
!
!
neighbor-group RR-VPNunicast
remote-as 1
update-source Loopback0
address-family vpnv4 unicast
!
address-family vpnv6 unicast
!
address-family ipv4 rt-filter
!
neighbor 20.204.103.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy PASS in
route-policy PASS out
!
neighbor 202.202.202.102
use neighbor-group RR-VPNunicast
!
neighbor 202.202.202.103
use neighbor-group RR-VPNunicast
!
route-policy PASS
pass
end-policy
!
最後のステップでは、EVPN/VPNvX スティッチング機能を有効にします。
ACI ネイバー グループでは、EVPN アドレス ファミリは、次のコマンドを使用して VPNvX アドレス ファミリへのスティッチングを有効にする必要があります。
router bgp 1
neighbor-group ACI-site-EVPN
address-family l2vpn evpn
import stitching-rt re-originate
advertise vpnv4 unicast re-originated stitching-rt
advertise vpnv6 unicast re-originated stitching-rt
!
!
EVPN/VPNvX スティッチングは、スティッチング RT と非スティッチング RT の概念に基づいています。たとえば、EVPN ルートは、スティッチング RT として構成された RT を持つ DC-PE によって学習され、スティッチング RT を持つ EVPN ルートはローカル VRF にインポートされ、非スティッチング RT 値を使用して VPNvX に再発信されます。逆処理は、VPNvX ルートが非スティッチング RT で受信されると発生し、ルートは VRF にインポートされ、スティッチング RT を使用して EVPN に再発信されます。
VPN RR ネイバーグループでは、次の設定を使用してスティッチングもアクティブ化する必要があります。
router bgp 1
neighbor-group RR-VPNunicast
address-family vpnv4 unicast
import re-originate stitching-rt
advertise vpnv4 unicast re-originated
!
address-family vpnv6 unicast
import re-originate stitching-rt
advertise vpnv6 unicast re-originated
PE6 DC-PE の構成
PE6 の設定は PE2 の設定に似ています。
interface TenGigE0/0/0/12
description connected to ifav204-leaf5:1/1 used for SR/MPLS
ipv4 address 120.1.62.2 255.255.255.0
load-interval 30
!
router static
address-family ipv4 unicast
120.1.62.1/32 TenGigE0/0/0/12
!
router bgp 1
bgp router-id 201.201.201.6
mpls activate
interface TenGigE0/0/0/12
!
address-family ipv4 unicast
redistribute connected route-policy CONNECTED-TO-BGP-LU(6)
allocate-label all
!
address-family vpnv4 unicast
!
address-family vpnv6 unicast
!
address-family ipv4 rt-filter
!
address-family l2vpn evpn
!
neighbor-group ACI-site-EVPN
remote-as 987654321
ebgp-multihop 255
update-source Loopback0
address-family l2vpn evpn
import stitching-rt re-originate
advertise vpnv4 unicast re-originated stitching-rt
advertise vpnv6 unicast re-originated stitching-rt
!
!
neighbor-group RR-VPNunicast
remote-as 1
update-source Loopback0
address-family vpnv4 unicast
import re-originate stitching-rt
advertise vpnv4 unicast re-originated
!
address-family vpnv6 unicast
import re-originate stitching-rt
advertise vpnv6 unicast re-originated
!
address-family ipv4 rt-filter
!
!
neighbor 120.1.62.1
use neighbor-group ACI-site-LU
address-family ipv4 labeled-unicast
route-policy SET-CT-NO-ADVERTISE in
maximum-prefix 10 80 warning-only
route-policy ADVERTISE-LO0-ONLY out
!
!
neighbor 20.204.105.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy PASS in
route-policy PASS out
!
!
!
prefix-set PFXSET-OWN-LO0
201.201.201.6/32
end-set
!
route-policy ADVERTISE-LO0-ONLY
if destination in PFXSET-OWN-LO0 then
pass
else
drop
endif
end-policy
!
community-set COMSET-NO-ADVERTISE
no-advertise
end-set
!
route-policy SET-CT-NO-ADVERTISE
set community COMSET-NO-ADVERTISE
end-policy
!
route-policy PASS
pass
end-policy
!
route-policy CONNECTED-TO-BGP-LU($node_sid)
if destination in PFXSET-OWN-LO0 then
set label-index $node_sid
pass
endif
end-policy
ACI の構成
SR/MPLS Infra L3out は、境界リーフの「INFRA」テナントで設定されます。
設定には、SR/MPLS ハンドオフのためのアンダーレイ BGP-LU セッションとオーバーレイ BGP EVPN セッションが含まれています。
次に、テナント VRF を選択的に ACI インフラ L3out に接続し、テナント プレフィックスを DC-PE ルータにアドバタイズし、DC-PE から MPLS VPN プレフィックスをインポートする必要があります。
ACI 設定は、Cisco APIC に簡単にインポートできる XML として提供されるため、設定の各ブロックは XML のタグコメントに関連付けられています。次に、各タグ コメントに関連付けられたブロックの説明を示します。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<fvTenant
dn="uni/tn-infra"
name="infra"
>
<!-- Tag_1 インフラ テナントでのデフォルト ラベル範囲の構成 -->
<mplsLabelPol
maxDynamicLabel="525286"
maxStaticLabel="0"
minDynamicLabel = "16"
minStaticLabel="0"
name="default"
>
<mplsSrgbLabelPol
localId="1"
maxSrgbLabel="32000"
minSrgbLabel="16000"
/>
</mplsLabelPol>
<!-- Tag_2 インフラ テナントでのデフォルト インターフェイスの構成 -->
<mplsIfPol
name="default"
/>
<!-- Tag_3 DC PE ロケーション 2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.103.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-103"
>
<l3extLoopBackIfP addr="20.204.103.1"
>
<mplsNodeSidP
loopbackAddr="20.204.103.1"
sidoffset="45"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.53.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.53.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.2"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId = "30.204.105.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-105"
>
<l3extLoopBackIfP addr="20.204.105.1"
>
<mplsNodeSidP
loopbackAddr="20.204.105.1"
sidoffset="47"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.62.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.62.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
</fvTenant>
</imdata>
Tag_1 インフラ テナントでのデフォルトのラベル範囲設定:
このブロックにより、MPLS ラベル ポリシーが作成されます。
ACI は、すべてのファブリックで同じセグメント ルーティング グローバル ブロック(SRGB)をサポートします。デフォルトの SRGB の範囲は 16000 ~ 23999 です。SRGB の範囲は最小(16000)および最大(471804)で、ユーザーが構成できます。
注: ACI は、アンダーレイ ラベルに対して常にヌルをアドバタイズします(トランスポート ループバック)。VRF 集約ラベルは、SRGB の範囲とは異なる範囲(948576 ~ 1068576)からアドバタイズされます。
この例では、16000 ~ 32000 で始まる SRGB を使用しています。
Tag_2 インフラ テナントでのデフォルト インターフェイス プロファイルの設定:
このブロックにより、MPLS インターフェイス プロファイル ポリシーが作成されます。デフォルトポリシーがあり、DC-PE に接続されたインターフェイスに適用しました。
Tag_3 および Tag_4 DC PE への MPLS インフラ L3out:
このブロックは、SR/MPLS INFRA L3 out の設定を処理します。
コンテナ「mplsExtP」は、作成された MPLS ラベル ポリシーを SR/MPLS INFRA L3out にアタッチします。
コンテナ「l3extLNodeP」は、DC-PE に接続されているリーフを参照する NodeProfile です。
注: この例では、ノードにはすでにルータ ID が割り当てられています。たとえば、leaf3 のルータ ID は 30.204.103.1 です。
SR/MPLS は、L3 ポート、L3 サブインターフェイス、ポートチャネル、ポートチャネル サブインターフェイスでサポートされます。SR/MPLS は vPC および SVI ではサポートされません。
BGP EVPN ピア タイプは SR MPLS に設定する必要があります。EVPN BGP セッションはループバック アドレスに基づいているため、セッションの TTL は最小 2(eBGP マルチホップ)である必要があります。提供された設定では、ロケーション 2-1 のピアアドレス(201.201.201.2)に PE02 EVPN ループバックを設定しています。
EVPN ピアで allow-as-in(allow-self-as)属性を設定して、ACI サイトが同じ AS 番号を持つリモート サイトから BGP ルートを受信できるようにすることが重要です。
例:
<bgpInfraPeerP addr="201.201.201.2" addrTCtrl="af-ucast" adminSt="enabled" allowedSelfAsCnt="3" annotation="" ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
Verifications
XR BGP-LU
BGP セッション状態は、次のコマンドを使用して表示できます。次の出力では、PE02 がリーフから 1 つのプレフィックスを受信しています。
RP/0/RSP0/CPU0:PE02#show bgp ipv4 labeled-unicast summary
Mon Aug 31 13:13:29.718 UTC
BGP router identifier 201.201.201.2, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000 RD version: 273
BGP main routing table version 273
BGP NSR Initial initsync version 42 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs
BGP is operating in STANDALONE mode.
Process RcvTblVer bRIB/RIB LabelVer ImportVer SendTblVer StandbyVer
Speaker 273 273 273 273 273 0
Neighbor Spk AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down St/PfxRcd
120.1.53.1 0 987654321 1352 1351 273 0 0 22:27:28 1
受信されたプレフィックスは、次のコマンドを使用して確認できます。DC-PE は、BGP-LU セッション経由でリーフ ループバック アドレス 20.204.103.1/32 を正しく受信します。
RP/0/RSP0/CPU0:PE02#show bgp ipv4 labeled-unicast neighbors 120.1.53.1 routes
Mon Aug 31 13:14:34.270 UTC
BGP router identifier 201.201.201.2, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0xe0000000 RD version: 273
BGP main routing table version 273
BGP NSR Initial initsync version 42 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs
Status codes: s suppressed, d damped, h history, * valid, > best
i - internal, r RIB-failure, S stale, N Nexthop-discard
Origin codes: i - IGP, e - EGP, ? - incomplete
Network Next Hop Metric LocPrf Weight Path
*> 20.204.103.1/32 120.1.53.1 0 987654321 i
プレフィックス 20.204.103.1/32 の詳細を表示すると、暗黙のヌル MPLS ラベルと、リーフによってアドバタイズされた Node-SID 値(45)を確認できます。
RP/0/RSP0/CPU0:PE02#show bgp ipv4 unicast 20.204.103.1/32
9月3日(木)02:51:28.796 UTC
BGP routing table entry for 20.204.103.1/32
Versions:
Process bRIB/RIB SendTblVer
Speaker 1867 1867
Local Label: 16045
Last Modified: Sep 2 16:29:40.144 for 10:21:49
Paths: (1 available, best #1, not advertised to any peer)
Not advertised to any peer
Path #1: Received by speaker 0
Not advertised to any peer
987654321
120.1.53.1 from 120.1.53.1 (30.204.103.1)
Received Label 3
Origin IGP, localpref 100, valid, external, best, group-best, labeled-unicast
Received Path ID 0, Local Path ID 1, version 1867
Community: no-advertise
Origin-AS validity: (disabled)
label-index
RP/0/RSP0/CPU0:PE02#
ローカル MPLS ラベル値は、次を使用して予想どおりに計算されます。
ベース SRGB + インデックス = 16000 + 45 = 16045。
ACI BGP-LU:
BGP-LU セッションに接続されているデフォルト ルート マップは、次のコマンドを使用して表示できます。
ifav204-leaf3# show bgp ipv4 labeled-unicast neighbors 120.1.53.2 vrf overlay-1
BGP neighbor is 120.1.53.2, remote AS 1, ebgp link, Peer index 5
For address family: IPv4 Unicast
BGP table version 7, neighbor version 0
0 accepted paths consume 0 bytes of memory
0 sent paths
0 denied paths
Maximum prefixes allowed 20000 (action is reject)
Threshold for warning messages 75%
Inbound route-map configured is permit-all, handle obtained
Outbound route-map configured is permit-mpls-cp-loopback, handle obtained
For address family: IPv4 Label Unicast
BGP table version 10, neighbor version 10
1 accepted paths consume 112 bytes of memory
1 sent paths
0 denied paths
Inbound route-map configured is permit-all, handle obtained
Outbound route-map configured is permit-mpls-dp-loopback, handle obtained
ifav204-leaf3#
----
ifav204-leaf3# show route-map permit-all
route-map permit-all, permit, sequence 2
Match clauses:
Set clauses:
ifav204-leaf3# show route-map permit-mpls-cp-loopback
route-map permit-mpls-cp-loopback, permit, sequence 1
Match clauses:
ip address prefix-lists: infra_mpls_cp_tep
Set clauses:
ifav204-leaf3# show route-map permit-mpls-dp-loopback
route-map permit-mpls-dp-loopback, permit, sequence 1
Match clauses:
ip address prefix-lists: infra_mpls_dp_tep
Set clauses:
ifav204-leaf3# show ip prefix-list infra_mpls_dp_tep
ip prefix-list infra_mpls_dp_tep: 1 entries
seq 1 permit 20.204.103.1/32
ifav204-leaf3# show ip prefix-list infra_mpls_cp_tep
ip prefix-list infra_mpls_cp_tep: 1 entries
seq 1 permit 20.204.103.1/32
ifav204-leaf3#
デフォルト ルート マップには次の目的があります。
● permit-all は、ipv4 ラベル付きユニキャストおよび ipv4 ユニキャスト アドレス ファミリのインバウンド プレフィックスを許可します。
● permit-mpls-cp-loopback は、EVPN コントロール プレーン ループバックをアドバタイズします
● permit-mpls-dp-loopback はMPLS トランスポート ループバックをアドバタイズします。
LEAF3 では、PE02 からのループバックが BGP-LU を使用して正しく受信されます。DC-PE と BL が直接接続されているため、受信ラベルは暗黙的ヌルに対応する 3(暗黙的ヌル)です。BGP プレフィックス SID 属性(ラベル インデックス 2)も正しく受信されています。
ifav204-leaf3# show bgp ipv4 labeled-unicast 201.201.201.2/32 vrf overlay-1
BGP routing table information for VRF overlay-1, address family IPv4 Label Unicast
BGP routing table entry for 201.201.201.2/32, version 20 dest ptr 0xa4977ed8
Paths: (1 available, best #1)
Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW
label af: version 29, (0x100002) on xmit-list
Advertised path-id 1, Label AF advertised path-id 1
Path type: external 0x40000028 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: 1 , path sourced external to AS
120.1.53.2(201.201.201.2)から 120.1.53.2(メトリック 0)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 3
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 2
Path-id 1 not advertised to any peer
Label AF advertisement
Path-id 1 not advertised to any peer
ifav204-leaf3#
XR BGP EVPN Session State
RP/0/RSP0/CPU0:PE02#show bgp l2vpn evpn summary
Mon Aug 31 13:15:43.258 UTC
BGP router identifier 201.201.201.2, local AS number 1
BGP generic scan interval 60 secs
Non-stop routing is enabled
BGP table state: Active
Table ID: 0x0 RD version: 0
BGP main routing table version 147
BGP NSR Initial initsync version 147 (Reached)
BGP NSR/ISSU Sync-Group versions 0/0
BGP scan interval 60 secs
BGP is operating in STANDALONE mode.
Process RcvTblVer bRIB/RIB LabelVer ImportVer SendTblVer StandbyVer
Speaker 147 147 147 147 147 0
Neighbor Spk AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down St/PfxRcd
20.204.103.1 0 987654321 1429 1556 147 0 0 22:29:19 0
ACI BGP EVPN Session State
ifav204-leaf3# show bgp l2vpn evpn summary vrf overlay-1
BGP summary information for VRF overlay-1, address family L2VPN EVPN
BGP router identifier 30.204.103.1, local AS number 987654321
BGP table version is 2004, L2VPN EVPN config peers 2, capable peers 2
401 network entries and 520 paths using 65452 bytes of memory
BGP attribute entries [81/12960], BGP AS path entries [0/0]
BGP community entries [5/160], BGP clusterlist entries [2/8]
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
201.201.201.2 4 1 1203 642 2004 0 0 10:07:21 0
ifav204-leaf3#
この段階では、ACI ボーダー リーフでルートを受信しません。VPN ルートを交換するには、テナントの設定が必要です。
テナントの設定
PE2 DC-PE
各 DC-PE では、EVPN/VPNvX スティッチング機能を実行するために VRF を設定する必要があります。
VRF は、スティッチング RT 値(この設計では、ACI DC で EVPN ドメインで使用される RT)と非スティッチング RT 値(SP コアの VPNvX ドメインで使用される RT)で構成されます。
各 DC-PE は、スティッチング VRF に異なるルート識別子を使用する必要があります。
また、ユーザーは、接続された ACI サイトにある VRF と同じ RD 値で DC-PE が構成されていないことを確認する必要があります。EVPN と VPNvX 間のルート再発信を有効にするには、異なる RD を使用する必要があります。再発信は、学習したルートのスティッチング VRF と同じ RD にある場合、発生することはありません。
vrf TENANT_BASIC
address-family ipv4 unicast
import route-target
1:2110000
1:2110005 stitching
!
export route-target
1:2110000
1:2110005 stitching
!
!
address-family ipv6 unicast
import route-target
1:2110000
1:2110005 stitching
!
export route-target
1:2110000
1:2110005 stitching
!
!
!
router bgp 1
vrf TENANT_BASIC
rd 1:2110002
address-family ipv4 unicast
!
address-family ipv6 unicast
!
PE6 DC-PE
vrf TENANT_BASIC
address-family ipv4 unicast
import route-target
1:2110000
1:2110006 stitching
!
export route-target
1:2110000
1:2110006 stitching
!
!
address-family ipv6 unicast
import route-target
1:2110000
1:2110006 stitching
!
export route-target
1:2110000
1:2110006 stitching
!
!
!
router bgp 1
vrf TENANT_BASIC
rd 1:2110006
address-family ipv4 unicast
!
address-family ipv6 unicast
!
ACI の構成
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<!-- 必要に応じてテナントの名前を指定します -->
<fvTenant descr="Tenant with Basic SR MPLS Handoff between 2-1 and 2-1-2-1"
dn="uni/tn-TENANT-BASIC"
name="TENANT-BASIC"
>
<!-- Tag_1 ユーザー L3out ルート制御構成 -->
<rtctrlSubjP
name="all"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="100.0.0.0/8"
toPfxLen="0"
/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="::/0"
toPfxLen="0"
/>
</rtctrlSubjP>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<!-- Tag_2 DC PE ロケーション 2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2121"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106/instP-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_3 DC PE ロケーション 2-1-2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_21"
/>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-MPLS-TENANT-L3OUT-2105/instP-LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2121"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_5 DC PE ロケーション 2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_21"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_6 DC PE ロケーション 2-1 に対するユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2105"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:5::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_21"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_7 DC PE ロケーション 2-1-2-1 へのユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2106"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:6::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2121"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_8 DC PE ロケーション 2-1 に対するアプリケーション プロファイルの構成 -->
<fvAp
name="LOCATION-2-1-2-1-AP2106"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG106"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-105/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2106"
/>
</fvAEPg>
</fvAp>
<!-- Tag_9 DC PE ロケーション 2-1-2-1 へのアプリケーション プロファイル構成 -->
<fvAp
name="LOCATION-2-1-AP2105"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG105"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="immediate"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-101/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="immediate"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2105"
/>
</fvAEPg>
</fvAp>
</fvTenant>
</imdata>
Tag_1ユーザー L3out ルート制御構成 -->
アウトバウンド ルート ポリシー
BD サブネットを含む任意のプレフィックスをアドバタイズするには、アウトバウンド ルート ポリシーが必要です。デフォルトでは、アウトバウンド ルート マップのポリシーはプレフィックスをアドバタイズしません。明示的なアウトバウンド ルート マップは、次の機能で構成できます。ただしそれらに限定されていません。
● SR-MPLS ネットワークにアドバタイズされるプレフィックスの照合
● SR-MPLS ネットワークにプレフィックスをアドバタイズするためのプレフィックスとコミュニティの照合
● プレフィックスやコミュニティの一致に基づいた、カラー コミュニティを含むコミュニティの設定
インバウンド ルート ポリシー
インバウンド ルート マップ:デフォルトでは、インバウンド ルート マップのポリシーはすべてのプレフィックスを受け入れます。必要に応じて、ファブリックで選択的に拒否するプレフィックスと一致するように、明示的な着信ルート マップを設定できます。
Tag_2 および Tag_3 DC PE への User L3out 構成
これにより、各サイトの SR MPLS テナント L3out が指定されます。
SR MPLS コアに対してアドバタイズされる必要がある各 VRF は、SR/MPLS-Infra L3out に関連付ける必要があります。インポートおよびエクスポートのルートマップは、プレフィックスやコミュニティに基づいてルート ポリシーを適用して、SR ネットワークにプレフィックスをアドバタイズしたり、SR ネットワークからプレフィックスを受信したりするように任意で設定できます。
上記の XML 構成の詳細:
● 「rtctrlProfile」:上記の設定のルート制御プロファイルは、インバウンドおよびアウトバウンドのルート ポリシーを適用するために使用されます。
● 「l3extConsLbl」:上記の構成のレイヤ 3 コンシューマ ラベルは、ルートをリークする必要があるユーザー テナント SR MPLS の場所に SR MPLS インフラの場所をマップするために使用されます。
● 「l3extInstP」:外部 EPG は SR/MPLS テナント L3out で定義されます。
● ユーザーはサブネットを定義でき、それらのサブネットは ACI セキュリティポリシー(コントラクト)の適用に使用されます
● 外部 EPG サブネットは、フラグを使用して別の VRF のプレフィックスをリークするために使用されます。外部 EPG サブネットでルート リークとセキュリティ フラグを有効にすると、そのサブネットは別の VRF にリークされる可能性があります。
● 集約フラグを使用して外部 EPG サブネットを設定し、プレフィックスを別の VRF にリークすることもできます。リーフ プレフィックスに対してコントラクトを定義し、VRF 間の通信を許可する必要があります。
● SR-MPLS VRF L3Out 上の外部 EPG は、ルート マップを適用してプレフィックス アドバタイズメントのアドバタイズ/拒否するなどの、ルーティング ポリシーには使用されません。
Tag_4 および Tag_5 DC に対するユーザー VRF 構成
VRF および対応する EVPN RT を指定します。この例では、RT 1:2110006 はサイト 2-1-2-1 の VRF のルートのインポートとエクスポートの両方に使用され、RT 1:210005 はサイト 2-1 の VRF に使用されます。
Tag_6 および Tag_7 DC PE へのユーザー BD 構成
ホストが接続されているブリッジ ドメイン (BD) サブネットを指定します。ルートを外部にアドバタイズできるように、BD サブネットの範囲をパブリックに設定してください。これは、構成例に表示されているようにタグ "scope = public" を設定することで実現できます。
<fvSubnet ctrl="nd" descr="" ip="100.21.6.254/24" scope="public" virtual="no"/>
上記の例で使用されているサブネット:
● 100.21.5.0/24 はロケーション 2-1 のサブネットで、ゲートウェイは 100.21.5.254 です。
● 100.21.6.0/24 はサブネット 2-1-2-1 で、ゲートウェイは 100.21.6.254 です。
● これらのサブネットは、これらの 2 つの場所で SR MPLS を介して交換されます。
Tag_8 および Tag_9 DC PE へのアプリケーション プロファイル構成
ホストが接続されているエンド ポイント グループと静的ポート情報を指定します。SR MPLS になる場合、アプリケーション プロファイルと EPG の構成に変更はありません。これは、通常のテナント設定と同様に設定できます。
Verifications

エンドツーエンドのテナント VPN ルート伝達
このセクションでは、サイト間通信のコントロール プレーンとデータ プレーンを確認するために必要な操作コマンドを提供します。
サイト 2-1 がサイト 2-1-2-1 にある宛先サブネット 100.21.6.0/24 に到達する方法に焦点を当てます。
XR:BL から EVPN ルートを受信
BL から受信するルートは EVPN ルートですが、VPN ユニキャスト コマンドを使用してルートの受信を確認する必要があります。これは、EVPN と VPN ユニキャスト間のスティッチングがどのように機能するかに関連しています。ルートは EVPN として受信されますが、VPN ユニキャスト ルートに自動的に変換されます。
次に示すように、BL からルート 100.21.6.0 が PE6 によって正しく受信されます。ルートは 948594 の MPLS EVPN ラベルで受信されます。コマンドで注意すべき重要な点の 1 つは、受信したとして表示されるルート ターゲットが、実際に受信したものではないことです。再び、EVPN から VPN へのユニキャスト スティッチングは、RT に対して何らかのアクションを実行し、一致するスティッチング RT(BL から受信した 1:2110006)は、VPN ユニキャストへの変換中に非スティッチング RT(1:2110000)に置換されます。
ルートはルーティングおよび転送テーブルにインストールされます。
RP/0/RP0/CPU0:PE06#show bgp vpnv4 unicast vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 08:44:42.653 UTC
BGP routing table entry for 100.21.6.0/24, Route Distinguisher: 1:2110006
Versions:
Process bRIB/RIB SendTblVer
Speaker 164147 164147
Local Label: 32074
Last Modified: Sep 3 15:59:43.382 for 16:44:59
Paths: (3 available, best #1)
Advertised to update-groups (with more than one peer):
0.5
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.5
987654321
20.204.105.1 from 20.204.105.1 (30.204.105.1)
Received Label 948594
Origin incomplete, metric 0, localpref 100, valid, external, best, group-best, import-candidate, imported, reoriginated
Received Path ID 0, Local Path ID 1, version 164147
Extended community: RT:1:2110000
EVPN Gateway Address : 0.0.0.0
Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 105:3014666
RP/0/RP0/CPU0:PE06#show route vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 12:08:16.932 UTC
Routing entry for 100.21.6.0/24
Known via "bgp 1", distance 20, metric 0
Tag 987654321, type external
Installed Sep 3 15:59:42.931 for 20:08:34
Routing Descriptor Blocks
20.204.105.1, from 20.204.105.1, BGP external
Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000
Route metric is 0
No advertising protos.
RP/0/RP0/CPU0:PE06#show cef vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 12:07:57.268 UTC
100.21.6.0/24, version 232, internal 0x1000001 0x30 (ptr 0xa9a60978) [1], 0x0 (0x0), 0x208 (0x8aeb5318)
Updated Sep 3 15:59:42.934
Prefix Len 24, traffic index 0, precedence n/a, priority 3
via 20.204.105.1/32, 5 dependencies, recursive, bgp-ext [flags 0x6020]
path-idx 0 NHID 0x0 [0xa9d1f830 0x0]
recursion-via-/32
next hop VRF - 'default', table - 0xe0000000
next hop 20.204.105.1/32 via 16047/0/21
next hop 120.1.62.1/32 Te0/0/0/12 labels imposed {ImplNull ImplNull 948594}
XR: VPN Unicast Route Received from Remote PE
PE6 は VPNv4 を使用してルート 100.21.6.0 を SP コアにアドバタイズしており、このルートは VRF TENANT_BASIC の PE2 によって受信されてインポートされています。
同様に、PE2 が非スティッチング RT 1:2110000 を使用して VPN ユニキャスト ルートをインポートすると、ルートは自動的にスティッチング RT 値 1:2110005 に変換されます。
RP/0/RSP0/CPU0:PE02#show bgp vpnv4 unicast vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 08:37:21.850 UTC
BGP routing table entry for 100.21.6.0/24, Route Distinguisher: 1:2110002
Versions:
Process bRIB/RIB SendTblVer
Speaker 287129 287129
Local Label: 32068
Last Modified: Sep 3 16:01:33.144 for 16:35:49
Paths: (2 available, best #1)
Advertised to update-groups (with more than one peer):
0.2
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.2
987654321
201.201.201.6 (metric 20150) from 202.202.202.102 (201.201.201.6)
Received Label 32074
Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 287128
Extended community: RT:1:2110005
Originator: 201.201.201.6, Cluster list: 0.0.0.2
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110006
RP/0/RSP0/CPU0:PE02#show route vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 12:12:20.875 UTC
Routing entry for 100.21.6.0/24
Known via "bgp 1", distance 200, metric 0
Tag 987654321, type internal
Installed Sep 3 16:01:32.983 for 20:10:48
Routing Descriptor Blocks
201.201.201.6, from 202.202.202.102
Nexthop in Vrf: "default", Table: "default", IPv4 Unicast, Table Id: 0xe0000000
Route metric is 0
No advertising protos.
VRF 転送テーブルでは、ルートは BGP VPN 受信ラベル(32074)と、ノード SID に関連付けられた MPLS ラベルを使用して PE6(16006)に到達します。
RP/0/RSP0/CPU0:PE02#show cef vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 12:12:14.667 UTC
100.21.6.0/24, version 202, internal 0x1000001 0x0 (ptr 0x78f29bbc) [1], 0x0 (0x0), 0x208 (0x8a652e28)
Updated Sep 3 16:01:32.984
Prefix Len 24, traffic index 0, precedence n/a, priority 3
via 201.201.201.6/32, 6 dependencies, recursive [flags 0x6000]
path-idx 0 NHID 0x0 [0x89a98a78 0x0]
recursion-via-/32
next hop VRF - 'default', table - 0xe0000000
next hop 201.201.201.6/32 via 16006/0/21
next hop 200.200.200.2/32 BE1 labels imposed {16006 32074}
XR: VPN Unicast Route Advertised to BL
ボーダー リーフにアドバタイズされたルートを確認するときは、VPN ユニキャスト コマンドを使用する必要があります。ここでも、EVPN へのルートの変換が BGP 更新処理の後半で発生するためです。
RP/0/RSP0/CPU0:PE02#show bgp vpnv4 unicast advertised neighbor 20.204.103.1 | be 1:2110002
Fri Sep 4 12:18:59.518 UTC
Route Distinguisher: 1:2110002
100.21.6.0/24 is advertised to 20.204.103.1
Path info:
neighbor: 202.202.202.102 neighbor router id: 201.201.201.6
valid internal best import-candidate imported reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 287128
Attributes after inbound policy was applied:
next hop: 201.201.201.6
MET ORG AS LOCAL EXTCOMM
origin: incomplete neighbor as: 987654321 metric: 0 local pref: 100
aspath: 987654321
extended community: RT:1:2110005
originator: 201.201.201.6 cluster list: 0.0.0.2
Attributes after outbound policy was applied:
next hop: 201.201.201.2
ORG AS LOCAL EXTCOMM
origin: incomplete neighbor as: 987654321 local pref: 100
aspath: 1 987654321
extended community: RT:1:2110005
RP/0/RSP0/CPU0:PE02#show bgp l2vpn evpn neighbors 20.204.103.1 advertised-routes
Fri Sep 4 12:23:51.024 UTC
RP/0/RSP0/CPU0:PE02#
ルートはまだ VPN ユニキャスト ルートと見なされているため、EVPN コマンドでは何も表示されないことが予想されます。
ACI: EVPN Route Received from PE
リモート リーフ サイト 2-1-2-1 からのサブネット 100.21.6.0/24 は、サイト 2-1 にある境界リーフによって正しく受信されます。ASPATH にループがある場合でも、allowas-in パラメータがあるため、ルートは受け入れられます。
ifav204-leaf3# show bgp l2vpn evpn 100.21.6.0 vrf overlay-1
Route Distinguisher: 1:2110002
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 507 dest ptr 0xacfd07fa
Paths: (1 available, best #1)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW, is locked
Multipath: eBGP iBGP
Advertised path-id 1
Path type: external 0x40000028 0x0 ref 2 adv path ref 1, path is valid, is best path
Imported to 2 destination(s)
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.2 (metric 0) from 201.201.201.2 (201.201.201.2)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32068
Extcommunity:
RT:1:2110005
Path-id 1 not advertised to any peer
ルート識別子:103:2392067(L3VNI 2392067)
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 2182 dest ptr 0xacfd21e6
Paths: (1 available, best #1)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW
Multipath: eBGP iBGP
Advertised path-id 1
Path type: external 0xc0000028 0x0 ref 0 adv path ref 1, path is valid, is best path
Imported from 1:2110002:[5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/120
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.2 (metric 0) from 201.201.201.2 (201.201.201.2)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32068
Extcommunity:
RT:1:2110005
Path-id 1 not advertised to any peer
ifav204-leaf3#
受信したルートは、テナントのルーティング テーブルに正しくインストールされます。
ルートは、再帰ネクストホップ(PE2 ループバック)と、BGP EVPN から受信したラベルに対応する 32068 の発信 MPLS ラベル値を使用します。
ifav204-leaf3# show ip route 100.21.6.0/24 vrf TENANT-BASIC:TENANT_BASIC_21
IP Route Table for VRF "TENANT-BASIC:TENANT_BASIC_21"
'*' denotes best ucast next-hop
'**' denotes best mcast next-hop
'[x/y]' denotes [preference/metric]
'%<string>' in via output denotes VRF <string>
100.21.6.0/24, ubest/mbest: 1/0
*via 201.201.201.2%overlay-1, [20/0], 10:26:14, bgp-987654321, external, tag 1, Mpls Label 32068
recursive next hop: 201.201.201.2/32%overlay-1
ifav204-leaf3#
ACI: Tenant Connectivity Check
サイト間の接続を確認するには、リモート リーフ サイトに向けて展開されているファブリック 2-1 のリーフから ping を発行します。この場合、LEAF1 はファブリック内のテナントに接続します。
ifav204-leaf1# iping 100.21.6.254 -V TENANT-BASIC:TENANT_BASIC_21
PING 100.21.6.254 (100.21.6.254): 56 data bytes
64 bytes from 100.21.6.254: icmp_seq=0 ttl=61 time=0.46 ms
64 bytes from 100.21.6.254: icmp_seq=1 ttl=61 time=0.281 ms
64 bytes from 100.21.6.254: icmp_seq=2 ttl=61 time=0.273 ms
64 bytes from 100.21.6.254: icmp_seq=3 ttl=61 time=0.296 ms
^C
--- 100.21.6.254 ping statistics ---
4 packets transmitted, 4 packets received, +1 duplicates, 0.00% packet loss
round-trip min/avg/max = 0.273/0.405/0.72 ms
ifav204-leaf1#
設計

ACI ファブリックとマルチホーミングを使用したリモート リーフ間の基本的な通信
この使用例は、Cisco ACI ファブリックにそれぞれ配置されている 2 つのワークロードとリモート リーフ サイトが通信する必要がある前の例に似ています。ただし、インフラストラクチャの観点からは、ネットワークは完全に冗長であり、リモート リーフ スイッチのペアが各 ACI サイトの DC-PE のペアに接続されています。
最適なコンバージェンスを実現するには、各ボーダー リーフを 2 つの DC-PE に接続することをお勧めします。提供される構成では、BFD は BGP-LU セッションと EVPN セッションの両方に実装され、DC-PE と ACI ボーダー リーフ間の障害検出を高速化します。
マルチホーミングが実装されている場合、サイトから学習した一部のルートが同じサイトに再注入される場合があります。ループ防止メカニズムは、このようなループの発生を防ぐように構成されます。たとえば、PE2 が Cisco ACI ファブリックからルートを学習すると、そのルートを SP CORE に伝達し、PE1 はそれを受信して、Cisco ACI ファブリックにルートを伝達できます。
構成
PE1 DC-PE の構成
次の構成は、前の構成と非常によく似ています。違いは次のとおりです。
● BFD は、EVPN セッションだけでなく LU セッションでも「bfd fast-detect」キーワードを使用してアクティブ化されます。グローバルに設定されたタイマー(50 ミリ秒 x 3)が使用されます。ただし、ACI ボーダー リーフの最小値は 250ms x 3 であるため、マルチホップ EVPN BFD セッションはこれらの値を使用しません。
● ループ防止ポリシーは、ルートポリシーの MARK-ACI-ROUTES(インバウンド)および DROP-ACI-ROUTES(アウトバウンド)を使用して、EVPN BGP セッションで設定されます。ループは両方向で発生する可能性があります。ACI ルートは SP コアによって学習され、元の ACI サイトに挿入され、SP ルートは ACI サイトによって学習されて、SP コアに再度挿入される場合があります。複数の ACI サイトが同じ AS 番号を使用できるため(この場合、リモート リーフがファブリックと同じ AS 番号を使用している)、ASPATH ループ チェックは無効になり、ループを防ぐために使用できなくなります。Site of Origin は、ループを防ぐために両方向(各方向につき 1 つの SOO 値)で使用されます。MARK-ACI-ROUTES ルート ポリシーは、ボーダー リーフ スイッチのペアに関連付けられた SOO でルートをマークし、ACI サイトに接続された DC-PE のペアに関連付けられた SOO 値を持つルートをドロップします。DROP-ACI-ROUTES は、ボーダー リーフ スイッチのペアに関連付けられた SOO を持つルートをドロップし、ACI サイトに接続された DC-PE のペアに関連付けられた SOO を持つルートをマークします。ポリシーの再利用を可能にするために、ポリシーは変数として ACI サイト番号を使用します。
● スティッチング VRF は、iBGP および eBGP マルチパスを実行してロードバランシングの利点を活かすように設定されます(maximum-paths ebgp 16 / maximum-paths ibgp 16)。
マルチホーミングシナリオで Site of Origin を使用したループ防止
vrf TENANT_BASIC
address-family ipv4 unicast
import route-target
1:2110000
1:2110005 stitching
!
export route-target
1:2110000
1:2110005 stitching
!
!
address-family ipv6 unicast
import route-target
1:2110000
1:2110005 stitching
!
export route-target
1:2110000
1:2110005 stitching
!
!
!
interface TenGigE0/0/0/9
description connected to ifav204-leaf3:1/18 used for SR/MPLS
ipv4 address 120.1.51.2 255.255.255.0
load-interval 30
!
interface TenGigE0/0/0/11
description connected to ifav204-leaf4:1/14 used for SR/MPLS
ipv4 address 120.1.52.2 255.255.255.0
load-interval 30
!
router static
address-family ipv4 unicast
120.1.51.1/32 TenGigE0/0/0/9
120.1.52.1/32 TenGigE0/0/0/11
!
!
router bgp 1
bfd minimum-interval 50
bfd multiplier 3
bgp router-id 201.201.201.1
mpls activate
interface TenGigE0/0/0/9
interface TenGigE0/0/0/11
!
address-family ipv4 unicast
redistribute connected route-policy CONNECTED-TO-BGP-LU(1)
allocate-label all
!
address-family vpnv4 unicast
!
address-family vpnv6 unicast
!
address-family ipv4 rt-filter
!
address-family l2vpn evpn
!
neighbor-group ACI-site-LU
remote-as 987654321
bfd fast-detect
address-family ipv4 labeled-unicast
route-policy SET-CT-NO-ADVERTISE in
maximum-prefix 10 80 warning-only
route-policy ADVERTISE-LO0-ONLY out
!
!
neighbor-group ACI-site-EVPN
remote-as 987654321
bfd fast-detect
ebgp-multihop 255
update-source Loopback0
address-family l2vpn evpn
import stitching-rt re-originate
allowas-in 5
advertise vpnv4 unicast re-originated stitching-rt
advertise vpnv6 unicast re-originated stitching-rt
!
!
neighbor-group RR-VPNunicast
remote-as 1
update-source Loopback0
address-family vpnv4 unicast
import re-originate stitching-rt
advertise vpnv4 unicast re-originated
!
address-family vpnv6 unicast
import re-originate stitching-rt
advertise vpnv6 unicast re-originated
!
address-family ipv4 rt-filter
!
!
neighbor 120.1.51.1
use neighbor-group ACI-site-LU
!
neighbor 120.1.52.1
use neighbor-group ACI-site-LU
!
neighbor 20.204.103.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy MARK-ACI-ROUTES(5) in
route-policy DROP-ACI-ROUTES(5) out
!
!
neighbor 20.204.104.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy MARK-ACI-ROUTES(5) in
route-policy DROP-ACI-ROUTES(5) out
!
!
neighbor 202.202.202.100
use neighbor-group RR-VPNunicast
!
neighbor 202.202.202.101
use neighbor-group RR-VPNunicast
!
vrf TENANT_BASIC
rd 1:2110005
address-family ipv4 unicast
maximum-paths ebgp 16
maximum-paths ibgp 16
!
address-family ipv6 unicast
maximum-paths ebgp 16
maximum-paths ibgp 16
!
!
route-policy MARK-ACI-ROUTES($site)
if extcommunity soo matches-any (987654321:$site) then
drop
else
set extcommunity soo (1:$site)
endif
end-policy
!
route-policy DROP-ACI-ROUTES($site)
if extcommunity soo matches-any (1:$site) then
drop
else
set extcommunity soo (987654321:$site)
endif
end-policy
!
prefix-set PFXSET-OWN-LO0
201.201.201.1/32
end-set
!
route-policy ADVERTISE-LO0-ONLY
if destination in PFXSET-OWN-LO0 then
pass
else
drop
endif
end-policy
!
community-set COMSET-NO-ADVERTISE
no-advertise
end-set
!
route-policy SET-CT-NO-ADVERTISE
set community COMSET-NO-ADVERTISE
end-policy
!
route-policy CONNECTED-TO-BGP-LU($node_sid)
if destination in PFXSET-OWN-LO0 then
set label-index $node_sid
pass
endif
end-policy
ACI の構成
インフラ テナントの構成
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<fvTenant
dn="uni/tn-infra"
name="infra"
>
<!-- Tag_1 インフラ テナントでのデフォルト ラベル範囲の構成 -->
<mplsLabelPol
maxDynamicLabel="525286"
maxStaticLabel="0"
minDynamicLabel = "16"
minStaticLabel="0"
name="default"
>
<mplsSrgbLabelPol
localId="1"
maxSrgbLabel="32000"
minSrgbLabel="16000"
/>
</mplsLabelPol>
<!-- Tag_2 インフラ テナントでのデフォルト インターフェイスの構成 -->
<mplsIfPol
name="default"
/>
<!-- Tag_3 DC PE ロケーション 2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.103.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-103"
>
<l3extLoopBackIfP addr="20.204.103.1"
>
<mplsNodeSidP
loopbackAddr="20.204.103.1"
sidoffset="45"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.104.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-104"
>
<l3extLoopBackIfP addr="20.204.104.1"
>
<mplsNodeSidP
loopbackAddr="20.204.104.1"
sidoffset="46"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.51.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/18]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.51.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.53.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.53.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.52.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/14]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.52.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.54.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.54.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.2"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.1"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId = "30.204.105.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-105"
>
<l3extLoopBackIfP addr="20.204.105.1"
>
<mplsNodeSidP
loopbackAddr="20.204.105.1"
sidoffset="47"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.106.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-106"
>
<l3extLoopBackIfP addr="20.204.106.1"
>
<mplsNodeSidP
loopbackAddr="20.204.106.1"
sidoffset="48"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.63.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.63.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.62.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.62.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.64.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.64.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.61.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.61.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.7"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
</fvTenant>
</imdata>
基本ユーザー テナント設定
同じ場所に INFRA テナントへのリンクを追加するため、マルチホーミングのユーザーテナントの構成に変更はありません。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<!-- 必要に応じてテナントの名前を指定します -->
<fvTenant descr="Tenant with Basic SR MPLS Handoff between 2-1 and 2-1-2-1"
dn="uni/tn-TENANT-BASIC"
name="TENANT-BASIC"
>
<!-- Tag_1 ユーザー L3out ルート制御構成 -->
<rtctrlSubjP
name="all"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="100.0.0.0/8"
toPfxLen="0"
/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="::/0"
toPfxLen="0"
/>
</rtctrlSubjP>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<!-- Tag_2 DC PE ロケーション 2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2121"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106/instP-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_3 DC PE ロケーション 2-1-2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_21"
/>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-MPLS-TENANT-L3OUT-2105/instP-LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2121"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_5 DC PE ロケーション 2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_21"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_6 DC PE ロケーション 2-1 に対するユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2105"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:5::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_21"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_7 DC PE ロケーション 2-1-2-1 へのユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2106"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:6::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2121"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_8 DC PE ロケーション 2-1 に対するアプリケーション プロファイルの構成 -->
<fvAp
name="LOCATION-2-1-2-1-AP2106"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG106"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-105/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2106"
/>
</fvAEPg>
</fvAp>
<!-- Tag_9 DC PE ロケーション 2-1-2-1 へのアプリケーション プロファイル構成 -->
<fvAp
name="LOCATION-2-1-AP2105"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG105"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="immediate"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-101/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="immediate"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2105"
/>
</fvAEPg>
</fvAp>
</fvTenant>
</imdata>
Verifications
XR: Site of Origin setting
PE 2 では、PE6 と PE7 から VPN ユニキャスト ルートを受信すると、パスにリモート PE によって設定された SoO が含まれます(1:6)。PE1/PE2 に接続されているサイトは異なる SoO を使用しているため、PE2 は新しい SoO の値を 987654321:5 に設定して BL にルートをアドバタイズします。
RP/0/RSP0/CPU0:PE02#show bgp vpnv4 uni vrf TENANT_BASIC 100.21.6.0
Fri Sep 4 12:33:17.060 UTC
BGP routing table entry for 100.21.6.0/24, Route Distinguisher: 1:2110002
Versions:
Process bRIB/RIB SendTblVer
Speaker 287129 287129
Local Label: 32068
Last Modified: Sep 3 16:01:33.144 for 20:31:44
Paths: (2 available, best #1)
Advertised to update-groups (with more than one peer):
0.2
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.2
987654321
201.201.201.6 (metric 20150) from 202.202.202.102 (201.201.201.6)
Received Label 32074
Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 287128
Extended community: SoO:1:6 RT:1:2110005
Originator: 201.201.201.6, Cluster list: 0.0.0.2
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110006
Path #2: Received by speaker 0
Not advertised to any peer
987654321
201.201.201.7 (metric 20150) from 202.202.202.102 (201.201.201.7)
Received Label 32109
Origin incomplete, metric 0, localpref 100, valid, internal, add-path, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 2, version 287129
Extended community: SoO:1:6 RT:1:2110005
Originator: 201.201.201.7, Cluster list: 0.0.0.2, 0.0.0.1
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110007
RP/0/RSP0/CPU0:PE02#show bgp vpnv4 unicast advertised neighbor 20.204.103.1 | be 1:2110002
Fri Sep 4 12:31:39.918 UTC
Route Distinguisher: 1:2110002
100.21.6.0/24 is advertised to 20.204.103.1
Path info:
neighbor: 202.202.202.102 neighbor router id: 201.201.201.6
valid internal best import-candidate imported reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 287128
Attributes after inbound policy was applied:
next hop: 201.201.201.6
MET ORG AS LOCAL EXTCOMM
origin: incomplete neighbor as: 987654321 metric: 0 local pref: 100
aspath: 987654321
extended community: SoO:1:6 RT:1:2110005
originator: 201.201.201.6 cluster list: 0.0.0.2
Attributes after outbound policy was applied:
next hop: 201.201.201.2
ORG AS LOCAL EXTCOMM
origin: incomplete neighbor as: 987654321 local pref: 100
aspath: 1 987654321
extended community: RT:1:2110005 SoO:987654321:5
PE2 では、ローカルに接続された ACI サイトから受信したルート 100.21.5.0/24 にも、SoO 値 1:5 でタグ付けされます。このプレフィックスに関連付けられた 2 番目のパスは PE1 から受信され、SoO 値 1:5 にもなります。これにより、それがベスト パスになった場合に PE2 が PE1 から BL にパスをアドバタイズすることを防ぎます。
RP/0/RSP0/CPU0:PE02#show bgp vpnv4 uni vrf TENANT_BASIC 100.21.5.0
Fri Sep 4 12:36:21.805 UTC
BGP routing table entry for 100.21.5.0/24, Route Distinguisher: 1:2110002
Versions:
Process bRIB/RIB SendTblVer
Speaker 292940 292940
Local Label: 32068
Last Modified: Sep 4 07:58:54.144 for 04:37:28
Paths: (3 available, best #1)
Advertised to update-groups (with more than one peer):
0.3
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.3
987654321
20.204.103.1 from 20.204.103.1 (30.204.103.1)
Received Label 949935
Origin incomplete, metric 0, localpref 100, valid, external, best, group-best, import-candidate, imported, reoriginated
Received Path ID 0, Local Path ID 1, version 292940
Extended community: SoO:1:5 Color:500 RT:1:2110000
EVPN Gateway Address : 0.0.0.0
Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 103:2392067
Path #2: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.3
987654321
20.204.104.1 from 20.204.104.1 (30.204.104.1)
Received Label 949935
Origin incomplete, metric 0, localpref 100, valid, external, add-path, import-candidate, imported, reoriginated
Received Path ID 0, Local Path ID 5, version 292940
Extended community: SoO:1:5 RT:1:2110000
EVPN Gateway Address : 0.0.0.0
Source AFI: L2VPN EVPN, Source VRF: default, Source Route Distinguisher: 104:2392067
Path #3: Received by speaker 0
Not advertised to any peer
987654321
201.201.201.1 (metric 1000) from 202.202.202.102 (201.201.201.1)
Received Label 32062
Origin incomplete, metric 0, localpref 100, valid, internal, add-path, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 4, version 292895
Extended community: SoO:1:5 RT:1:2110005
Originator: 201.201.201.1, Cluster list: 0.0.0.2, 0.0.0.1
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110001
受信され、アドバタイズされたACIルート
以下に示すように、leaf3 にはプレフィックスを受信する 2 つの BGP-LU と EVPN のセッションがあります。
ifav204-leaf3# show bgp ipv4 labeled-unicast summary vrf overlay-1
BGP summary information for VRF overlay-1, address family IPv4 Label Unicast
BGP router identifier 30.204.103.1, local AS number 987654321
BGP table version is 13, IPv4 Label Unicast config peers 2, capable peers 2
3 network entries and 3 paths using 612 bytes of memory
BGP attribute entries [1/160], BGP AS path entries [0/0]
BGP community entries [5/160], BGP clusterlist entries [2/8]
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
120.1.51.2 4 1 652 656 13 0 0 00:17:36 1
120.1.53.2 4 1 686 687 13 0 0 11:22:21 1
ifav204-leaf3# show bgp l2vpn evpn summary vrf overlay-1
BGP summary information for VRF overlay-1, address family L2VPN EVPN
BGP router identifier 30.204.103.1, local AS number 987654321
BGP table version is 2777, L2VPN EVPN config peers 2, capable peers 2
401 network entries and 520 paths using 65452 bytes of memory
BGP attribute entries [82/13120], BGP AS path entries [0/0]
BGP community entries [5/160], BGP clusterlist entries [2/8]
Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd
201.201.201.1 4 1 1467 722 2777 0 0 00:17:31 119
201.201.201.2 4 1 1302 744 2777 0 0 11:22:23 119
ifav204-leaf3#
BD サブネットが両方の EVPN ピア(PE01 と PE02)にアドバタイズされることがわかります。プレフィックス 100.21.5.0/24 は、201.201.201.1(PE01)と 201.201.201.2(PE2)の両方にアドバタイズされます。
ifav204-leaf3# show bgp l2vpn evpn 100.21.5.0 vrf overlay-1
Route Distinguisher: 103:2392067 (L3VNI 2392067)
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.5.0]:[0.0.0.0]/224, version 2786 dest ptr 0xacfdf810
Paths: (1 available, best #1)
Flags: (0x00000a 00000000) on xmit-list, is not in rib/evpn
Multipath: eBGP iBGP
Advertised path-id 1
Path type: local 0x4000008c 0x0 ref 0 adv path ref 1, path is valid, is best path
AS-Path: NONE, path locally originated
0.0.0.0 (metric 0) from 0.0.0.0 (30.204.103.1)
Origin incomplete, MED 0, localpref 100, weight 32768 tag 4294966001, propagate 0
Received Label 949935
Extcommunity:
RT:1:2110005
VNID:2392067
Path-id 1 advertised to peers:
201.201.201.1 201.201.201.2
リーフは、2 つの DC-PE からサブネット 100.21.6.0/24(サイト 2-1-2-1 にあります)を受信します。
ifav204-leaf3# show bgp l2vpn evpn 100.21.6.0 vrf overlay-1
Route Distinguisher: 1:2110001
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 2782 dest ptr 0xacfd41fe
Paths: (1 available, best #1)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW, is locked
Multipath: eBGP iBGP
Advertised path-id 1
Path type: external 0x40000028 0x0 ref 2 adv path ref 1, path is valid, is best path
Imported to 2 destination(s)
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.1 (metric 0) from 201.201.201.1 (201.201.201.1)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32065
Extcommunity:
RT:1:2110005
SOO:987654321:5
Path-id 1 not advertised to any peer
Route Distinguisher: 1:2110002
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 2778 dest ptr 0xacfd07fa
Paths: (1 available, best #1)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW, is locked
Multipath: eBGP iBGP
Advertised path-id 1
Path type: external 0x40000028 0x0 ref 2 adv path ref 1, path is valid, is best path
Imported to 2 destination(s)
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.2 (metric 0) from 201.201.201.2 (201.201.201.2)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32068
Extcommunity:
RT:1:2110005
SOO:987654321:5
Path-id 1 not advertised to any peer
ルート識別子:103:2392067(L3VNI 2392067)
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 2784 dest ptr 0xacfd21e6
Paths: (2 available, best #2)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW
Multipath: eBGP iBGP
Path type: external 0xc0020028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path, multipath
Imported from 1:2110001:[5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/120
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.1 (metric 0) from 201.201.201.1 (201.201.201.1)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32065
Extcommunity:
RT:1:2110005
SOO:987654321:5
Advertised path-id 1
Path type: external 0xc0000028 0x0 ref 0 adv path ref 1, path is valid, is best path
Imported from 1:2110002:[5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/120
AS-Path: 1 987654321 , path sourced external to AS
201.201.201.2 (metric 0) from 201.201.201.2 (201.201.201.2)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received label 32068
Extcommunity:
RT:1:2110005
SOO:987654321:5
Path-id 1 not advertised to any peer
Load Balancing Between DC-PE and BL/RL
前述のように、BGP マルチパスをイネーブルにすると、複数の BGP パス間でトラフィックのロード バランシングが可能になります。
説明されている例では、DC-PE ごとに 1 つのパスがあります。ただし、RL/BL と DC-PE の間に複数の並列 IP リンクを設定し、BGP マルチパスを作成することも完全に問題ありません。複数のパラレル IP リンクを使用する場合、各リンクに対してインターフェイス タイプの組み合わせ(物理インターフェイス、サブインターフェイス、ポート チャネル)を使用できます。IP リンクごとに 1 つの BGP-LU セッションが存在します。
簡単に行うため、DC-PE と BL/RL の間でバンドル(ポート チャネル)を使用することもできます。この場合、バンドルインターフェイスごとに 1 つの BGP-LU セッションが存在します。

ロード バランシング(Load Balancing)
同じ DC-PE に接続されたマルチホーミングおよび複数の ACI サイトによる SR ハンドオフ
設計

ACI ファブリックと、同じ DC-PE に接続された複数のリモート リーフ間の基本通信
上記の設計は、同じ DC-PE のペアに接続されている 2 つのリモート リーフ サイトがあることを除いて、以前の設計と同じです。2 つのリモート リーフ サイト間で SR/MPLS ハンドオフを使用するには、各サイトが異なる VRF を使用する必要があります。VRF が 2 つのリモート リーフ サイトにまたがる場合は、VXLAN パスが使用されます。
この設計では、DC-PE で特別な機能をアクティブにして、ある ACI サイトから別の ACI サイトへの EVPN ルートの伝達を可能にする必要があります。
この例では、同じ DC-PE に接続された 2 つのリモート リーフ スイッチを使用していますが、同様の設計と構成が、同じ DC-PE のペアに接続されている Cisco ACI ファブリックの 2 つの POD でテストされており、複数の Cisco ACI ファブリックにも適用されます同じ DC-PE のペアに接続します(図 14 に示しています)。

複数のポッドと同じ DC-PE に接続された複数のファブリック
構成
PE7 DC-PE の構成
念のため、EVPN セッション パラメータの設定には EVPN ネイバー グループ「ACI-site-EVPN」が使用されます。複数のサイト/ポッドが同じ PE に接続されている場合は、「next-hop-unchanged」ノブを設定する必要があります。EVPN ルートが PE6 または PE7 のサイト 6 から来る場合、BGP ネクストホップを変更せずにサイト 7 に伝達されます(逆の場合も同様)。XR DC-PE で EVPN ネクストホップおよび MPLS ラベルを変更すること(ASBR オプション B の動作)は、現在サポートされていません。
router bgp 1
neighbor-group ACI-site-EVPN
remote-as 987654321
bfd fast-detect
bfd multiplier 3
bfd minimum-interval 50
ebgp-multihop 255
update-source Loopback0
address-family l2vpn evpn
import stitching-rt re-originate
allowas-in 5
advertise vpnv4 unicast re-originated stitching-rt
advertise vpnv6 unicast re-originated stitching-rt
next-hop-unchanged
!
!
したがって、サイト 7 からのリモート リーフは、サイト 6 にあるリモート リーフからループバック アドレスへの到達可能性を持つ必要があります。これは、サイト 6 からサイト 7 へ、およびその逆に BGP LU プレフィックスの伝達を許可することによって実現されます。BGP コミュニティ(1:52121 および 1:52122)は、各 ACI サイトからの LU ルートをマークし、適切なフィルタリングとループ防止のために使用されます。
ルートポリシーの SET-CT-FROM-ACI-2-1-2-1 および SET-CT-FROM-ACI-2-1-2-2 は、それぞれサイト 6 と7、コミュニティはそれぞれ 1:52121 と 1:52122 を設定します。
ルート ポリシー ADVERTISE-LU-TO-ACI-2-1-2-1 および ADVERTISE-LU-TO -2-1-2-2 は、それぞれサイト 6 および 7 への BGP LU セッションのアウトバウンド ポリシーとして使用され、それらは次のように動作します。
● ADVERTISE-LU-TO-ACI-2-1-2-1 (サイト6に使用) の場合: ローカルループバックとコミュニティ 1:52122 のルート (サイト 7 からのルート) を承認し、その他のすべてをドロップします。
● ADVERTISE-LU-TO-ACI-2-1-2-2 (サイト7に使用) の場合: ローカルループバックとコミュニティ1:52121のルート(サイト6からのルート)を承認し、他のすべてをドロップします。
最後に、BGP-LU セッションでは、同じ AS 番号を使用する可能性があるさまざまな ACI サイトからの LU ルートを交換する必要があるため、「as-override」キーワードも必要です。この例では、2 つのリモート リーフ サイトが同じファブリックの一部であるため、同じ AS 番号を使用しています。
router bgp 1
neighbor-group ACI-site-LU
remote-as 987654321
bfd fast-detect
bfd multiplier 3
bfd minimum-interval 50
address-family ipv4 labeled-unicast
maximum-prefix 10 80 warning-only
as-override
!
!
neighbor 120.1.61.1
use neighbor-group ACI-site-LU
address-family ipv4 labeled-unicast
route-policy SET-CT-FROM-ACI-2-1-2-1 in
route-policy ADVERTISE-LU-TO-ACI-2-1-2-1 out
!
!
neighbor 120.1.64.1
use neighbor-group ACI-site-LU
address-family ipv4 labeled-unicast
route-policy SET-CT-FROM-ACI-2-1-2-1 in
route-policy ADVERTISE-LU-TO-ACI-2-1-2-1 out
!
!
neighbor 120.1.73.1
use neighbor-group ACI-site-LU
address-family ipv4 labeled-unicast
route-policy SET-CT-FROM-ACI-2-1-2-2 in
route-policy ADVERTISE-LU-TO-ACI-2-1-2-2 out
!
!
neighbor 120.1.74.1
use neighbor-group ACI-site-LU
address-family ipv4 labeled-unicast
route-policy SET-CT-FROM-ACI-2-1-2-2 in
route-policy ADVERTISE-LU-TO-ACI-2-1-2-2 out
!
!
!
route-policy SET-CT-FROM-ACI-2-1-2-1
set community (1:52121)
end-policy
!
route-policy ADVERTISE-LU-TO-ACI-2-1-2-1
if destination in PFXSET-OWN-LO0 then
pass
elseif community matches-any (1:52122) then
pass
else
drop
endif
end-policy
!
route-policy SET-CT-FROM-ACI-2-1-2-2
set community (1:52122)
end-policy
!
route-policy ADVERTISE-LU-TO-ACI-2-1-2-2
if destination in PFXSET-OWN-LO0 then
pass
elseif community matches-any (1:52121) then
pass
else
drop
endif
end-policy
!
ACI の構成
インフラ テナントの構成
構成は、サイト 2-1-2-2 構成が追加されていることを除いて、以前のマルチホーミング ケースと同じです。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<fvTenant
dn="uni/tn-infra"
name="infra"
>
<!-- Tag_1 インフラ テナントでのデフォルト ラベル範囲の構成 -->
<mplsLabelPol
maxDynamicLabel="525286"
maxStaticLabel="0"
minDynamicLabel = "16"
minStaticLabel="0"
name="default"
>
<mplsSrgbLabelPol
localId="1"
maxSrgbLabel="32000"
minSrgbLabel="16000"
/>
</mplsLabelPol>
<!-- Tag_2 インフラ テナントでのデフォルト インターフェイスの構成 -->
<mplsIfPol
name="default"
/>
<!-- Tag_3 DC PE ロケーション 2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.103.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-103"
>
<l3extLoopBackIfP addr="20.204.103.1"
>
<mplsNodeSidP
loopbackAddr="20.204.103.1"
sidoffset="45"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.104.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-104"
>
<l3extLoopBackIfP addr="20.204.104.1"
>
<mplsNodeSidP
loopbackAddr="20.204.104.1"
sidoffset="46"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.51.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/18]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.51.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.53.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.53.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.52.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/14]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.52.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.54.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.54.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.2"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.1"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId = "30.204.105.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-105"
>
<l3extLoopBackIfP addr="20.204.105.1"
>
<mplsNodeSidP
loopbackAddr="20.204.105.1"
sidoffset="47"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.106.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-106"
>
<l3extLoopBackIfP addr="20.204.106.1"
>
<mplsNodeSidP
loopbackAddr="20.204.106.1"
sidoffset="48"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.63.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.63.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.62.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.62.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.64.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.64.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.61.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.61.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.7"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_5 DC PE ロケーション 2-1-2-2 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-2"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-2"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-2_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.107.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-107"
>
<l3extLoopBackIfP addr="20.204.107.1"
>
<mplsNodeSidP
loopbackAddr="20.204.107.1"
sidoffset="49"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.108.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-108"
>
<l3extLoopBackIfP addr="20.204.108.1"
>
<mplsNodeSidP
loopbackAddr="20.204.108.1"
sidoffset="50"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-2_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.73.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-107/pathep-[PC2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.73.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="send-com,send-ext-com"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.71.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-107/pathep-[PC1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.71.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.72.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-108/pathep-[PC1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.72.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.74.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-108/pathep-[PC2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.74.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="send-com,send-ext-com"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.7"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-2_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
</fvTenant>
</imdata>
基本ユーザー テナント設定
以下のユーザテナント設定には、新しいサイト 2-1-2-2 が含まれています。以前の使用例と比較して、テナント構成の設定方法に変更はありません。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<!-- 必要に応じてテナントの名前を指定します -->
<fvTenant descr="Tenant with Basic SR MPLS Handoff between 2-1 and 2-1-2-1"
dn="uni/tn-TENANT-BASIC"
name="TENANT-BASIC"
>
<!-- Tag_1 ユーザー L3out ルート制御構成 -->
<rtctrlSubjP
name="all"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="100.0.0.0/8"
toPfxLen="0"
/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="::/0"
toPfxLen="0"
/>
</rtctrlSubjP>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<!-- Tag_2 DC PE ロケーション 2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2121"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106/instP-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_3 DC PE ロケーション 2-1-2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_21"
/>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-MPLS-TENANT-L3OUT-2105/instP-LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag DC PE ロケーション 2-1-2-2 に対するユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2122"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-2"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107/instP-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2107-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2121"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_5 DC PE ロケーション 2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_21"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2122"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_6 DC PE ロケーション 2-1 に対するユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2105"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:5::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_21"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_7 DC PE ロケーション 2-1-2-1 へのユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2106"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:6::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2121"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- TAG DC PE ロケーション 2-1-2-2に対応するユーザーBD設定 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2107"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip = 100.21.7.254/24
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip = "2001:100:21:7::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2122"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_8 DC PE ロケーション 2-1 に対するアプリケーション プロファイルの構成 -->
<fvAp
name="LOCATION-2-1-2-1-AP2106"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG106"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-105/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2106"
/>
</fvAEPg>
</fvAp>
<!-- Tag_9 DC PE ロケーション 2-1-2-1 へのアプリケーション プロファイル構成 -->
<fvAp
name="LOCATION-2-1-AP2105"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG105"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="immediate"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-101/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="immediate"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2105"
/>
</fvAEPg>
</fvAp>
<!-- Tag DC PE ロケーション 2-1-2-2 に向かうアプリケーション プロファイル設定 -->
<fvAp
name="LOCATION-2-1-2-2-AP2107"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG107"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-107/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2107"
/>
</fvAEPg>
</fvAp>
</fvTenant>
</imdata>
Verifications
同じ DC-PE に接続されているサイト 2-1-2-1 からルートを正しく受信することをリーフ 7(サイト 2-1-2-2 にあります)で確認できます。
ifav204-leaf7# show bgp l2vpn evpn 100.21.6.0 vrf overlay-1
Route Distinguisher: 105:2686985
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 42358 dest ptr 0xac8755ba
Paths: (2 available, best #2)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW, is locked
Multipath: eBGP iBGP
Path type: external 0x40000028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path
AS-Path: 1 987654321 , path sourced external to AS
20.204.105.1 (metric 0) from 201.201.201.6 (201.201.201.6)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Advertised path-id 1
Path type: external 0x40000028 0x0 ref 2 adv path ref 1, path is valid, is best path
Imported to 2 destination(s)
AS-Path: 1 987654321 , path sourced external to AS
20.204.105.1 (metric 0) from 201.201.201.7 (201.201.201.7)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Path-id 1 not advertised to any peer
Route Distinguisher: 106:2686985
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 42372 dest ptr 0xac84b460
Paths: (2 available, best #2)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW, is locked
Multipath: eBGP iBGP
Path type: external 0x40000028 0x0 ref 0 adv path ref 0, path is valid, not best reason: Router Id
AS-Path: 1 987654321 , path sourced external to AS
20.204.106.1 (metric 0) from 201.201.201.7 (201.201.201.7)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Advertised path-id 1
Path type: external 0x40000028 0x0 ref 2 adv path ref 1, path is valid, is best path
Imported to 2 destination(s)
AS-Path: 1 987654321 , path sourced external to AS
20.204.106.1 (metric 0) from 201.201.201.6 (201.201.201.6)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Path-id 1 not advertised to any peer
Route Distinguisher: 107:2392069 (L3VNI 2392069)
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/224, version 42375 dest ptr 0xac875794
Paths: (2 available, best #2)
Flags: (0x000002 00000000) on xmit-list, is not in rib/evpn, is not in HW
Multipath: eBGP iBGP
Path type: external 0xc0020028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path, multipath
Imported from 106:2686985:[5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/120
AS-Path: 1 987654321 , path sourced external to AS
20.204.106.1 (metric 0) from 201.201.201.6 (201.201.201.6)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Advertised path-id 1
Path type: external 0xc0000028 0x0 ref 0 adv path ref 1, path is valid, is best path
Imported from 105:2686985:[5]:[0]:[0]:[24]:[100.21.6.0]:[0.0.0.0]/120
AS-Path: 1 987654321 , path sourced external to AS
20.204.105.1 (metric 0) from 201.201.201.7 (201.201.201.7)
Origin incomplete, MED not set, localpref 100, weight 0 tag 4294966257, propagate 0
Received Label 948579
Extcommunity:
RT:1:2110006
SOO:987654321:7
COLOR:500
Path-id 1 not advertised to any peer
プレフィックス 100.21.6.0/24 は、2 つのパス、リーフ 5 から 1 つと、リーフ 6 から 1 つ(両方ともサイト 2-1-2-1 にあります))により正しく受信されます。予想どおり、複数のサイトが接続されている場合、DC-PE は EVPN ルートのネクストホップを変更しません。
リーフには、leaf5 と leaf6 のループバックに到達するための BGP-LU ルートがあります。
ifav204-leaf7# show bgp ipv4 labeled-unicast 20.204.105.1/32 vrf overlay-1
BGP routing table information for VRF overlay-1, address family IPv4 Label Unicast
BGP routing table entry for 20.204.105.1/32, version 55 dest ptr 0xa41fc40c
Paths: (2 available, best #2)
Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW
label af: version 62, (0x100002) on xmit-list
Path type: external 0x40020028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path, multipath
AS-Path: 1 1 , path sourced external to AS
120.1.73.2 (metric 0) from 120.1.73.2 (201.201.201.7)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 16047
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 47
Advertised path-id 1, Label AF advertised path-id 1
Path type: external 0x40000028 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: 1 1 , path sourced external to AS
120.1.71.2 (metric 0) from 120.1.71.2 (201.201.201.6)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 16047
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 47
Path-id 1 not advertised to any peer
Label AF advertisement
Path-id 1 not advertised to any peer
ifav204-leaf7# show bgp ipv4 labeled-unicast 20.204.106.1
BGP routing table information for VRF overlay-1, address family IPv4 Label Unicast
BGP routing table entry for 20.204.106.1/32, version 57 dest ptr 0xa41fc490
Paths: (2 available, best #2)
Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW
label af: version 64, (0x100002) on xmit-list
Path type: external 0x40020028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path, multipath
AS-Path: 1 1 , path sourced external to AS
120.1.73.2 (metric 0) from 120.1.73.2 (201.201.201.7)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 16048
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 48
Advertised path-id 1, Label AF advertised path-id 1
Path type: external 0x40000028 0x0 ref 0 adv path ref 2, path is valid, is best path
AS-Path: 1 1 , path sourced external to AS
120.1.71.2 (metric 0) from 120.1.71.2 (201.201.201.6)
Origin IGP, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 16048
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 48
Path-id 1 not advertised to any peer
Label AF advertisement
Path-id 1 not advertised to any peer
宛先ごとに異なるトランスポート制約を使用する SR/MPLS ハンドオフ
設計


宛先ごとのトラフィック ステアリングによる SR/MPLS ハンドオフ
図 16 では、Cisco ACI ファブリックは、それぞれベスト エフォートのトランスポート サービスと低遅延のトランスポート サービスを必要とする 2 つのサービス A と D をホストします。この設計では、Cisco ACI ファブリックが(IP プレフィックスごとに)各接続先に関連付けられたサービス レベルを SP コアに信号でシグナリングするため、SP コアの各入力 PE はコア内の適切な転送パスを選択します。ACI からのシグナリングを使用して、データセンターはコアネットワーク内で使用するトランスポートスライスを制御できます。
サービスの各レベルは、BGP カラーコミュニティに関連付けられます。当社の設計では、カラー 500 はベストエフォートのトランスポートサービスに関連付けられ、カラー 200 は低遅延のトランスポートサービスに関連付けられます。
Cisco ACI ファブリックは、サービス A に関連付けられたプレフィックス 10.1.5.0/24 を BGP カラー 500 でアドバタイズし、サービス D に関連付けられたプレフィックス 20.1.5.0/24 を BGP カラー 200 でアドバタイズします。
BGP カラーは、接続された DC-PE によって SP コアに透過的に伝送され、リモート PE(PE6 や PE3 など)はカラーを持つルートを受信すると、自動化されたステアリング(AS)またはオン デマンド ネクストホップ(ODN)を活用します。 )は、宛先へのトラフィックを適切なトランスポートパスに自動的に誘導する機能を提供します。
構成
ACI での BGP ルートのカラーリング
サイト 2-1 の VRF エクスポート ポリシーは、次のように変更された BGP カラー コミュニティのセットです。
● 色 200 をプレフィックス101.21.5.254/24 に設定する
● それ以外の場合は色 500 を設定
ACI カラー コミュニティの構成スニペット:
<!-- color 500 policy -->
<rtctrlAttrP annotation=""
descr=""
name="color-500"
nameAlias=""
userdom=":all:">
<rtctrlSetComm annotation=""
community="extended:color:500"
descr=""
name=""
nameAlias=""
setCriteria="append"
type="community"
userdom=":all:"/>
</rtctrlAttrP>
ルートのカラーリングを含む ACI ユーザ テナントの設定:
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<!-- 必要に応じてテナントの名前を指定します -->
<fvTenant descr="Tenant with Basic SR MPLS Handoff between 2-1 and 2-1-2-1"
dn="uni/tn-TENANT-BASIC"
name="TENANT-BASIC"
>
<!-- Tag_1 ユーザー L3out ルート制御構成 -->
<rtctrlSubjP
name="all"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="100.0.0.0/8"
toPfxLen="0"
/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="101.0.0.0/8"
toPfxLen="0"
userdom=":all:"/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="::/0"
toPfxLen="0"
/>
</rtctrlSubjP>
<!-- プレフィックス サブネットごとのカラーの設定 -->
<rtctrlSubjP
name="Granular-Rule"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="101.21.5.254/24"
toPfxLen="0"
/>
</rtctrlSubjP>
<!-- export policy for site21 -->
<rtctrlProfile
name="export-21"
type="combinable"
userdom=":all:">
<!-- サイト 2-1 からのすべてのルートでカラー 500 -->
<rtctrlCtxP action="permit"
name="export-500"
order="0"
userdom=":all:">
<rtctrlScope
userdom=":all:">
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color-500"
userdom="all"/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
userdom=":all:"/>
</rtctrlCtxP>
<!-- site2-1 からの特定のサブネット ルートに使用されるカラー 200 -->
<rtctrlCtxP action="permit"
name="export-200"
order="0"
userdom=":all:">
<rtctrlScope
userdom=":all:">
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color-200"
userdom="all"/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="Granular-Rule"
userdom=":all:"/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<!--カラー 200 ポリシー -->
<rtctrlAttrP
name="color-200"
userdom=":all:">
<rtctrlSetComm
community="extended:color:200"
setCriteria="append"
type="community"
userdom=":all:"/>
</rtctrlAttrP>
<!--カラー 500 ポリシー -->
<rtctrlAttrP
name="color-500"
userdom=":all:">
<rtctrlSetComm
community="extended:color:500"
setCriteria="append"
type="community"
userdom=":all:"/>
</rtctrlAttrP>
<!-- Tag_2 DC PE ロケーション 2-1-2-1 へのユーザー L3out 構成
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2121"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106/instP-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_3 DC PE ロケーション 2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_21"
/>
<!-- オプションのインポートポリシー -->
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="export-21"
type="combinable"
userdom=":all:">
<rtctrlCtxP action="permit"
name="export-500"
order="0"
userdom=":all:">
<rtctrlScope
userdom=":all:">
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color-500"
userdom="all"/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
userdom=":all:"/>
</rtctrlCtxP>
<rtctrlCtxP action="permit"
name="export-200"
order="1"
userdom=":all:">
<rtctrlScope
userdom=":all:">
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color-200"
userdom="all"/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="Granular-Rule"
userdom=":all:"/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-export-21"
userdom=":all:"/>
<l3extRsLblToProfile
direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToInstP
tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-MPLS-TENANT-L3OUT-2105/instP-LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag DC PE ロケーション 2-1-2-2 に対するユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2122"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-2"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107/instP-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2121"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_5 DC PE ロケーション 2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_21"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2122"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_6 DC PE ロケーション 2-1 に対するユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2105"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:5::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_21"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_7 DC PE ロケーション 2-1-2-1 へのユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2106"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:6::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2121"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- TAG DC PE ロケーション 2-1-2-2に対応するユーザーBD設定 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2107"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip = 100.21.7.254/24
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.7.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip = "2001:100:21:7::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2122"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_8 DC PE ロケーション 2-1 に対するアプリケーション プロファイルの構成 -->
<fvAp
name="LOCATION-2-1-2-1-AP2106"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG106"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-105/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2106"
/>
</fvAEPg>
</fvAp>
<!-- Tag_9 DC PE ロケーション 2-1-2-1 へのアプリケーション プロファイル構成 -->
<fvAp
name="LOCATION-2-1-AP2105"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG105"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="immediate"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-101/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="immediate"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2105"
/>
</fvAEPg>
</fvAp>
<!-- Tag DC PE ロケーション 2-1-2-2 に向かうアプリケーション プロファイル設定 -->
<fvAp
name="LOCATION-2-1-2-2-AP2107"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG107"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-107/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2107"
/>
</fvAEPg>
</fvAp>
</fvTenant>
</imdata>
XR の ODN テンプレート(PE6 サンプル設定)
自動ステアリングまたは ODN を使用する前に、セグメントルーティングを実装する必要があります。次の設定では、セグメント ルーティング基本設定テンプレートは提供されませんが、ACI サイトへのトラフィックを制御するために使用される ODN ポリシーのみが提供されます。
segment-routing
traffic-eng
on-demand color 200
ダイナミック
pcep
!
metric
type latency
!
!
!
on-demand color 500
ダイナミック
pcep
!
metric
type igp
!
!
!
pcc
source-address ipv4 201.201.201.6
pce address ipv4 202.202.202.104
precedence 100
!
pce address ipv4 202.202.202.105
precedence 200
!
!
!
この構成は、次の 2 つの部分に分かれています。
● ODN ポリシー。設計で使用している 2 つの ODN ポリシーは、PCE の計算を活用しています。
● PCE サーバーの設定。この設定では、PE2 はプライマリおよびバックアップ PCE を使用しています。
各サービス タイプに、関連付けられた BGP カラー コミュニティ値があります。この例では、低遅延にカラー 200 を使用し、ベストエフォートに色 500 を使用します。
PCE ベースの計算の使用は必須ではありませんが、マルチドメインシナリオでは必須になることがよくあります。
シスコの設計では、カラー 200 は、IGP でアドバタイズされた遅延メトリックに基づくパス計算に関連付けられています。カラー 500 は、ベスト エフォート ルーティングにマップする通常の IGP メトリックに基づくパス計算に関連付けられています。通常の IGP メトリックを使用するベスト エフォート トラフィックにはカラー 500 を使用していますが、これは必須ではありません。VPN ルートはカラーなしでアドバタイズされる可能性があり、通常の IGP パスを使用します。ただし、このような場合、入力 PE が出力 PE に到達できる必要があります(IGP または BGP-LU を使用)。
ODN ポリシーで定義される制約は、この設定で使用されるものに限定されません。たとえば、別の検証済みの例として、一部の重要なアプリケーションフローの低遅延で保護されたパスに関連付けられたカラーを使用できます。このようなシナリオでは、SP コアの IGP リンクには、リンクが非セキュアであることを示す特定のアフィニティ ビットがタグ付けされます(これは、たとえば、信頼されていないキャリアによって伝送されるコア MPLS リンクの可能性があります)。BGP カラー 600 に関連付けられている ODN ポリシーは、遅延メトリックを使用し、パス計算からすべての非セキュアリンクを除外するように設定されます。
低遅延のセキュアなルーティング
on-demand color 600
dynamic
metric
type latency
!
affinity exclude-any
name NON_SECURE
!
!
!
affinity-map
name NON_SECURE bit-position 3
!
Verifications
ローカル ルートへのACIカラーアタッチメント
BGP カラーがテナントのローカル ルートに関連付けられた EVPN ルートに正しくアタッチされていることを確認できます。
ifav204-leaf3# show bgp l2vpn evpn 101.21.5.0 vrf TENANT-BASIC:TENANT_BASIC_21
Route Distinguisher: 103:2785286 (L3VNI 2785286)
BGP routing table entry for [5]:[0]:[0]:[24]:[101.21.5.0]:[0.0.0.0]/224, version 86140 dest ptr 0xa4cfba10
Paths: (1 available, best #1)
Flags: (0x00000a 00000000) on xmit-list, is not in rib/evpn
Multipath: eBGP iBGP
Advertised path-id 1
Path type: local 0x4000008c 0x0 ref 0 adv path ref 1, path is valid, is best path
AS-Path: NONE, path locally originated
0.0.0.0 (metric 0) from 0.0.0.0 (30.204.103.1)
Origin incomplete, MED 0, localpref 100, weight 32768 tag 4294966001, propagate 0
Received label 949926
Extcommunity:
RT:1:2110005
COLOR:200
VNID:2785286
Path-id 1 advertised to peers:
201.201.201.1 201.201.201.2
ifav204-leaf3# show bgp l2vpn evpn 100.21.5.0 vrf TENANT-BASIC:TENANT_BASIC_21
Route Distinguisher: 103:2785286 (L3VNI 2785286)
BGP routing table entry for [5]:[0]:[0]:[24]:[100.21.5.0]:[0.0.0.0]/224, version 86141 dest ptr 0xa4cec0b8
Paths: (1 available, best #1)
Flags: (0x00000a 00000000) on xmit-list, is not in rib/evpn
Multipath: eBGP iBGP
Advertised path-id 1
Path type: local 0x4000008c 0x0 ref 0 adv path ref 1, path is valid, is best path
AS-Path: NONE, path locally originated
0.0.0.0 (metric 0) from 0.0.0.0 (30.204.103.1)
Origin incomplete, MED 0, localpref 100, weight 32768 tag 4294966001, propagate 0
Received label 949926
Extcommunity:
RT:1:2110005
COLOR:500
VNID:2785286
Path-id 1 advertised to peers:
201.201.201.1 201.201.201.2
リモート DC-PE 処理受信カラー
PE6 は BGP カラーを受信し、関連付けられた ODN テンプレートを適用します。
結果として、プレフィックス 100.21.5.0/24、PE6 は、通常の IGP ルーティング(ベストエフォート)に関連付けられた PE2 と PE1 にそれぞれ 2 つの SR ポリシーをインスタンス化しています。binding-sid 値は、使用された SR-policy に関する詳細を確認するために使用できます。
RP/0/RP0/CPU0:PE06#show bgp vpnv4 un vrf TENANT_BASIC 100.21.5.0
Mon Sep 28 10:05:10.293 UTC
BGP routing table entry for 100.21.5.0/24, Route Distinguisher: 1:2110006
Versions:
Process bRIB/RIB SendTblVer
Speaker 112165 112165
Local Label: 32266
Last Modified: Sep 22 14:11:06.642 for 5d19h
Paths: (2 available, best #1)
Advertised to update-groups (with more than one peer):
0.1 0.6
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.1 0.6
987654321
201.201.201.1 C:500 (bsid:32171) (metric 20100) from 202.202.202.102 (201.201.201.1)
Received Label 32211
Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 111836
Extended community: SoO:1:5 Color:500 RT:1:2110006 RT:1:2110007
Originator: 201.201.201.1, Cluster list: 0.0.0.2, 0.0.0.1
SR policy color 500, up, registered, bsid 32171, if-handle 0x200040e4
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110001
Path #2: Received by speaker 0
Not advertised to any peer
987654321
201.201.201.2 C:500 (bsid:32110) (metric 10020149) from 202.202.202.102 (201.201.201.2)
Received Label 32639
Origin incomplete, metric 0, localpref 100, valid, internal, add-path, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 2, version 111836
Extended community: SoO:1:5 Color:500 RT:1:2110006 RT:1:2110007
Originator: 201.201.201.2, Cluster list: 0.0.0.2
SR policy color 500, up, registered, bsid 32110, if-handle 0x200040ec
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110002
RP/0/RP0/CPU0:PE06#show segment-routing traffic-eng policy binding-sid 32171
Mon Sep 28 10:08:27.035 UTC
SR-TE policy database
---------------------
Color: 500, End-point: 201.201.201.1
Name: srte_c_500_ep_201.201.201.1
Status:
Admin: up Operational: up for 5d19h (since Sep 22 14:11:06.761)
Candidate-paths:
Preference: 200 (BGP ODN) (shutdown)
Requested BSID: dynamic
Maximum SID Depth: 12
Dynamic (invalid)
Metric Type: IGP, Path Accumulated Metric: 0
Preference: 100 (BGP ODN) (active)
Requested BSID: dynamic
PCC info:
Symbolic name: bgp_c_500_ep_201.201.201.1_discr_100
PLSP-ID: 16
Maximum SID Depth: 12
Dynamic (pce 202.202.202.104) (valid)
Metric Type: IGP, Path Accumulated Metric: 20100
16001 [Prefix-SID, 201.201.201.1]
属性:
Binding SID: 32171
Forward Class: Not Configured
Steering labeled-services disabled: no
Steering BGP disabled: no
IPv6 caps enable: yes
RP/0/RP0/CPU0:PE06#show segment-routing traffic-eng policy binding-sid 32110
Mon Sep 28 10:09:10.104 UTC
SR-TE policy database
---------------------
Color: 500, End-point: 201.201.201.2
Name: srte_c_500_ep_201.201.201.2
Status:
Admin: up Operational: up for 3w0d (since Sep 6 17:56:47.905)
Candidate-paths:
Preference: 200 (BGP ODN) (shutdown)
Requested BSID: dynamic
Maximum SID Depth: 12
Dynamic (invalid)
Metric Type: IGP, Path Accumulated Metric: 0
Preference: 100 (BGP ODN) (active)
Requested BSID: dynamic
PCC info:
Symbolic name: bgp_c_500_ep_201.201.201.2_discr_100
PLSP-ID: 17
Maximum SID Depth: 12
Dynamic (pce 202.202.202.104) (valid)
Metric Type: IGP, Path Accumulated Metric: 20150
16002 [Prefix-SID, 201.201.201.2]
属性:
Binding SID: 32110
Forward Class: Not Configured
Steering labeled-services disabled: no
Steering BGP disabled: no
IPv6 caps enable: yes
プレフィックス 101.21.5.0/24 では、低遅延ルーティングに関連付けられた 2 つの SR ポリシーがインスタンス化されています。
RP/0/RP0/CPU0:PE06#show bgp vpnv4 un vrf TENANT_BASIC 101.21.5.0
Mon Sep 28 10:05:15.314 UTC
BGP routing table entry for 101.21.5.0/24, Route Distinguisher: 1:2110006
Versions:
Process bRIB/RIB SendTblVer
Speaker 112166 112166
Local Label: 32266
Last Modified: Sep 22 14:11:06.642 for 5d19h
Paths: (2 available, best #1)
Advertised to update-groups (with more than one peer):
0.1 0.6
Path #1: Received by speaker 0
Advertised to update-groups (with more than one peer):
0.1 0.6
987654321
201.201.201.1 C:200 (bsid:32174) (metric 20100) from 202.202.202.102 (201.201.201.1)
Received Label 32211
Origin incomplete, metric 0, localpref 100, valid, internal, best, group-best, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 1, version 111837
Extended community: SoO:1:5 Color:200 RT:1:2110006 RT:1:2110007
Originator: 201.201.201.1, Cluster list: 0.0.0.2, 0.0.0.1
SR policy color 200, up, registered, bsid 32174, if-handle 0x200041a4
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110001
Path #2: Received by speaker 0
Not advertised to any peer
987654321
201.201.201.2 C:200 (bsid:32125) (metric 10020149) from 202.202.202.102 (201.201.201.2)
Received Label 32639
Origin incomplete, metric 0, localpref 100, valid, internal, add-path, import-candidate, imported, reoriginated with stitching-rt
Received Path ID 1, Local Path ID 2, version 111837
Extended community: SoO:1:5 Color:200 RT:1:2110006 RT:1:2110007
Originator: 201.201.201.2, Cluster list: 0.0.0.2
SR policy color 200, up, registered, bsid 32125, if-handle 0x200041ac
Source AFI: VPNv4 Unicast, Source VRF: default, Source Route Distinguisher: 1:2110002
RP/0/RP0/CPU0:PE06#show segment-routing traffic-eng policy binding-sid 32174
Mon Sep 28 10:11:08.109 UTC
SR-TE policy database
---------------------
Color: 200, End-point: 201.201.201.1
Name: srte_c_200_ep_201.201.201.1
Status:
Admin: up Operational: up for 5d20h (since Sep 22 14:11:06.762)
Candidate-paths:
Preference: 200 (BGP ODN) (shutdown)
Requested BSID: dynamic
Maximum SID Depth: 12
Dynamic (invalid)
Metric Type: LATENCY, Path Accumulated Metric: 0
Preference: 100 (BGP ODN) (active)
Requested BSID: dynamic
PCC info:
Symbolic name: bgp_c_200_ep_201.201.201.1_discr_100
PLSP-ID: 40
Maximum SID Depth: 12
Dynamic (pce 202.202.202.104) (valid)
Metric Type: LATENCY, Path Accumulated Metric: 34000
32005 [Adjacency-SID, 200.200.200.74 - 200.200.200.73]
32020 [Adjacency-SID, 200.200.200.26 - 200.200.200.25]
32005 [Adjacency-SID, 200.200.200.62 - 200.200.200.61]
32014 [Adjacency-SID, 200.200.200.13 - 200.200.200.14]
32010 [Adjacency-SID, 200.200.200.9 - 200.200.200.10]
属性:
Binding SID: 32174
Forward Class: Not Configured
Steering labeled-services disabled: no
Steering BGP disabled: no
IPv6 caps enable: yes
RP/0/RP0/CPU0:PE06#show segment-routing traffic-eng policy binding-sid 32125
Mon Sep 28 10:11:12.976 UTC
SR-TE policy database
---------------------
Color: 200, End-point: 201.201.201.2
Name: srte_c_200_ep_201.201.201.2
Status:
Admin: up Operational: up for 3w0d (since Sep 6 17:56:47.906)
Candidate-paths:
Preference: 200 (BGP ODN) (shutdown)
Requested BSID: dynamic
Maximum SID Depth: 12
Dynamic (invalid)
Metric Type: LATENCY, Path Accumulated Metric: 0
Preference: 100 (BGP ODN) (active)
Requested BSID: dynamic
PCC info:
Symbolic name: bgp_c_200_ep_201.201.201.2_discr_100
PLSP-ID: 41
Maximum SID Depth: 12
Dynamic (pce 202.202.202.104) (valid)
Metric Type: LATENCY, Path Accumulated Metric: 35000
32005 [Adjacency-SID, 200.200.200.74 - 200.200.200.73]
32020 [Adjacency-SID, 200.200.200.26 - 200.200.200.25]
32005 [Adjacency-SID, 200.200.200.62 - 200.200.200.61]
32014 [Adjacency-SID, 200.200.200.13 - 200.200.200.14]
32010 [Adjacency-SID, 200.200.200.9 - 200.200.200.10]
32004 [Adjacency-SID, 200.200.200.6 - 200.200.200.5]
属性:
Binding SID: 32125
Forward Class: Not Configured
Steering labeled-services disabled: no
Steering BGP disabled: no
IPv6 caps enable: yes
また、転送テーブルを確認して、SR ポリシーが実際にトラフィックの転送に使用されていることを確認することもできます。転送テーブルは、SR ポリシーに割り当てられたバインディング SID を使用します。
RP/0/RP0/CPU0:PE06#show cef vrf TENANT_BASIC 100.21.5.0
Mon Sep 28 10:12:57.827 UTC
100.21.5.0/24, version 305, internal 0x1000001 0x30 (ptr 0xa9a33130) [1], 0x0 (0x0), 0x208 (0x8aea7608)
Updated Sep 22 14:11:06.788
Prefix Len 24, traffic index 0, precedence n/a, priority 3
via local-label 32171, 5 dependencies, recursive [flags 0x6000]
path-idx 0 NHID 0x0 [0x89692700 0x0]
recursion-via-label
next hop VRF - 'default', table - 0xe0000000
next hop via 32171/0/21
labels imposed {32211}
RP/0/RP0/CPU0:PE06#show mpls forwarding labels 32171 detail
Mon Sep 28 10:14:22.848 UTC
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
32171 Pop No ID srte_c_500_e point2point 0
Updated: Sep 22 14:11:06.760
Version: 210864, Priority: 2
Label Stack (Top -> Bottom): { Unlabelled Imp-Null }
NHID: 0x0, Encap-ID: 0x13e1a00000002, Path idx: 0, Backup path idx: 0, Weight: 0
MAC/Encaps: 0/0, MTU: 0
Outgoing Interface: srte_c_500_ep_201.201.201.1 (ifhandle 0x200040e4)
Packets Switched: 0
RP/0/RP0/CPU0:PE06#show cef vrf TENANT_BASIC 101.21.5.0
Mon Sep 28 10:13:02.119 UTC
101.21.5.0/24, version 307, internal 0x1000001 0x30 (ptr 0xa9a32fa8) [1], 0x0 (0x0), 0x208 (0x8aea8580)
Updated Sep 22 14:11:06.788
Prefix Len 24, traffic index 0, precedence n/a, priority 3
via local-label 32174, 5 dependencies, recursive [flags 0x6000]
path-idx 0 NHID 0x0 [0x89692628 0x0]
recursion-via-label
next hop VRF - 'default', table - 0xe0000000
next hop via 32174/0/21
labels imposed {32211}
RP/0/RP0/CPU0:PE06#show mpls forwarding labels 32174 detail
Mon Sep 28 10:14:39.568 UTC
Local Outgoing Prefix Outgoing Next Hop Bytes
Label Label or ID Interface Switched
------ ----------- ------------------ ------------ --------------- ------------
32174 Pop No ID srte_c_200_e point2point 0
Updated: Sep 22 14:11:06.761
Version: 210865, Priority: 2
Label Stack (Top -> Bottom): { Unlabelled Imp-Null }
NHID: 0x0, Encap-ID: 0x13e1c00000002, Path idx: 0, Backup path idx: 0, Weight: 0
MAC/Encaps: 0/0, MTU: 0
Outgoing Interface: srte_c_200_ep_201.201.201.1 (ifhandle 0x200041a4)
Packets Switched: 0
VPN トランジットとしての Cisco ACI ファブリック
設計
この CVD に使用される ACI バージョンでは、Cisco ACI ファブリックを VPN トランジットとして使用する場合の 3 つのシナリオがサポートされます。

異なるボーダー リーフ間の VRF 間トランジット ルーティング

同じボーダー リーフ内の VRF 間トランジット ルーティング

異なるボーダー リーフ間の VRF 内トランジット ルーティング
注: 同じボーダー リーフ内の VRF 内トランジット ルーティングはサポートされていません。
構成
注:
● XML POST のテナント名を「sr-transit」と想定しています。
● 複数のシナリオで設定が再利用されるため、一部の設定手順は冗長です。
異なる VRF と異なる BL を使用する VRF 間トランジット
ACI
ユーザー テナントでインポート/エクスポート RT 100:2001 を使用して VRF「1」を作成します。
<?xml version="1.0" encoding="utf-8"?>
<fvCtx annotation=""
bdEnforcedEnable="no"
descr=""
dn="uni/tn-sr-transit/ctx-1"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="1"
nameAlias=""
ownerKey=""
ownerTag=""
pcEnfDir="ingress"
pcEnfPref="enforced"
userdom=":all:">
<fvRsVrfValidationPol annotation=""
tnL3extVrfValidationPolName=""
userdom="all"/>
<vzAny annotation=""
descr=""
matchT="AtleastOne"
name=""
nameAlias=""
prefGrMemb="disabled"
userdom="all"/>
<fvRsOspfCtxPol annotation=""
tnOspfCtxPolName=""
userdom="all"/>
<fvRsCtxToEpRet annotation=""
tnFvEpRetPolName=""
userdom="all"/>
<fvRsCtxToBgpCtxAfPol af="ipv4-ucast"
annotation=""
tnBgpCtxAfPolName="default"
userdom=":all:"/>
<fvRsCtxToExtRouteTagPol annotation=""
tnL3extRouteTagPolName=""
userdom="all"/>
<fvRsBgpCtxPol annotation=""
tnBgpCtxPolName=""
userdom="all"/>
<bgpRtTargetP af="ipv4-ucast"
annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
userdom=":all:">
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2001"
type="export"
userdom=":all:"/>
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2001"
type="import"
userdom=":all:"/>
</bgpRtTargetP>
</fvCtx>
ユーザー テナントでインポート/エクスポート RT 100:2003 を使用して VRF「3」を作成します。
<?xml version="1.0" encoding="utf-8"?>
<fvCtx annotation=""
bdEnforcedEnable="no"
descr=""
dn="uni/tn-sr-transit/ctx-3"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="3"
nameAlias=""
ownerKey=""
ownerTag=""
pcEnfDir="ingress"
pcEnfPref="enforced"
userdom=":all:">
<fvRsVrfValidationPol annotation=""
tnL3extVrfValidationPolName=""
userdom="all"/>
<vzAny annotation=""
descr=""
matchT="AtleastOne"
name=""
nameAlias=""
prefGrMemb="disabled"
userdom="all"/>
<fvRsOspfCtxPol annotation=""
tnOspfCtxPolName=""
userdom="all"/>
<fvRsCtxToEpRet annotation=""
tnFvEpRetPolName=""
userdom="all"/>
<fvRsCtxToBgpCtxAfPol af="ipv4-ucast"
annotation=""
tnBgpCtxAfPolName="default"
userdom=":all:"/>
<fvRsCtxToExtRouteTagPol annotation=""
tnL3extRouteTagPolName=""
userdom="all"/>
<fvRsBgpCtxPol annotation=""
tnBgpCtxPolName=""
userdom="all"/>
<bgpRtTargetP af="ipv4-ucast"
annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
userdom=":all:">
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2003"
type="import"
userdom=":all:"/>
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2003"
type="export"
userdom=":all:"/>
</bgpRtTargetP>
</fvCtx>
ユーザー テナントで、契約とポリシーを定義します。
<vzBrCP annotation=""
descr=""
dn="uni/tn-sr-transit/brc-VRF1-to-VRF3"
intent="install"
name="VRF1-to-VRF3"
nameAlias=""
ownerKey=""
ownerTag=""
prio="unspecified"
scope="global"
targetDscp="unspecified"
userdom=":all:">
<vzSubj annotation=""
consMatchT="AtleastOne"
descr=""
name="any"
nameAlias=""
prio="unspecified"
provMatchT="AtleastOne"
revFltPorts="yes"
targetDscp="unspecified"
userdom=":all:">
<vzRsSubjFiltAtt action="permit"
annotation=""
directives=""
priorityOverride="default"
tnVzFilterName="default"
userdom=":all:"/>
</vzSubj>
</vzBrCP>
<rtctrlSubjP annotation=""
descr=""
dn="uni/tn-sr-transit/subj-quad-zero-prefix"
name="quad-zero-prefix"
nameAlias=""
userdom=":all:">
<rtctrlMatchRtDest aggregate="yes"
annotation=""
descr=""
fromPfxLen="0"
ip="0.0.0.0/0"
name=""
nameAlias=""
toPfxLen="0"
userdom=":all:"/>
</rtctrlSubjP>
<rtctrlProfile annotation=""
descr=""
dn="uni/tn-sr-transit/prof-rm-permit-any"
name="rm-permit-any"
nameAlias=""
ownerKey=""
ownerTag=""
type="global"
userdom=":all:">
<rtctrlCtxP action="permit"
annotation=""
descr=""
name="any"
nameAlias=""
order="1"
userdom=":all:">
<rtctrlRsCtxPToSubjP annotation=""
tnRtctrlSubjPName="quad-zero-prefix"
userdom=":all:"/>
</rtctrlCtxP>
</rtctrlProfile>
ユーザー テナントで、次のパラメータを使用して VRF-1 の SR/MPLS L3out を設定します。
*Name: SR/MPLS-VRF-1
*VRF: 1
*SR/MPLS Infra L3Out (Location): BL1-PE1
*External EPG: VRF-1-ExtEPG-1
*IP Prefix: 10.10.10.0/24
*Inter VRF Policy: Route Leaking, Security
*Provided Contract: VRF1-to-VRF3
*Consumed Contract: VRF1-to-VRF3
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
---
<l3extOut annotation=""
descr=""
dn="uni/tn-sr-transit/out-SR/MPLS_VRF_1"
enforceRtctrl="export"
mplsEnabled="yes"
name="SR/MPLS_VRF_1"
nameAlias=""
ownerKey=""
ownerTag=""
targetDscp="unspecified"
userdom=":all:">
<l3extRsEctx annotation=""
tnFvCtxName="1"
userdom="all"/>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG1"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="EPG-to-SR/MPLS_VRF_1-L3Out"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="VRF1"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="10.10.9.10/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="10.10.10.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
<fvRsCons annotation=""
intent="install"
prio="unspecified"
tnVzBrCPName="VRF1"
userdom=":all:"/>
<fvRsCons annotation=""
intent="install"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
</l3extInstP>
<l3extConsLbl annotation=""
descr=""
name="BL1-PE1-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_1/instP-ExtEPG1"
userdom=":all:"/>
</l3extConsLbl>
</l3extOut>
ユーザー テナントで、次のパラメータを使用して VRF-3 の SR/MPLS L3out を設定します。
*Name: SR/MPLS-VRF-3
*VRF: 3
*SR/MPLS Infra L3Out (Location): BL6-PE2
*External EPG: VRF-3-ExtEPG-1
*IP Prefix: 30.30.30.0/24
*Inter VRF Policy: Route Leaking, Security
*Provided Contract: VRF1-to-VRF3
*Consumed Contract: VRF1-to-VRF3
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
---
<l3extOut annotation=""
descr=""
dn="uni/tn-sr-transit/out-SR/MPLS_VRF_3"
enforceRtctrl="export"
mplsEnabled="yes"
name="SR/MPLS_VRF_3"
nameAlias=""
ownerKey=""
ownerTag=""
targetDscp="unspecified"
userdom=":all:">
<l3extRsEctx annotation=""
tnFvCtxName="3"
userdom="all"/>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG1"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="EPG-to-SR/MPLS_VRF_3-L3Out"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="30.30.30.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
<fvRsCons annotation=""
intent="install"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
<fvRsCons annotation=""
intent="install"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
</l3extInstP>
<l3extConsLbl annotation=""
descr=""
name="BL6-PE2-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_3/instP-ExtEPG1"
userdom=":all:"/>
</l3extConsLbl>
</l3extOut>
XR DC-PE
VRF configuration on PE1:
vrf sr-transit-1
address-family ipv4 unicast
import route-target
100:2001
100:2001 stitching
!
export route-target
100:2001
100:2001 stitching
!
router bgp 1
vrf sr-transit-1
rd auto
address-family ipv4 unicast
label mode per-vrf
redistribute connected
!
address-family ipv6 unicast
label mode per-vrf
redistribute connected
VRF configuration on PE2:
vrf sr-transit-3
address-family ipv4 unicast
import route-target
100:2003
100:2003 stitching
!
export route-target
100:2003
100:2003 stitching
!
router bgp 1
vrf sr-transit-3
rd auto
address-family ipv4 unicast
label mode per-vrf
redistribute connected
!
address-family ipv6 unicast
label mode per-vrf
redistribute connected
異なる VRF と単一の BL を使用する VRF 間トランジット
ACI
ユーザー テナントでインポート/エクスポート RT 100:2002 を使用して VRF「2」を作成します。
<fvCtx annotation=""
bdEnforcedEnable="no"
descr=""
dn="uni/tn-sr-transit/ctx-2"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="2"
nameAlias=""
ownerKey=""
ownerTag=""
pcEnfDir="ingress"
pcEnfPref="enforced"
userdom=":all:">
<fvRsVrfValidationPol annotation=""
tnL3extVrfValidationPolName=""
userdom="all"/>
<vzAny annotation=""
descr=""
matchT="AtleastOne"
name=""
nameAlias=""
prefGrMemb="disabled"
userdom="all"/>
<fvRsOspfCtxPol annotation=""
tnOspfCtxPolName=""
userdom="all"/>
<fvRsCtxToEpRet annotation=""
tnFvEpRetPolName=""
userdom="all"/>
<fvRsCtxToBgpCtxAfPol af="ipv4-ucast"
annotation=""
tnBgpCtxAfPolName="default"
userdom=":all:"/>
<fvRsCtxToExtRouteTagPol annotation=""
tnL3extRouteTagPolName=""
userdom="all"/>
<fvRsBgpCtxPol annotation=""
tnBgpCtxPolName=""
userdom="all"/>
<bgpRtTargetP af="ipv4-ucast"
annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
userdom=":all:">
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2002"
type="import"
userdom=":all:"/>
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2002"
type="export"
userdom=":all:"/>
</bgpRtTargetP>
</fvCtx>
ユーザー テナントでインポート/エクスポート RT 100:2003 を使用して VRF「3」を作成します。
<fvCtx annotation=""
bdEnforcedEnable="no"
descr=""
dn="uni/tn-sr-transit/ctx-3"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="3"
nameAlias=""
ownerKey=""
ownerTag=""
pcEnfDir="ingress"
pcEnfPref="enforced"
userdom=":all:">
<fvRsVrfValidationPol annotation=""
tnL3extVrfValidationPolName=""
userdom="all"/>
<vzAny annotation=""
descr=""
matchT="AtleastOne"
name=""
nameAlias=""
prefGrMemb="disabled"
userdom="all"/>
<fvRsOspfCtxPol annotation=""
tnOspfCtxPolName=""
userdom="all"/>
<fvRsCtxToEpRet annotation=""
tnFvEpRetPolName=""
userdom="all"/>
<fvRsCtxToBgpCtxAfPol af="ipv4-ucast"
annotation=""
tnBgpCtxAfPolName="default"
userdom=":all:"/>
<fvRsCtxToExtRouteTagPol annotation=""
tnL3extRouteTagPolName=""
userdom="all"/>
<fvRsBgpCtxPol annotation=""
tnBgpCtxPolName=""
userdom="all"/>
<bgpRtTargetP af="ipv4-ucast"
annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
userdom=":all:">
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2003"
type="import"
userdom=":all:"/>
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2003"
type="export"
userdom=":all:"/>
</bgpRtTargetP>
</fvCtx>
ユーザー テナントで、契約とポリシーを定義します。
<vzBrCP annotation=""
descr=""
dn="uni/tn-sr-transit/brc-VRF2-to-VRF3"
intent="install"
name="VRF2-to-VRF3"
nameAlias=""
ownerKey=""
ownerTag=""
prio="unspecified"
scope="tenant"
targetDscp="unspecified"
userdom=":all:">
<vzSubj annotation=""
consMatchT="AtleastOne"
descr=""
name="any"
nameAlias=""
prio="unspecified"
provMatchT="AtleastOne"
revFltPorts="yes"
targetDscp="unspecified"
userdom=":all:">
<vzRsSubjFiltAtt action="permit"
annotation=""
directives=""
priorityOverride="default"
tnVzFilterName="default"
userdom=":all:"/>
</vzSubj>
</vzBrCP>
--------------------------------------------------------------------------------------------
<rtctrlSubjP annotation=""
descr=""
dn="uni/tn-sr-transit/subj-quad-zero-prefix"
name="quad-zero-prefix"
nameAlias=""
userdom=":all:">
<rtctrlMatchRtDest aggregate="yes"
annotation=""
descr=""
fromPfxLen="0"
ip="0.0.0.0/0"
name=""
nameAlias=""
toPfxLen="0"
userdom=":all:"/>
</rtctrlSubjP>
--------------------------------------------------------------------------------------------
<rtctrlProfile annotation=""
descr=""
dn="uni/tn-sr-transit/prof-rm-permit-any"
name="rm-permit-any"
nameAlias=""
ownerKey=""
ownerTag=""
type="global"
userdom=":all:">
<rtctrlCtxP action="permit"
annotation=""
descr=""
name="any"
nameAlias=""
order="1"
userdom=":all:">
<rtctrlRsCtxPToSubjP annotation=""
tnRtctrlSubjPName="quad-zero-prefix"
userdom=":all:"/>
</rtctrlCtxP>
</rtctrlProfile>
ユーザー テナントで、次のパラメータを使用して VRF-2 の SR/MPLS L3out を設定します。
*Name: SR/MPLS-VRF-2
*VRF: 2
*SR/MPLS Infra L3Out (Location): BL6-PE1
*External EPG: VRF-2-ExtEPG-1
*IP Prefix: 20.20.20.0/24
*Inter VRF Policy: Route Leaking, Security
*Provided Contract: VRF2-to-VRF3
*Consumed Contract: VRF2-to-VRF3
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
<l3extOut annotation=""
descr=""
dn="uni/tn-sr-transit/out-SR/MPLS_VRF_2"
enforceRtctrl="export"
mplsEnabled="yes"
name="SR/MPLS_VRF_2"
nameAlias=""
ownerKey=""
ownerTag=""
targetDscp="unspecified"
userdom=":all:">
<l3extRsEctx annotation=""
tnFvCtxName="2"
userdom="all"/>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG1"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="EPG-to-SR/MPLS_VRF_2-L3Out"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="VRF2_MPLS-to-L3Out"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="20.20.20.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
<fvRsCons annotation=""
intent="install"
prio="unspecified"
tnVzBrCPName="VRF2_MPLS-to-L3Out"
userdom=":all:"/>
<fvRsCons annotation=""
intent="install"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
</l3extInstP>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG4"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="22.22.22.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="21.21.21.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
</l3extInstP>
<l3extConsLbl annotation=""
descr=""
name="BL6-PE2-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_2/instP-ExtEPG1"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_2/instP-ExtEPG4"
userdom=":all:"/>
</l3extConsLbl>
<l3extConsLbl annotation=""
descr=""
name="BL6-PE1-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_2/instP-ExtEPG1"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_2/instP-ExtEPG4"
userdom=":all:"/>
</l3extConsLbl>
</l3extOut>
ユーザー テナントで、次のパラメータを使用して VRF-3 の SR/MPLS L3out を設定します。
*Name: SR/MPLS-VRF-3
*VRF: 3
*SR/MPLS Infra L3Out (Location): BL6-PE2
*External EPG: VRF-3-ExtEPG-1
*IP Prefix: 30.30.30.0/24
*Inter VRF Policy: Route Leaking, Security
*Provided Contract: VRF2-to-VRF3
*Consumed Contract: VRF2-to-VRF3
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
<l3extOut annotation=""
descr=""
dn="uni/tn-sr-transit/out-SR/MPLS_VRF_3"
enforceRtctrl="export"
mplsEnabled="yes"
name="SR/MPLS_VRF_3"
nameAlias=""
ownerKey=""
ownerTag=""
targetDscp="unspecified"
userdom=":all:">
<l3extRsEctx annotation=""
tnFvCtxName="3"
userdom="all"/>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG1"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="EPG-to-SR/MPLS_VRF_3-L3Out"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="30.30.30.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
<fvRsCons annotation=""
intent="install"
prio="unspecified"
tnVzBrCPName="VRF1-to-VRF3"
userdom=":all:"/>
<fvRsCons annotation=""
intent="install"
prio="level1"
tnVzBrCPName="VRF2-to-VRF3"
userdom=":all:"/>
</l3extInstP>
<l3extConsLbl annotation=""
descr=""
name="BL6-PE2-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_3/instP-ExtEPG1"
userdom=":all:"/>
</l3extConsLbl>
</l3extOut>
XR DC-PE
VRF configuration on PE1:
vrf sr-transit-2
address-family ipv4 unicast
import route-target
100:2002
100:2002 stitching
!
export route-target
100:2002
100:2002 stitching
!
router bgp 1
vrf sr-transit-2
rd auto
address-family ipv4 unicast
label mode per-vrf
redistribute connected
!
address-family ipv6 unicast
label mode per-vrf
redistribute connected
VRF configuration on PE2:
vrf sr-transit-3
address-family ipv4 unicast
import route-target
100:2003
100:2003 stitching
!
export route-target
100:2003
100:2003 stitching
!
router bgp 1
vrf sr-transit-3
rd auto
address-family ipv4 unicast
label mode per-vrf
redistribute connected
!
address-family ipv6 unicast
label mode per-vrf
redistribute connected
異なる VRF と異なる BL を使用する VRF 内トランジット
ACI
ユーザー テナントでインポート/エクスポート RT 100:2004 を使用して VRF「2」を作成します。
<fvCtx annotation=""
bdEnforcedEnable="no"
descr=""
dn="uni/tn-sr-transit/ctx-4"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="4"
nameAlias=""
ownerKey=""
ownerTag=""
pcEnfDir="ingress"
pcEnfPref="enforced"
userdom=":all:">
<fvRsVrfValidationPol annotation=""
tnL3extVrfValidationPolName=""
userdom="all"/>
<vzAny annotation=""
descr=""
matchT="AtleastOne"
name=""
nameAlias=""
prefGrMemb="disabled"
userdom="all"/>
<fvRsOspfCtxPol annotation=""
tnOspfCtxPolName=""
userdom="all"/>
<fvRsCtxToEpRet annotation=""
tnFvEpRetPolName=""
userdom="all"/>
<fvRsCtxToBgpCtxAfPol af="ipv4-ucast"
annotation=""
tnBgpCtxAfPolName="default"
userdom=":all:"/>
<fvRsCtxToExtRouteTagPol annotation=""
tnL3extRouteTagPolName=""
userdom="all"/>
<fvRsBgpCtxPol annotation=""
tnBgpCtxPolName=""
userdom="all"/>
<bgpRtTargetP af="ipv4-ucast"
annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
userdom=":all:">
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2004"
type="import"
userdom=":all:"/>
<bgpRtTarget annotation=""
descr=""
name=""
nameAlias=""
ownerKey=""
ownerTag=""
rt="route-target:as4-nn2:100:2004"
type="export"
userdom=":all:"/>
</bgpRtTargetP>
</fvCtx>
ユーザー テナントで、契約とポリシーを定義します。
<vzBrCP annotation=""
descr=""
dn="uni/tn-sr-transit/brc-VRF4"
intent="install"
name="VRF4"
nameAlias=""
ownerKey=""
ownerTag=""
prio="unspecified"
scope="global"
targetDscp="unspecified"
userdom=":all:">
<vzSubj annotation=""
consMatchT="AtleastOne"
descr=""
name="any"
nameAlias=""
prio="unspecified"
provMatchT="AtleastOne"
revFltPorts="yes"
targetDscp="unspecified"
userdom=":all:">
<vzRsSubjFiltAtt action="permit"
annotation=""
directives=""
priorityOverride="default"
tnVzFilterName="default"
userdom=":all:"/>
</vzSubj>
</vzBrCP>
-------------------------------------------------------------------------------
<rtctrlSubjP annotation=""
descr=""
dn="uni/tn-sr-transit/subj-quad-zero-prefix"
name="quad-zero-prefix"
nameAlias=""
userdom=":all:">
<rtctrlMatchRtDest aggregate="yes"
annotation=""
descr=""
fromPfxLen="0"
ip="0.0.0.0/0"
name=""
nameAlias=""
toPfxLen="0"
userdom=":all:"/>
</rtctrlSubjP>
-------------------------------------------------------------
<rtctrlProfile annotation=""
descr=""
dn="uni/tn-sr-transit/prof-rm-permit-any"
name="rm-permit-any"
nameAlias=""
ownerKey=""
ownerTag=""
type="global"
userdom=":all:">
<rtctrlCtxP action="permit"
annotation=""
descr=""
name="any"
nameAlias=""
order="1"
userdom=":all:">
<rtctrlRsCtxPToSubjP annotation=""
tnRtctrlSubjPName="quad-zero-prefix"
userdom=":all:"/>
</rtctrlCtxP>
</rtctrlProfile>
ユーザー テナントで、次のパラメータを使用して VRF-4 の SR/MPLS L3out を設定します。
*Name: SR/MPLS-VRF-4
*VRF: 4
*SR/MPLS Infra L3Out (Location): BL1-PE1
*External EPG: VRF-4-ExtEPG-1
*IP Prefix: 40.40.40.0/24
*Inter VRF Policy: Route Leaking, Security
*IP Prefix: 42.42.42.0/24
*Inter VRF Policy: Route Leaking, Security
*Provided Contract: VRF4 (not needed for transit, for consumption by any internal EPGs)
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
*SR/MPLS Infra L3Out (Location): BL6-PE2
*External EPG: VRF-4-ExtEPG-1
*Outbound Route-map: rm-permit-any
*1 Permit Context with the following match rule: 0.0.0.0/0 with Aggregate true
*Inbound Route-map: None (permit any by default) or rm-permit-any
---
<l3extOut annotation=""
descr=""
dn="uni/tn-sr-transit/out-SR/MPLS_VRF_4"
enforceRtctrl="export"
mplsEnabled="yes"
name="SR/MPLS_VRF_4"
nameAlias=""
ownerKey=""
ownerTag=""
targetDscp="unspecified"
userdom=":all:">
<l3extRsEctx annotation=""
tnFvCtxName="4"
userdom="all"/>
<l3extInstP annotation=""
descr=""
exceptionTag=""
floodOnEncap="disabled"
matchT="AtleastOne"
name="ExtEPG1"
nameAlias=""
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
userdom=":all:">
<fvRsProv annotation=""
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="EPG-to-SR/MPLS_VRF_4-L3Out"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="40.40.40.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<l3extSubnet aggregate=""
annotation=""
descr=""
ip="42.42.42.0/24"
name=""
nameAlias=""
scope="import-security,shared-rtctrl,shared-security"
userdom=":all:"/>
<fvRsCustQosPol annotation=""
tnQosCustomPolName=""
userdom="all"/>
</l3extInstP>
<l3extConsLbl annotation=""
descr=""
name="BL6-PE2-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_4/instP-ExtEPG1"
userdom=":all:"/>
</l3extConsLbl>
<l3extConsLbl annotation=""
descr=""
name="BL1-PE1-infra"
nameAlias=""
owner="infra"
ownerKey=""
ownerTag=""
tag="yellow-green"
userdom=":all:">
<l3extRsLblToProfile annotation=""
direction="export"
tDn="uni/tn-sr-transit/prof-rm-permit-any"
userdom=":all:"/>
<l3extRsLblToInstP annotation=""
tDn="uni/tn-sr-transit/out-SR/MPLS_VRF_4/instP-ExtEPG1"
userdom=":all:"/>
</l3extConsLbl>
</l3extOut>
XR DC-PE
VRF configuration on PE1 and PE2:
vrf sr-transit-4
address-family ipv4 unicast
import route-target
100:2004
100:2004 stitching
!
export route-target
100:2004
100:2004 stitching
!
router bgp 1
vrf sr-transit-4
rd auto
address-family ipv4 unicast
label mode per-vrf
redistribute connected
!
address-family ipv6 unicast
label mode per-vrf
redistribute connected
注: ここに示す設計では、PE1 と PE2 が、2 つの異なる L3VPN コントロールプレーンを使用する 2 つの異なる SR/MPLS ネットワークの一部であると想定しています。したがって、40.40.40.40/24 と 42.42.42.42/24 が直接通信する方法はなく、唯一使用可能なパスは Cisco ACI ファブリックを使用することになります。
設計
ACI サイトをアクセスネットワークに接続して、ネットワークのその部分に付加価値サービスを提供する場合があります。このような場合、アクセス PE は、リモート DC-PE でホストする必要がある EVPN/L3VPN スティッチング機能を実行できません。

リモート DC-PE を使用した ACI リモート リーフ スイッチ
このシナリオでは、使用できる 2 つの主要なアーキテクチャがあります。
1. アクセス ルータは、ACI ボーダー リーフから SR IGP ベースの LSP への BGP-LU をスティッチングします。

ACI ボーダー リーフから SR IGP ベースの LSP へのアクセス ルータ スティッチ BGP-LU
このモデルでは、アクセス ルータは、BGP-LU から IGP に、またはその逆にループバックを再配布することにより、BGP-LU と SR IGP の間のスティッチングを実行します。アクセスネットワークでは、単一のトランスポートラベル(SR-IGP ラベル)が伝送されます。
2. アクセスルータは、SR IGP ベースの LSP を介して BGP-LU をトンネルします。

アクセスルータは SR を介した BGP-LU をトンネルしている IGP ベースの LSP
このモデルでは、アクセスネットワーク内に BGP-LU コントロールプレーンがあります。たとえば、DC-PE は BGP-LU のインライン RR 機能を提供する場合や、アクセス ネットワークに BGP-LU 専用の RR が存在する場合があります。
このアーキテクチャでは、RL/BL のループバックは、BGP ネクストホップとしてアクセス ルータ ループバックを使用し、BGP-LU を介して DC-PE に伝送されます。次に、DC-PE は、SR を使用してトラフィックをトンネリングしてアクセスルータに到達する必要があります。その結果、アクセスネットワークには、RL/BL のループバックに関連付けられた BGP-LU ラベルと、アクセスルータのループバックに関連付けられた SR-IGP ラベルの 2 つのトランスポートラベルが存在します。
次の図では、ACI リモート リーフ サイト 2-1-3-3 がアクセス ルータ(ACC2-1-R2 および ACC2-1-R3)に物理的に接続されています。ただし、BGP サービスは集約ルータ(AGG2-PE1 および AGG2-PE2)によって提供されます。テスト設定では、アクセスルータは ASR903/ASR920 XE ルータ、集約ルータは XR ルータです。

リモート DC-PE 検証済みシナリオ
この設計では、BGP-EVPN セッションが EVPN ルート リフレクタまたは EVPN/L3VPN スティッチング機能を提供するリモート PE で確立される一方、ボーダー リーフがアクセス ルータとの BGP-LU セッションを実行します。
このテスト済み設定では EVPN ルート リフレクタを使用していますが、前述のように、ボーダー リーフからリモート DC-PE への EVPN セッションを設定することは完全に問題ありません。
アクセス ネットワークは、IGP としてセグメント ルーティングを行う IS-IS を使用します。アクセス ネットワークには BGP-LU コントロール プレーンがないため、ボーダー リーフから受信した BGP-LU ルートは IGP に再配布され、IGP のループバックの一部は IS-IS から BGP-LU に再配布されます。次のループバックは、IGP から BGP-LU にアドバタイズする必要があります。
● EVPN/L3VPN スティッチングを実行するリモート DC-PE のループバック。
● EVPN ルート リフレクタのループバック(リモート リーフ スイッチには RR との BGP セッションが必要なため)。
● 同じアクセス ネットワークに接続されている他の ACI サイトのループバック(これについては後述します)。

アクセス ルータ上の BGP LU と IGP 間のトランスポート ルートの双方向再配布
アクセス ルータ上の BGP LU と IGP 間のトランスポートルートの双方向再配布。アクセス ネットワークに BGP-LU コントロール プレーンがある場合、次の図に示すように完全なルート再配布を実行する必要はありません。

アクセス ルータ上の BGP LU と IGP 間のトランスポート ルートのシングルサイド再配布
アクセス ルータ上の BGP LU と IGP 間のトランスポート ルートのシングルサイド再配布このアーキテクチャでは、ACI サイトからの BGP-LU ルートは、BGP-LU コントロールプレーンを使用して集約ルータに伝送できます。各集約ルータは、アクセス ルータとしてネクスト ホップを使用して BGP-LU ルート リフレクタからボーダー リーフのループバックを受信します。
構成
XE access router (ACC2-1-R3):
interface GigabitEthernet0
description connected to ifav204-leaf12
mtu 9150
no ip address
load-interval 30
negotiation auto
service instance 1011 ethernet
encapsulation dot1q 101
rewrite ingress tag pop 1 symmetric
bridge-domain 1011
!
!
interface GigabitEthernet0/0.1
description connected to ifav204-leaf11
mtu 9150
no ip address
load-interval 30
negotiation auto
service instance 1012 ethernet
encapsulation dot1q 101
rewrite ingress tag pop 1 symmetric
bridge-domain 1012
!
!
interface BDI1011
ip address 120.1.94.2 255.255.255.0
no ip redirects
no ip proxy-arp
mpls bgp forwarding
bfd interval 50 min_rx 50 multiplier 3
!
interface BDI1012
ip address 120.1.93.2 255.255.255.0
no ip redirects
no ip proxy-arp
mpls bgp forwarding
bfd interval 50 min_rx 50 multiplier 3
!
router isis AGG2
net 49.0002.0000.0002.0012.00
is-type level-2-only
router-id Loopback0
metric-style wide
fast-flood 15
max-lsp-lifetime 65500
lsp-refresh-interval 64000
spf-interval 1 50 150
prc-interval 1 50 150
log-adjacency-changes
metric 9999999 level-1
metric 9999999 level-2
segment-routing mpls
segment-routing prefix-sid-map advertise-local
fast-reroute per-prefix level-1 all
fast-reroute per-prefix level-2 all
fast-reroute use-candidate-only level-1
fast-reroute use-candidate-only level-2
fast-reroute tie-break level-1 node-protecting 1
fast-reroute tie-break level-2 node-protecting 1
fast-reroute ti-lfa level-1
fast-reroute ti-lfa level-2
microloop avoidance segment-routing
microloop avoidance rib-update-delay 2000
redistribute bgp 1 route-map BGP-LU-TO-ISIS
passive-interface Loopback0
maximum-paths 32
bfd all-interfaces
mpls traffic-eng router-id Loopback0
mpls traffic-eng level-2
!
router bgp 1
bgp router-id 201.221.211.3
bgp log-neighbor-changes
no bgp default ipv4-unicast
neighbor RR-EVPN peer-group
neighbor remote-as
neighbor RR-EVPN update-source Loopback0
neighbor ACI-site-LU peer-group
neighbor ACI-site-LU remote-as 987654321
neighbor ACI-site-LU fall-over bfd
neighbor ACI-site-LU update in labeled-unicast unique
neighbor ACI-site-LU update out labeled-unicast unique
neighbor 120.1.93.1 peer-group ACI-site-LU
neighbor 120.1.94.1 peer-group ACI-site-LU
neighbor 201.221.202.3 peer-group RR-EVPN
neighbor 201.221.202.4 peer-group RR-EVPN
!
address-family ipv4
redistribute isis AGG2 level-2 route-map ISIS-TO-BGP-LU
segment-routing mpls
neighbor ACI-site-LU route-map SET-CT in
neighbor ACI-site-LU route-map ADVERTISE-LOOPBACKS-TO-LU out
neighbor ACI-site-LU send-label
neighbor ACI-site-LU maximum-prefix 10 80 warning-only
neighbor 120.1.93.1 activate
neighbor 120.1.94.1 activate
maximum-paths 32
exit-address-family
!
address-family l2vpn evpn
neighbor RR-EVPN send-community both
neighbor 201.221.202.3 activate
neighbor 201.221.202.4 activate
exit-address-family
!
address-family rtfilter unicast
neighbor RR-EVPN send-community both
neighbor 201.221.202.3 activate
neighbor 201.221.202.4 activate
exit-address-family
!
!
ip community-list 1 permit 1:50002
!
ip prefix-list EVPN_DCI seq 5 permit 201.221.201.1/32
ip prefix-list EVPN_DCI seq 10 permit 201.221.201.2/32
!
ip prefix-list EVPN_RR_LOOPBACKS seq 5 permit 201.221.202.3/32
ip prefix-list EVPN_RR_LOOPBACKS seq 10 permit 201.221.202.4/32
!
route-map ADVERTISE-LOOPBACKS-TO-LU permit 10
match community 1
set mpls-label
!
route-map ADVERTISE-LOOPBACKS-TO-LU permit 30
match ip address prefix-list EVPN_RR_LOOPBACKS
!
route-map ADVERTISE-LOOPBACKS-TO-LU permit 40
match ip address prefix-list EVPN_DCI
set mpls-label
!
route-map SET-CT permit 10
set community 1:50002 no-advertise
!
route-map BGP-LU-TO-ISIS permit 10
match community 1
set tag 102133
!
route-map ISIS-TO-BGP-LU permit 10
match ip address prefix-list EVPN_RR_LOOPBACKS
!
route-map ISIS-TO-BGP-LU permit 20
match ip address prefix-list EVPN_DCI
!
アクセス ルータが BGP-LU でルートを受信すると、ルートにはコミュニティ 1:50002 のタグが付けられます。これは、このルートがアクセス ネットワーク #2 に属する LU ルートであることを意味します。このコミュニティは、BGP-LU から IS-IS に再配布されたときに IS-IS タグ 102133 に関連付けられるため、IS-IS はルートが ACI サイト 2-1-3-3 から送信されたことを認識します。これは、プロトコル間の相互再配布によるループの防止に役立ちます。
アクセス ルータが IGP ルートを BGP-LU に再配布する場合、ルート マップ ISIS-TO-BGP-LU を使用して再配布がフィルタリングされ、EVPN RR ループバックとリモート DC-PE ループバックが許可されます。
アクセス ネットワークに複数の ACI サイトがある場合、異なるサイトに属する IS-IS に複数の ACI リーフループバックが存在する可能性があります。ルートのタグ付けにより、各ループバックの発信元サイトが分かります。同じアクセス ネットワーク内の ACI サイト間の通信を有効にするには、ISIS-TO-BGP-LU ルートマップに新しい条件を追加する必要があります。
次の図では、同じアクセス ネットワークに接続されている別の ACI サイト 2-1-4-4 があります。リーフのループバックは、IS-IS でタグ 102144 で伝送されます。ACC2-1-R3 ルータがサイト 2-1-4-4 のループバックをサイト 2-1-3-3 にアドバタイズするために、次のように新しい用語が追加されています。
route-map ISIS-TO-BGP-LU permit 30
match tag 102144
set community 1:50002
!
この新しい用語はサイト 2-1-4-4 からのルートと一致し、コミュニティ 1:50002 を設定すると、ルートはサイト 2-1-3-3 の ACI リーフに送信されます。

リモート DC-PE を使用した同じアクセスネットワーク内の複数の ACI サイト
注: XE と NX-OS では、BGP-LU アップデートの処理方法が少し異なります。XR と NXOS は、デフォルトで完全に互換性があります。NXOS に面する XE デバイスの BGP-LU セッションでは、次のノブをアクティブにすることをお勧めします。
router bgp 1
neighbor ACI-site-LU update in labeled-unicast unique
neighbor ACI-site-LU update out labeled-unicast unique
XR EVPN RR:
router bgp 1
bgp router-id 201.221.202.3
bgp cluster-id 2.0.3.1
address-family ipv4 rt-filter
!
address-family l2vpn evpn
!
neighbor-group ACI-site-EVPN
remote-as 987654321
bfd fast-detect
bfd multiplier 3
bfd minimum-interval 50
ebgp-multihop 255
update-source Loopback0
address-family l2vpn evpn
allowas-in 5
next-hop-unchanged
!
!
neighbor-group RR-client-EVPN
remote-as 1
update-source Loopback0
address-family l2vpn evpn
route-reflector-client
!
!
neighbor 20.204.111.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy MARK-ACI-ROUTES(9) in
route-policy DROP-ACI-ROUTES(9) out
!
!
neighbor 20.204.112.1
use neighbor-group ACI-site-EVPN
address-family l2vpn evpn
route-policy MARK-ACI-ROUTES(9) in
route-policy DROP-ACI-ROUTES(9) out
!
!
neighbor 201.221.201.1
use neighbor-group RR-client-EVPN
!
neighbor 201.221.201.2
use neighbor-group RR-client-EVPN
!
!
route-policy MARK-ACI-ROUTES($site)
if extcommunity soo matches-any (987654321:$site) then
drop
else
set extcommunity soo (1:$site)
endif
end-policy
!
route-policy DROP-ACI-ROUTES($site)
if extcommunity soo matches-any (1:$site) then
drop
else
set extcommunity soo (987654321:$site)
endif
end-policy
!
ルート リフレクタには、通常の DC-PE と同様の BGP 構成があります。
ボーダー リーフとの eBGP EVPN セッションは、「ebgp-multihop」オプションを使用して設定する必要があります。また、RR がボーダー リーフから数ホップ離れている可能性があるため、TTL を通常よりも高い値に設定する必要があります。
ボーダー リーフに使用されるネイバー グループ「ACI-site-EVPN」の「next-hop-unchanged」キーワードを設定することも重要です。トランスポートの観点から、ネクストホップは DC-PE(AGG2- PE1 または AGG2-PE2)であり、RR ではありません。
ルート リフレクタは、通常のユース ケースで DC-PE が行うように、ボーダー リーフへの EVPN セッションで SOO を使用してループ防止を実装します。詳細については、「マルチホーミングを使用した基本的な SR ハンドオフ」セクションを参照してください。
DC-PE 構成(AGG2-PE1):
vrf TENANT_BASIC
address-family ipv4 unicast
import route-target
1:2110000
1:2110009 stitching
!
export route-target
1:2110000
1:2110009 stitching
!
!
address-family ipv6 unicast
import route-target
1:2110000
1:2110009 stitching
!
export route-target
1:2110000
1:2110009 stitching
!
!
!
router bgp 1
bgp router-id 201.221.201.1
ibgp policy out enforce-modifications
address-family vpnv4 unicast
!
address-family vpnv6 unicast
!
address-family ipv4 rt-filter
!
address-family l2vpn evpn
!
neighbor-group RR-EVPN
remote-as 1
update-source Loopback0
address-family ipv4 rt-filter
route-reflector-client
!
address-family l2vpn evpn
import stitching-rt re-originate
route-policy MARK_EVPN_DROP_L3VPN_ROUTES in
route-reflector-client
advertise vpnv4 unicast re-originated stitching-rt
advertise vpnv6 unicast re-originated stitching-rt
!
!
neighbor-group RR-VPNunicast
remote-as 1
update-source Loopback0
address-family vpnv4 unicast
import re-originate stitching-rt
route-policy MARK_L3VPN_DROP_EVPN_ROUTES in
advertise vpnv4 unicast re-originated
!
address-family vpnv6 unicast
import re-originate stitching-rt
route-policy MARK_L3VPN_DROP_EVPN_ROUTES in
advertise vpnv6 unicast re-originated
!
address-family ipv4 rt-filter
!
!
neighbor 201.221.202.1
use neighbor-group RR-VPNunicast
!
neighbor 201.221.202.2
use neighbor-group RR-VPNunicast
!
neighbor 201.221.202.3
use neighbor-group RR-EVPN
!
neighbor 201.221.202.4
use neighbor-group RR-EVPN
!
vrf TENANT_BASIC
rd 1:2110022
address-family ipv4 unicast
!
address-family ipv6 unicast
!
!
route-policy MARK_EVPN_DROP_L3VPN_ROUTES
if community matches-any (1:2102) then
drop
else
set community (1:2202)
endif
end-policy
!
route-policy MARK_L3VPN_DROP_EVPN_ROUTES
if community matches-any (1:2202) then
drop
else
set community (1:2102)
endif
end-policy
ほとんどの構成は通常の DC-PE に似ていますが、主な変更点が 2 つあります。
● サイトループ防止は RR で実行されるため、リモートサイトの DC-PE でサイトごとのフィルタリングを実行する必要はありません。
● EVPN RR が関係しているため、EVPN ドメインと L3VPN ドメインの間に BGP 更新ループが発生する可能性があり、これらのループを防ぐために新しいフィルタリングが必要です。
ドメインごとのフィルタリングは、EVPN および VPN ユニキャスト セッションでのコミュニティベースの設定とインバウンド フィルタリングによって実現されます。
EVPN ドメイン コミュニティ(1:2202)で着信する VPN ユニキャスト セッションで受信したルートはドロップされるか、ルートは VPN ユニキャスト ドメイン コミュニティ(1:2102)でタグ付けされます。
同様に、EVPN セッションで受信した VPN ユニキャスト ドメイン コミュニティ(1:2102)を持つルートはドロップされるか、ルートに EVPN ドメイン コミュニティ(1:2202)がタグ付けされます。

ドメインごとのルートフィルタリング
ACI の構成
インフラ テナントの構成
テナント インフラ設定の一部として 2 つの追加 SR/MPLS インフラ L3out(2-1-3-3 および 2-1-4-4)を追加します。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<fvTenant
dn="uni/tn-infra"
name="infra"
>
<!-- Tag_1 インフラ テナントでのデフォルト ラベル範囲の構成 -->
<mplsLabelPol
maxDynamicLabel="525286"
maxStaticLabel="0"
minDynamicLabel = "16"
minStaticLabel="0"
name="default"
>
<mplsSrgbLabelPol
localId="1"
maxSrgbLabel="32000"
minSrgbLabel="16000"
/>
</mplsLabelPol>
<!-- Tag_2 インフラ テナントでのデフォルト インターフェイスの構成 -->
<mplsIfPol
name="default"
/>
<!-- Tag_3 DC PE ロケーション 2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.103.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-103"
>
<l3extLoopBackIfP addr="20.204.103.1"
>
<mplsNodeSidP
loopbackAddr="20.204.103.1"
sidoffset="45"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.104.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-104"
>
<l3extLoopBackIfP addr="20.204.104.1"
>
<mplsNodeSidP
loopbackAddr="20.204.104.1"
sidoffset="46"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.51.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/18]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.51.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.53.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-103/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.53.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.52.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/14]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.52.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.54.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-104/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.54.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.2"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.1"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-1"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-1"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-1_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId = "30.204.105.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-105"
>
<l3extLoopBackIfP addr="20.204.105.1"
>
<mplsNodeSidP
loopbackAddr="20.204.105.1"
sidoffset="47"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.106.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-106"
>
<l3extLoopBackIfP addr="20.204.106.1"
>
<mplsNodeSidP
loopbackAddr="20.204.106.1"
sidoffset="48"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-1_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.63.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.63.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.62.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.62.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.64.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-106/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.64.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.61.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-105/pathep-[eth1/3]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.61.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.7"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-1_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_5 DC PE ロケーション 2-1-2-2 への MPLS インフラ L3out -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-2-2"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-2-2"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-2-2_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.107.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-107"
>
<l3extLoopBackIfP addr="20.204.107.1"
>
<mplsNodeSidP
loopbackAddr="20.204.107.1"
sidoffset="49"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.108.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-108"
>
<l3extLoopBackIfP addr="20.204.108.1"
>
<mplsNodeSidP
loopbackAddr="20.204.108.1"
sidoffset="50"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-2-2_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.73.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-107/pathep-[PC2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.73.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="send-com,send-ext-com"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.71.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-107/pathep-[PC1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.71.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.72.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-108/pathep-[PC1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.72.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.74.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-108/pathep-[PC2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.74.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="send-com,send-ext-com"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.201.201.7"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.201.201.6"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-2-2_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- TAG ロケーション 2-1-3-3 および 2-1-4-4 のアクセスネットワークの背後にあるリモート DC
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-3-3"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-3-3"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-3-3_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.111.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-111"
>
<l3extLoopBackIfP addr="20.204.111.1"
>
<mplsNodeSidP
loopbackAddr="20.204.111.1"
sidoffset="11043"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.112.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-112"
>
<l3extLoopBackIfP addr="20.204.112.1"
>
<mplsNodeSidP
loopbackAddr="20.204.112.1"
sidoffset="11044"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-3-3_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.92.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-112/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.92.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.93.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-111/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.93.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.91.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-111/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.91.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.94.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="inherit"
tDn="topology/pod-1/paths-112/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.94.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsNdIfPol
/>
<l3extRsLIfPCustQosPol
/>
<l3extRsIngressQosDppPol
/>
<l3extRsEgressQosDppPol
/>
<l3extRsArpIfPol
/>
<bfdMhIfP
keyId="1"
type="none"
userdom=":all:">
<bfdRsMhIfPol
tnBfdMhIfPolName="MH-BFD"
userdom="all"/>
</bfdMhIfP>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.221.202.3"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.221.202.4"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-3-3_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="2-1-4-4"
targetDscp="unspecified"
>
<mplsExtP
>
<mplsRsLabelPol
tDn="uni/tn-infra/mplslabelpol-default"
/>
</mplsExtP>
<l3extRsL3DomAtt
tDn="uni/l3dom-L3Dom"
/>
<l3extRsEctx
tnFvCtxName="overlay-1"
/>
<l3extProvLbl
name="2-1-4-4"
tag="yellow-green"
/>
<l3extLNodeP
name="2-1-4-4_nodeProfile"
tag="yellow-green"
targetDscp="unspecified"
>
<l3extRsNodeL3OutAtt
rtrId="30.204.113.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-113"
>
<l3extLoopBackIfP addr="20.204.113.1"
>
<mplsNodeSidP
loopbackAddr="20.204.113.1"
sidoffset="11041"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsNodeL3OutAtt
rtrId="30.204.114.1"
rtrIdLoopBack="no"
tDn="topology/pod-1/node-114"
>
<l3extLoopBackIfP addr="20.204.114.1"
>
<mplsNodeSidP
loopbackAddr="20.204.114.1"
sidoffset="11042"
/>
</l3extLoopBackIfP>
</l3extRsNodeL3OutAtt>
<l3extRsLNodePMplsCustQosPol
tDn="uni/tn-infra/qosmplscustom-"
/>
<l3extLIfP
name="2-1-4-4_interfaceProfile"
prio="unspecified"
tag="yellow-green"
>
<l3extRsPathL3OutAtt addr="120.1.105.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/16]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.105.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.108.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/17]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.108.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.109.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/19]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.109.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.104.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.104.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.106.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/16]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.106.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.111.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/20]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.111.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.110.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/19]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.110.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.102.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.102.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.103.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/2]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.103.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.107.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/17]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.107.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.112.1/24"
autostate="disabled"
encap="vlan-101"
encapScope="local"
ifInstT="sub-interface"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-114/pathep-[eth1/20]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.112.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsPathL3OutAtt addr="120.1.101.1/24"
autostate="disabled"
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-1/paths-113/pathep-[eth1/1]"
targetDscp="unspecified"
>
<bgpPeerP addr="120.1.101.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
peerCtrl="bfd"
ttl="1"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
<l3extRsNdIfPol
/>
<l3extRsLIfPCustQosPol
/>
<l3extRsIngressQosDppPol
/>
<l3extRsEgressQosDppPol
/>
<l3extRsArpIfPol
/>
<mplsIfP
>
<mplsRsIfPol
tnMplsIfPolName="default"
/>
</mplsIfP>
<bfdIfP
keyId="1"
type="none"
>
<bfdRsIfPol
tnBfdIfPolName="BFD_Pol"
/>
</bfdIfP>
</l3extLIfP>
<bgpInfraPeerP addr="201.221.202.3"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
<bgpInfraPeerP addr="201.221.202.4"
addrTCtrl="af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
ctrl="allow-self-as,dis-peer-as-check,send-com,send-ext-com"
dataPlaneAddr="0.0.0.0"
peerCtrl="bfd"
peerT="SR/MPLS"
remoteIntersiteRR="no"
srcIfT="l3out-loopback"
trustCtrl="untrusted"
ttl="16"
weight="0">
<bgpRsPeerPfxPol
/>
<bgpAsP
asn="1"
/>
</bgpInfraPeerP>
</l3extLNodeP>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="2-1-4-4_mplsInstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsCustQosPol
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
</fvTenant>
</imdata>
基本ユーザー テナント設定
2 つの追加の SR MPLS インフラ L3out ロケーションまたは SR MPLS VRF L3Out(2-1-3-3 および 2-1-4-4)も既存のユーザー テナントに追加されます。
<?xml version="1.0" encoding="utf-8"?>
<imdata totalCount="1">
<!-- 必要に応じてテナントの名前を指定します -->
<fvTenant descr="Tenant with Basic SR MPLS Handoff"
dn="uni/tn-TENANT-BASIC"
name="TENANT-BASIC"
>
<!-- Tag_1 ユーザー L3out ルート制御構成 -->
<rtctrlSubjP
name="all"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="100.0.0.0/8"
toPfxLen="0"
/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="101.0.0.0/8"
toPfxLen="0"
userdom=":all:"/>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="::/0"
toPfxLen="0"
/>
</rtctrlSubjP>
<!-- プレフィックス サブネットごとのカラーの設定 -->
<rtctrlSubjP
name="Granular-Rule"
>
<rtctrlMatchRtDest aggregate="yes"
fromPfxLen="0"
ip="101.21.5.254/24"
toPfxLen="0"
/>
</rtctrlSubjP>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlScope
>
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color"
/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
<rtctrlCtxP action="permit"
name="Granular-Export"
order="1"
>
<rtctrlScope
>
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="Granular-color"
/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="Granular-Rule"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlScope
>
<rtctrlRsScopeToAttrP
tnRtctrlAttrPName="color"
/>
</rtctrlScope>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlAttrP
name="color"
>
<rtctrlSetComm
community="extended:color:500"
setCriteria="append"
type="community"
/>
</rtctrlAttrP>
<rtctrlAttrP
name="Granular-color"
>
<rtctrlSetComm
community="extended:color:200"
setCriteria="append"
type="community"
/>
</rtctrlAttrP>
<!-- Tag_2 DC PE ロケーション 2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2121"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106/instP-LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_3 DC PE ロケーション 2-1-2-1 へのユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_21"
/>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-MPLS-TENANT-L3OUT-2105/instP-LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-MPLS-TENANT-L3OUT-2105-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag DC PE ロケーション 2-1-2-2 に対するユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2122"
/>
<rtctrlProfile
name="Export-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-Pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-Pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-2-2"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToProfile direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToInstP tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107/instP-LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2107-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="::/0"
name="ipv6All"
scope="import-security"
/>
<l3extSubnet
ip="0.0.0.0/0"
name="ipv4All"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag リモート DC PE 2-1-3-3 および 2-1-4-4 に対するユーザー L3out 構成 -->
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-3-3-MPLS-TENANT-L3OUT-2109"
targetDscp="unspecified"
>
<l3extRsEctx tnFvCtxName="TENANT_BASIC_2133"
/>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-3-3"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToProfile
direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToInstP
tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-3-3-MPLS-TENANT-L3OUT-2109/instP-LOCATION-2-1-3-3-MPLS-TENANT-L3OUT-2109-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-3-3-MPLS-TENANT-L3OUT-2109-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="0.0.0.0/0"
scope="import-security"
/>
<l3extSubnet
ip="::/0"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvSiteAssociated
name="msc-local"
siteId="2"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<l3extOut
enforceRtctrl="export"
mplsEnabled="yes"
name="LOCATION-2-1-4-4-MPLS-TENANT-L3OUT-2110"
targetDscp="unspecified"
>
<l3extRsEctx
tnFvCtxName="TENANT_BASIC_2144"
/>
<rtctrlProfile
name="Export-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Export-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<rtctrlProfile
name="Import-pol"
type="combinable"
>
<rtctrlCtxP action="permit"
name="Import-pol"
order="1"
>
<rtctrlRsCtxPToSubjP
tnRtctrlSubjPName="all"
/>
</rtctrlCtxP>
</rtctrlProfile>
<l3extConsLbl
name="2-1-4-4"
owner="infra"
tag="yellow-green"
>
<l3extRsLblToProfile
direction="export"
tDn="uni/tn-TENANT-BASIC/prof-Export-Pol"
/>
<l3extRsLblToProfile
direction="import"
tDn="uni/tn-TENANT-BASIC/prof-Import-Pol"
/>
<l3extRsLblToInstP
tDn="uni/tn-TENANT-BASIC/out-LOCATION-2-1-4-4-MPLS-TENANT-L3OUT-2110/instP-LOCATION-2-1-4-4-MPLS-TENANT-L3OUT-2110-InstP"
/>
</l3extConsLbl>
<l3extInstP
floodOnEncap="disabled"
matchT="AtleastOne"
name="LOCATION-2-1-4-4-MPLS-TENANT-L3OUT-2110-InstP"
prefGrMemb="exclude"
prio="unspecified"
targetDscp="unspecified"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<l3extSubnet
ip="0.0.0.0/0"
scope="import-security"
/>
<l3extSubnet
ip="::/0"
scope="import-security"
/>
<fvRsCustQosPol
/>
<fvSiteAssociated
name="msc-local"
siteId="2"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
</l3extInstP>
<bgpExtP
/>
</l3extOut>
<!-- Tag_4 DC PE ロケーション 2-1-2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2121"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="export"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_5 DC PE ロケーション 2-1 へのユーザー VRF 構成 -->
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_21"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110005"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<fvCtx bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2122"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110007"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110006"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag 2-1-3-3 および 2-1-4-4 へのユーザー VRF -->
<fvCtx
bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2133"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="import"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="export"
/>
</bgpRtTargetP>
</fvCtx>
<fvCtx
bdEnforcedEnable="no"
ipDataPlaneLearning="enabled"
knwMcastAct="permit"
name="TENANT_BASIC_2144"
pcEnfDir="ingress"
pcEnfPref="enforced"
>
<fvRsVrfValidationPol
tnL3
/>
<vzAny
matchT="AtleastOne"
prefGrMemb="disabled"
/>
<fvRsOspfCtxPol
/>
<fvRsCtxToEpRet
/>
<fvRsCtxToExtRouteTagPol
tnL3
/>
<fvRsBgpCtxPol
/>
<bgpRtTargetP af="ipv6-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="export"
/>
</bgpRtTargetP>
<bgpRtTargetP af="ipv4-ucast"
>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="import"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110010"
type="export"
/>
<bgpRtTarget
rt="route-target:as2-nn4:1:2110009"
type="import"
/>
</bgpRtTargetP>
</fvCtx>
<!-- Tag_6 DC PE ロケーション 2-1 に対するユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2105"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:5::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.5.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_21"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-MPLS-TENANT-L3OUT-2105"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_7 DC PE ロケーション 2-1-2-1 へのユーザー BD 構成 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2106"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip="2001:100:21:6::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="100.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.6.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2121"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-1-MPLS-TENANT-L3OUT-2106"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- TAG DC PE ロケーション 2-1-2-2に対応するユーザーBD設定 -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2107"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet ctrl="nd"
ip = 100.21.7.254/24
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip="101.21.7.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet ctrl="nd"
ip = "2001:100:21:7::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2122"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-2-2-MPLS-TENANT-L3OUT-2107"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag DC PE ロケーション 2-1-3-3 および 2-1-4-4 への BD -->
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2109"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet
ctrl="nd"
ip="2001:100:21:9::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet
ctrl="nd"
ip="100.21.9.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2133"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-3-3-MPLS-TENANT-L3OUT-2109"
/>
<fvRsBDToNdP
/>
</fvBD>
<fvBD OptimizeWanBandwidth="no"
arpFlood="no"
epClear="no"
hostBasedRouting="no"
intersiteBumTrafficAllow="no"
intersiteL2Stretch="no"
ipLearning="yes"
ipv6McastAllow="no"
limitIpLearnToSubnets="yes"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mcastAllow="no"
multiDstPktAct="bd-flood"
name="BD2110"
type="regular"
unicastRoute="yes"
unkMacUcastAct="proxy"
unkMcastAct="flood"
v6unkMcastAct="flood"
vmac="not-applicable">
<fvSubnet
ctrl="nd"
ip="100.21.10.254/24"
preferred="no"
scope="public"
virtual="no"/>
<fvSubnet
ctrl="nd"
ip="2001:100:21:10::254/64"
preferred="no"
scope="public"
virtual="no"/>
<fvRsMldsn
/>
<fvRsIgmpsn
/>
<fvRsCtx
tnFvCtxName="TENANT_BASIC_2144"
/>
<fvRsBdToEpRet
resolveAct="resolve"
/>
<fvRsBDToOut
tnL3extOutName="LOCATION-2-1-4-4-MPLS-TENANT-L3OUT-2110"
/>
<fvRsBDToNdP
/>
</fvBD>
<!-- Tag_8 DC PE ロケーション 2-1 に対するアプリケーション プロファイルの構成 -->
<fvAp
name="LOCATION-2-1-2-1-AP2106"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG106"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-105/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2106"
/>
</fvAEPg>
</fvAp>
<!-- Tag_9 DC PE ロケーション 2-1-2-1 へのアプリケーション プロファイル構成 -->
<fvAp
name="LOCATION-2-1-AP2105"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG105"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="immediate"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-101/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="immediate"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2105"
/>
</fvAEPg>
</fvAp>
<!-- Tag DC PE ロケーション 2-1-2-2 に向かうアプリケーション プロファイル設定 -->
<fvAp
name="LOCATION-2-1-2-2-AP2107"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG107"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-107/pathep-[eth1/10]"
/>
<fvRsDomAtt bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2107"
/>
</fvAEPg>
</fvAp>
<!-- DC PE ロケーション 2-1-3-3 および 2-1-4-4 に対するアプリケーション プロファイルの設定 -->
<fvAp
name="LOCATION-2-1-3-3-AP2109"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG109"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-111/pathep-[eth1/10]"
/>
<fvRsDomAtt
bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2109"
/>
</fvAEPg>
</fvAp>
<fvAp
name="LOCATION-2-1-4-4-AP2110"
prio="unspecified"
>
<fvAEPg
floodOnEncap="disabled"
hasMcastSource="no"
isAttrBasedEPg="no"
matchT="AtleastOne"
name="EPG110"
pcEnfPref="unenforced"
prefGrMemb="exclude"
prio="unspecified"
shutdown="no"
>
<fvRsProv
intent="install"
matchT="AtleastOne"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsPathAtt
encap="vlan-2101"
instrImedcy="lazy"
mode="regular"
primaryEncap="unknown"
tDn="topology/pod-1/paths-113/pathep-[eth1/10]"
/>
<fvRsDomAtt
bindingType="none"
classPref="encap"
encap="unknown"
encapMode="auto"
epgCos="Cos0"
epgCosPref="disabled"
instrImedcy="lazy"
netflowDir="both"
netflowPref="disabled"
numPorts="0"
portAllocation="none"
primaryEncap="unknown"
primaryEncapInner="unknown"
resImedcy="lazy"
secondaryEncapInner="unknown"
switchingMode="native"
tDn="uni/phys-phys"
untagged="no"
/>
<fvRsCons
intent="install"
prio="unspecified"
tnVzBrCPName="default"
/>
<fvRsCustQosPol
/>
<fvRsBd
tnFvBDName="BD2110"
/>
</fvAEPg>
</fvAp>
</fvTenant>
</imdata>
設計
非 SR ネットワークで MPLS ハンドオフを使用することは完全に問題ありません。
このモデルでは、直接接続された DC-PE アーキテクチャとリモート DC-PE アーキテクチャの両方が機能します。次の図は、LDPoRSVP を実行するアクセス ネットワークを使用したリモート DC-PE アーキテクチャを示しています。

LDPoRSVP アクセス ネットワークを使用したリモート DC-PE
SR ベースのアーキテクチャと比較して 1 つの変更があります。BGP-LU を使用する場合、BL/RL およびアクセス ルータは BGP プレフィックス SID 属性をアドバタイズしません。BGP-LU アップデートは、通常の MPLS ラベル値のみを伝送します。
次の 2 つの出力では、SR/MPLS ハンドオフと通常の MPLS ハンドオフ間の BGP-LU の違いが強調表示されています。
SR-MPLS ハンドオフ
ifav204-leaf13# show bgp ipv4 labeled-unicast 201.221.201.1
BGP routing table information for VRF overlay-1, address family IPv4 Label Unicast
BGP routing table entry for 201.221.201.1/32, version 35 dest ptr 0xa4a01374
Paths: (6 available, best #4)
Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW
label af: version 42, (0x100002) on xmit-list
Path type: external 0x40000028 0x0 ref 0 adv path ref 0, path is valid, not best reason: MED
AS-Path: 1 , path sourced external to AS
120.1.111.2 (metric 0) from 120.1.111.2 (201.221.211.4)
Origin incomplete, MED 30000, localpref 100, weight 0 tag 0, propagate 0
Received label 42
Prefix-SID Attribute: Length: 10
Label Index TLV: Length 7, Flags 0x0 Label Index 9001
ACC2-1-R4#show bgp ipv4 unicast 20.204.113.1
BGP routing table entry for 20.204.113.1/32, version 272
Paths: (3 available, best #2, table default, not advertised to any peer)
Multipath: eBGP
Net local label from SRGB
Not advertised to any peer
Refresh Epoch 1
987654321
120.1.111.1 from 120.1.111.1 (30.204.113.1)
Origin IGP, localpref 100, valid, external, multipath
sr-labelindex 0x2B21
Community: 1:50002 no-advertise
mpls labels in/out 27041/imp-null
rx pathid: 0, tx pathid: 0
Updated on Sep 2 2020 16:28:06 UTC
Regular MPLS Handoff:
ifav203-leaf12# show bgp ipv4 labeled-unicast 201.231.201.1
BGP routing table information for VRF overlay-1, address family IPv4 Label Unicast
BGP routing table entry for 201.231.201.1/32, version 7 dest ptr 0xa4b23920
Paths: (2 available, best #2)
Flags: (0x08001a 00000000) on xmit-list, is in urib, is best urib route, is in HW
label af: version 10, (0x100002) on xmit-list
Path type: external 0x40020028 0x0 ref 0 adv path ref 0, path is valid, not best reason: newer EBGP path, multipath
AS-Path: 103001 , path sourced external to AS
120.1.82.2 (metric 0) from 120.1.82.2 (201.231.211.1)
Origin incomplete, MED not set, localpref 100, weight 0 tag 0, propagate 0
Received label 29
ACC3-1-R2#show bgp ipv4 unicast 20.203.112.1
BGP routing table entry for 20.203.112.1/32, version 133962685
Paths: (1 available, best #1, table default)
Path advertised to update-groups:
6
Refresh Epoch 1
100
120.1.84.1 from 120.1.84.1 (30.203.112.1)
Origin IGP, localpref 100, valid, external, best
mpls ラベルのイン/アウト 58/imp-null
rx pathid: 0, tx pathid: 0x0
Updated on Aug 22 2020 02:40:02 UTC
構成
アクセスルータ
「segment-routing mpls」キーワードを BGP 設定でアクティブにしないでください。
router bgp 103001
bgp router-id 201.231.211.2
bgp log-neighbor-changes
no bgp default ipv4-unicast
neighbor ACI-site-LU peer-group
neighbor ACI-site-LU remote-as 100
neighbor ACI-site-LU fall-over bfd
neighbor 120.1.83.1 peer-group ACI-site-LU
neighbor 120.1.84.1 peer-group ACI-site-LU
!
address-family ipv4
bgp nexthop trigger delay 0
segment-routing mpls
neighbor ACI-site-LU route-map ADVERTISE-LOOPBACKS-TO-LU out
neighbor ACI-site-LU send-label
neighbor 120.1.83.1 activate
neighbor 120.1.84.1 activate
exit-address-family
!
デバイスが XR デバイスの場合、DC-PE のループバックを BGP-LU に再配布するときにラベルインデックスを設定しないでください。
router bgp 1
bgp router-id 201.201.201.2
address-family ipv4 unicast
redistribute connected route-policy CONNECTED-TO-BGP-LU(2)
allocate-label all
!
!
prefix-set PFXSET-OWN-LO0
201.201.201.2/32
end-set
!
route-policy CONNECTED-TO-BGP-LU($node_sid)
if destination in PFXSET-OWN-LO0 then
set label-index $node_sid
pass
endif
end-policy
!
セグメント ルーティングを無効にする ACI インフラ テナントの設定例
前述の PE の設定と同様に、BGP LU ピア設定でセグメント ルーティングを無効にします。
<bgpPeerP addr="120.1.81.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
annotation=""
ctrl="segment-routing-disable"
descr=""
name=""
nameAlias=""
peerCtrl="bfd"
privateASctrl=""
ttl="1"
userdom=""
weight="0">
SR が無効になっているリーフ インターフェイス プロファイルの設定例を次に示します。
<!-- Tag:DC PE へのピアのセグメント ルーティングを無効にします。この構成は、SR MPLS インフラ L3out のノード プロファイルの下のリーフ インターフェイス プロファイルに入ります-->
<l3extLIfP annotation=""
descr=""
name="1-2-1-1_interfaceProfile"
nameAlias=""
ownerKey=""
ownerTag=""
prio="unspecified"
tag="yellow-green"
userdom="">
<l3extRsPathL3OutAtt addr="120.1.81.1/24"
annotation=""
autostate="disabled"
descr=""
encap="unknown"
encapScope="local"
ifInstT="l3-port"
ipv6Dad="enabled"
llAddr="::"
mac="00:22:BD:F8:19:FF"
mode="regular"
mtu="9000"
tDn="topology/pod-2/paths-111/pathep-[eth1/1]"
targetDscp="unspecified"
userdom="">
<bgpPeerP addr="120.1.81.2"
addrTCtrl="af-label-ucast,af-ucast"
adminSt="enabled"
allowedSelfAsCnt="3"
annotation=""
ctrl="segment-routing-disable"
descr=""
name=""
nameAlias=""
peerCtrl="bfd"
privateASctrl=""
ttl="1"
userdom=""
weight="0">
<bgpRsPeerPfxPol annotation=""
tnBgpPeerPfxPolName=""
userdom=""/>
<bgpAsP annotation=""
asn="103001"
descr=""
name=""
nameAlias=""
userdom=""/>
</bgpPeerP>
</l3extRsPathL3OutAtt>
</l3extLIfP>
このセクションでは、この CVD のフレームワークで検証されたテストのリストを示します。
表 2. トポロジと設計
| テストタイプ |
テストの詳細 |
| RL/BL から PE の物理/論理接続 |
BL/RL と PE 間のダイレクト 10GE リンク |
| BL/RL と PE 間の 10GE リンクを介した VLAN |
|
| BL/RL と PE 間の 10GE リンクのポートチャネル |
|
| BL/RL と PE 間の 10GE リンクのポートチャネル上の VLAN |
|
| BL/RL と PE 間の複数のパラレル IP リンク。ポートチャネル、サブインターフェイス、物理インターフェイスの組み合わせである各 IP リンク。 |
|
| RL/BL から PE へのアンダーレイ タイプ |
この CVD では、IPv4 アンダーレイのみが評価されています。 |
| EVPN セッション |
データ プレーンとコントロール プレーンに同じループバック アドレスを使用する EVPN セッション |
| データ プレーンとコントロール プレーンに異なるループバック アドレスを使用する EVPN セッション |
|
| マルチホップ BFD を使用する EVPN セッション |
|
| L3アウト |
BL/RL 上の単一の MPLS インフラ L3out |
| BL/RL 上の複数の MPLS インフラ L3out |
|
| 個別のインターフェイスを使用した BL/RL での通常の L3out と MPLS インフラ L3out の混在 |
|
| DC-PE タイプ |
NCS5500 |
| ASR9000(Typhoon および tomahawk ラインカード) |
|
| マルチホーミング |
各 BL/RL は 2 つの DC-PE に接続される |
| ロードバランシング |
RL/BL と DC-PE 間の複数 IP リンク |
| RL/BL と DC-PE 間のポートチャネル |
|
| BGP LU レベルの BGP マルチパス |
|
| EVPN レベルでの BGP マルチパス |
|
| リモート DC-PE |
BGP-LU ルートは DC-PE によって IGP で再配布される |
| BGP-LU は DC-PE によって SR または LDP を介してトンネリングされる |
|
| LDP サポート |
直接接続された DC-PE および RL/BL(SR なし) |
| SR がアクティブ化されていないリモート DC-PE を使用した RL/BL |
|
| サービスチェーニング |
トラフィックは SR/MPLS L3out を使用して Cisco ACI ファブリックに着信し、トラフィックはサービス グラフに誘導され、最終的に SR/MPLS L3out を使用してファブリックに存在します。 |
| トランジットとしての ACI |
異なる BL 異なる VRF トランジット 異なる BL 同一の VRF トランジット 同一の BL 異なる VRF トランジット |
| テストのモード |
APIC UI の設定 XML Post の設定 |
表 3. Failures
| テストタイプ |
テストの詳細 |
| リンク障害 |
RL/BL から DC-PE へのシングル リンク障害、RL/BL が DC-PE に直接接続されている |
| RL/BL から DC-PE へのポートチャネル メンバーのリンク障害、RL/BL が DC-PE に直接接続されている |
|
| DC-PE からコアへのリンク障害 |
|
| PE にアクセスするための RL/BL のシングル リンク障害。RL/BL はリモート DC-PE を使用する |
|
| ノード障害 |
RL/BL リロード |
| RL/BL クラッシュ |
|
| BL/RL クリーン リロード |
|
| DC-PE リロード |
|
| DC-PE クラッシュ |
表 4. 設定トリガー
| テストタイプ |
テストの詳細 |
| ACI 設定トリガー |
CP/DP TEPの変更 |
| SRGB 範囲の増減 |
|
| トラフィックを許可またはドロップするように契約/セキュリティポリシーを変更する |
|
| エクスポート/インポートポリシーの変更によるルートの許可/拒否 |
|
| EVPN RT の変更 |
|
| VRF の追加/削除 |
|
| BD サブネットの変更 |
|
| リーフノード プロファイルの追加/削除 |
|
| リーフ インターフェイス プロファイル |
|
| BGP ASNの変更(4 バイトから 2 バイト) |
|
| BGP ルータ ID の追加/削除 |
|
| BGP カラーの変更 |
|
| DC PE 設定トリガー |
BGP VPN/EVPN RT の変更 |
| リモート ASN の変更 |
|
| SRGB 範囲の変更 |
|
| BGP ピアのシャット/非シャットダウン |
表 5. トラフィックステアリング
| テストタイプ |
テストの詳細 |
| BGP カラー |
BL/RL のテナント サブネットに関連付けられている BGP カラーを変更し、リモート DC-PE が適切なポリシーを使用してトラフィックをステアリングしていることを確認します。 |
| BL/RL で同じ VRF で異なるカラーを使用する異なるプレフィックスを設定する |
1. XR での VRF のスティッチングは、再発信する必要がある受信ルートとは異なるルート識別子を使用する必要があります。
2. iBGP は、DC-PE とボーダー/リモートリーフ間ではサポートされていません。
ACI から SR/MPLS アーキテクチャへのホワイトペーパー
SR/MPLS ハンドオフ設定時のガイドライン
![]()
