例:ポリシー フィルターを使用した EVPN ルートのフィルタリング
Junos では、ルーティング ポリシーを使用して、BGP(境界ゲートウェイプロトコル)ルート アドバタイズメントを制御したり、異なるアドレス ファミリーを使用してルートをフィルタリングしたりできます。ただし、EVPN(イーサネット VPN)は BGP を使用して異なる PE ルーター間で MAC-IP アドレスを交換しますが、EVPN ルート プレフィックス形式や BGP アップデート メッセージにエンコードされた拡張コミュニティ情報などの違いにより、EVPN ルートをフィルタリングするには特別な一致条件が必要になります。
このトピックの例は、EVPN ルートをフィルタリングするために Junos で利用できるさまざまなルーター設定を示しています。
必要条件
EVPN ルート フィルタリングは、Junos リリース 19.4R1 以降を実行している MX、VMX、EX、ACX、QFX の各デバイスでサポートされています。これは、階層の routing-instance
レベル( vrf-export または vrf-import ポリシーで設定されている場合)と protocols bgp
レベル(ポリシーを有効にするために vpn-apply-export
も設定する必要がある)で使用できます。
概要
ポリシー フィルターを使用して、EVPN ルートをフィルタリングできます(たとえば、特定の拡張コミュニティ属性を指定できます)。ルートは、ポリシーの from 修飾子で指定した一致条件に従ってフィルタリングされます。EVPNルートでサポートされる一致条件には、EVPN NLRIタイプ、BGPパス属性、ルート識別素、EVPNイーサネットタグ、ESI(イーサネットセグメント識別子)、EVPNタイプ2ルートのMACアドレスなどがあります。
local-preference、as-path、community、next-hop、metric、origin の各ルート フィルターもサポートされています。
アクションは、ポリシーで指定された then 修飾子で指定した基準に従って実行されます。
サポートされている一致条件とアクションの完全なリストと説明については、 EVPNのルーティングポリシー を参照してください。
位相幾何学
次のネットワーク シナリオは、さまざまな EVPN 一致条件の設定に使用される構成を示しています。
基本構成
- CLIクイック構成
- EVPN NLRIタイプに基づくBGP EVPNルートのフィルタリング
- ルート識別子に基づくBGP EVPNルートのフィルタリング
- EVPNイーサネットタグに基づくBGP EVPNルートのフィルタリング
- ESIに基づくBGP EVPNルートのフィルタリング
- IP アドレスに基づいて BGP EVPN タイプ 2 およびタイプ 5 ルートをフィルタリングします。
- MAC アドレスを使用した BGP EVPN タイプ 2 ルートのフィルタリング
- IP アドレスを含む(または含まない)BGP EVPN タイプ 2 ルートのフィルタリング
- EVPN拡張コミュニティに従ったBGP EVPNルートのフィルタリング
- EVPNタイプ2ルートからEVPNタイプ5ルートへのコミュニティ情報のコピー
CLIクイック構成
EVPNルートの場合、階層の routing-instance
レベルまたは protocols bgp
レベルでポリシーを適用できます。両方の設定を以下に示します。 routing-instance
レベルでは、ポリシーは vrf-export
ポリシーまたは vrf-import
ポリシーとして適用されます。 エクスポート ポリシーが BGP グループレベルで適用される場合、ポリシーが正しく機能するために vpn-apply-export
を設定する必要があります。
ケース1は、ポリシーが階層のBGPレベルで適用される場合のステートメント vpn-apply-export
の必須の使用を示しています。
この例を使用するには、設定階層のさまざまなレベルに移動する必要があります。CLIのナビゲーションについては、「 1 コンフィグレーション・モードでのCLIエディタの使用」を参照してください。
例をすばやく設定するには、コマンドのリストをコピーしてテキストファイルに貼り付け、改行を削除して、ネットワーク構成に合わせて必要な詳細を変更し、 [edit]
階層レベルのCLIにコマンドをコピー&ペーストしてください。
ケース1: 階層のプロトコルBGPレベルでポリシーを適用する
set protocols bgp group evpn-sessions type internal set protocols bgp group evpn-sessions local-address 10.255.255.4 set protocols bgp group evpn-sessions import bgp-evpn-exp set protocols bgp group evpn-sessions family evpn signaling set protocols bgp group evpn-sessions neighbor 10.255.255.1 set protocols bgp group evpn-sessions neighbor 10.255.255.6 set protocols bgp group evpn-sessions neighbor 10.255.255.8 set protocols bgp group evpn-sessions vpn-apply-export set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from nlri-route-type 2 set policy-options policy-statement bgp-evpn-exp term 1 from nlri-route-type 3 set policy-options policy-statement bgp-evpn-exp term 1 then community add COM5 set policy-options policy-statement bgp-evpn-exp term 1 then as-path-prepend 999
ケース 2 は、階層のルーティング インスタンス レベルで一致条件が適用される場合に、ステートメント vrf-export
と vrf-import
の必須の使用を示しています。
EVPN は、8 つの異なるルート タイプを使用してレイヤー 2 接続を拡張します。EVPN NLRI ルート タイプは、BGP アップデート メッセージのルート プレフィックス フィールドの最初のオクテットで定義されます。
Junos では、ESI ごとのタイプ 1 AD、タイプ 4 ES、タイプ 7 IGMP join、およびタイプ 8 IGMP leave の EVPN ルートタイプは、特定のルーティング インスタンスに固有のルートではありません。代わりに、エクスポート時にデフォルトのルーティング インスタンス テーブルに自動的に追加されます。その結果、ルーティング インスタンス、vrf-export、または vrf-import ポリシーは、これらのルート タイプには適用されません。これらのルートにエクスポート・ポリシーを適用したい場合は、階層のBGPエクスポート・レベルで行う必要があります。ESI、タイプ4、タイプ7、およびタイプ8ルートごとにタイプ1をインポートする場合も同様です(デフォルトルーティング インスタンステーブルに自動的にインポートされます)。そのため、これらのルートタイプにインポートポリシーを適用するには、ルーティングインスタンスレベルではなく、階層のBGPインポートレベルで行う必要があります。
ケース 2: 階層のルーティング インスタンス レベルでポリシーを適用します。
set routing-instances evpa protocols evpn set routing-instances evpa instance-type evpn set routing-instances evpa vlan-id none set routing-instances evpa routing-interface irb.600 set routing-instances evpa interface ge-0/0/1.600 set routing-instances evpa route-distinguisher 2:3 set routing-instances evpa vrf-export vrf-exp-pol set routing-instances evpa vrf-target target:1:1 set policy-options policy-statement vrf-exp-pol term 1 from family evpn set policy-options policy-statement vrf-exp-pol term 1 from nlri-route-type 1 set policy-options policy-statement vrf-exp-pol term 1 then community add COM11 set policy-options policy-statement vrf-exp-pol term 1 then accept
EVPN NLRIタイプに基づくBGP EVPNルートのフィルタリング
CLIクイック構成
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
EVPN NLRIタイプに基づくBGP EVPNルートのフィルタリング
set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from nlri-route-type 2 set policy-options policy-statement bgp-evpn-exp term 1 from nlri-route-type 3 set policy-options policy-statement bgp-evpn-exp term 1 then community add COM5 set policy-options policy-statement bgp-evpn-exp term 1 then as-path-prepend 999 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.4 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.6 set protocols bgp group evpn-session neighbor 10.255.255.8 set protocols bgp group evpn-session vpn-apply-export
手順
BGP パス属性に基づく BGP EVPN ルートのフィルタリングを設定するには:
フィルタリングしたいBGPパス属性(複数のタイプを括弧で囲み、スペースで区切る)と、一致したルートに対して実行するアクションを設定します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from nlri-route-type [2 3] user@PE1# set term 1 then community add COM5 user@PE1# set term 1 then as-path-prepend 999
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.4 user@PE1# set family evpn signaling user@PE1# set import bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.6 user@PE1# set neighbor 10.255.255.8 user@PE1# set vpn-apply-export
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、 show policy-options policy-statement bgp-evpn-exp
、、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; nlri-route-type [ 2 3 ]; } then { community add COM5; as-path-prepend 999; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.4; export bgp-evpn-exp; family evpn { signaling; neighbor 10.255.255.1; neighbor 10.255.255.6; neighbor 10.255.255.8; vpn-apply-export; }
ルート識別子に基づくBGP EVPNルートのフィルタリング
CLIクイック構成
ルート識別子(RD)情報は、EVPNルートプレフィックスにエンコードされます。この例では、ルートの識別に基づいてEVPNルートをフィルタリングする方法を示しています。
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
ルート識別子に基づくBGP EVPNルートのフィルタリング
set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from route-distinguisher 100:200 set policy-options policy-statement bgp-evpn-exp term 1 then community add COM5 set policy-options policy-statement bgp-evpn-exp term 1 then as-path-prepend 999 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.4 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.6 set protocols bgp group evpn-session neighbor 10.255.255.8 set protocols bgp group evpn-session vpn-apply-export
手順
ルート識別子に基づくBGP EVPNルートのフィルタリングを設定するには:
フィルタリングするルートの識別と、一致するルートに対して実行するアクションを設定します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from route-distinguisher 100:200 user@PE1# set term 1 then community add COM5 user@PE1# set term 1 then as-path-prepend 999
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.4 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.6 user@PE1# set neighbor 10.255.255.8 user@PE1# set vpn-apply-export
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、 show policy-options policy-statement bgp-evpn-exp
、 show policy-options route-distinguisher RD1
、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; route-distinguisher 100:200; } then { community add COM5; as-path-prepend 999; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.4; import bgp-evpn-exp; family evpn { signaling; neighbor 10.255.255.1; neighbor 10.255.255.6; neighbor 10.255.255.8; vpn-apply-export; }
EVPNイーサネットタグに基づくBGP EVPNルートのフィルタリング
CLIクイック構成
EVPNイーサネットタグ情報(またはvlan-id情報)は、EVPNルートのプレフィックスで伝送されます。この例では、ルートのプレフィックスで運ばれるイーサネットタグに基づいてEVPNルートをフィルタリングする方法を示しています。このフィルタリングオプションを設定する場合は、 family evpn
修飾子を含める必要があることに注意してください。
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
EVPNイーサネットタグに基づくBGP EVPNルートのフィルタリング
set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from evpn-tag [ 10 12 13 ] set policy-options policy-statement bgp-evpn-exp term 1 then community add COM5 set policy-options policy-statement bgp-evpn-exp term 1 then as-path-prepend 999 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.4 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.6 set protocols bgp group evpn-session neighbor 10.255.255.8 set protocols bgp group evpn-session vpn-apply-export
手順
EVPNイーサネットタグに基づいてBGP EVPNルートのフィルタリングを設定するには:
フィルタリングするEVPNイーサネットタグと、一致するルートに対して実行するアクションを設定します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from evpn-tag [ 10 12 13 ] user@PE1# set term 1 then community add COM5 user@PE1# set term 1 then as-path-prepend 999
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.4 user@PE1# set family evpn signaling user@PE1# set import bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.6 user@PE1# set neighbor 10.255.255.8 user@PE1# set vpn-apply-export
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、 show policy-options policy-statement bgp-evpn-exp
コマンドと show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; evpn-tag [ 10 12 13 ]; } then { community add COM5; as-path-prepend 999; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.4; import bgp-evpn-exp; family evpn { signaling; neighbor 10.255.255.1; neighbor 10.255.255.6; neighbor 10.255.255.8; vpn-apply-export; }
ESIに基づくBGP EVPNルートのフィルタリング
CLIクイック構成
イーサネットセグメント識別子(ESI)ベースのポリシーフィルターは、プレフィックスにESI情報を含む唯一のタイプであるタイプ1、タイプ2、タイプ4、タイプ7、およびタイプ8のルートに使用できます。
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
ESIに基づくBGP EVPNルートのフィルタリング
set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from evpn-esi 00:11:22:33:44:55:66:77:88:99 set policy-options policy-statement bgp-evpn-exp term 1 then community add COM1 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.8 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session vpn-apply-export set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.4 set protocols bgp group evpn-session neighbor 10.255.255.6
手順
ESI に基づく BGP EVPN ルートのフィルタリングを設定するには:
フィルタリングするEVPN ESIと、一致するルートに対して実行するアクションを設定します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from evpn-esi 00:11:22:33:44:55:66:77:88:99 user@PE1# set term 1 then community add COM1
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.8 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set vpn-apply-export user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.4 user@PE1# set neighbor 10.255.255.6
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、show protocols bgp group evpn-sessions
show policy-options policy-statement bgp-evpn-exp
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; evpn-esi 00:11:22:33:44:55:66:77:88:99; } then { community add COM1; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.8; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.4; neighbor 10.255.255.6; }
IP アドレスに基づいて BGP EVPN タイプ 2 およびタイプ 5 ルートをフィルタリングします。
CLIクイック構成
EVPN プレフィックス フィールドに埋め込まれた IPv4 または IPv6 アドレスを使用して、EVPN タイプ 2 およびタイプ 5 ルートをフィルタリングできます。以下の prefix-list
修飾子と route-filter
修飾子もサポートされています。
プレフィックスリストから
from prefix-list-filter [ exact | longer | orlonger ]
from route-filter [ address-mask | exact | longer | orlonger | prefix-length-range | through | upto ]
route-filter-listから
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
IP アドレスに基づく BGP EVPN タイプ 2 およびタイプ 5 ルートのフィルタリング
set policy-options prefix-list pp1 10.1.1.10/32 set policy-options prefix-list pp1 10.1.1.11/32 set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from prefix-list pp1 set policy-options policy-statement bgp-evpn-exp term 1 then community add COM1 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.8 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session vpn-apply-export set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.4 set protocols bgp group evpn-session neighbor 10.255.255.6
手順
IP アドレスに基づく BGP EVPN タイプ 2 およびタイプ 5 ルートのフィルタリングを設定するには:
ポリシーステートメントで使用するプレフィックスリストを作成します。
[ edit policy-options prefix-list pp1] user@PE1# set 10.1.1.10/32 user@PE1# set 10.1.1.11/32
フィルタリングするタイプ2およびタイプ5のIPアドレスと、一致するルートに対して実行するアクションを設定します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from prefix-list pp1 user@PE1# set term 1 then community add COM1
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.8 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set vpn-apply-export user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.4 user@PE1# set neighbor 10.255.255.6
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、 show policy-options policy-statement bgp-evpn-exp
コマンドと show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options prefix-list pp1 10.1.1.10/32; 10.1.1.11/32;
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; prefix-list pp1; } then { community add COM1; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.8; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.4; neighbor 10.255.255.6; }
MAC アドレスを使用した BGP EVPN タイプ 2 ルートのフィルタリング
CLIクイック構成
EVPN プレフィックスの MAC アドレスを使用して、EVPN タイプ 2 ルートをフィルタリングできます。
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
MAC アドレスを使用した BGP EVPN タイプ 2 ルートのフィルタリング
set policy-options mac-list mfl1 01:87:88:04:50:00 set policy-options mac-list mfl1 02:87:88:04:50:00 set policy-options mac-list mfl1 03:87:88:04:50:00 set policy-options mac-list mfl1 04:87:88:04:50:00 set policy-options mac-list mfl1 05:87:88:04:50:00 set policy-options mac-list mfl1 06:87:88:04:50:00 set policy-options mac-list mfl1 07:87:88:04:50:00 set policy-options mac-list mfl1 08:87:88:04:50:00 set policy-options mac-list mfl1 64:87:88:04:50:00 set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from mac-filter-list mfl1 set policy-options policy-statement bgp-evpn-exp term 1 then accept set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.8 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session vpn-apply-export set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.4 set protocols bgp group evpn-session neighbor 10.255.255.6
手順
MAC アドレスを使用した BGP EVPN タイプ 2 ルートのフィルタリングを設定するには:
フィルタリングするMACアドレスのリストを作成します(この例ではmfl1 )。
[edit policy-options mac-list mfl1] user@PE1# set 01:87:88:04:50:00; user@PE1# set 02:87:88:04:50:00; user@PE1# set 03:87:88:04:50:00; user@PE1# set 04:87:88:04:50:00; user@PE1# set 05:87:88:04:50:00; user@PE1# set 06:87:88:04:50:00; user@PE1# set 07:87:88:04:50:00; user@PE1# set 08:87:88:04:50:00;
フィルタリングするMACアドレスのリストと、実行するアクション(この例ではAccept)を適用します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from mac-filter-list mfl1 user@PE1# set term 1 then accept
BGP グループプロトコルセッションを設定します。
[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.8 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.4 user@PE1# set neighbor 10.255.255.6 user@PE1# set vpn-apply-export
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、 show policy-options mac-list mfl1
、 show policy-options policy-statement bgp-evpn-exp
、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options mac-list mfl1 01:87:88:04:50:00; 02:87:88:04:50:00; 03:87:88:04:50:00; 04:87:88:04:50:00; 05:87:88:04:50:00; 06:87:88:04:50:00; 07:87:88:04:50:00; 08:87:88:04:50:00;
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; mac-filter-list mfl1; } then { accept; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.8; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.4; neighbor 10.255.255.6; }
IP アドレスを含む(または含まない)BGP EVPN タイプ 2 ルートのフィルタリング
CLIクイック構成
EVPNタイプ2のルートはMACアドレスを持ち、さらにプレフィックスにIPアドレス(IPv4またはIPv6)を持つことができます。BGP EVPN タイプ 2 フィルターを使用すると、タイプ 2 ルートが MAC アドレスのみ、MAC アドレスと IPv4 アドレス、または MAC アドレスと IPv6 アドレス(特定の IP アドレスではなく、プレフィックス内の任意の IP アドレス)のいずれであるかに基づいてフィルタリングできます。これらのオプションは相互に排他的です。
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
MAC アドレスのみによる BGP EVPN タイプ 2 ルートのフィルタリング
set policy-options policy-statement bgp-evpn-exp term 1 from family evpn set policy-options policy-statement bgp-evpn-exp term 1 from evpn-mac-route mac-only set policy-options policy-statement bgp-evpn-exp term 1 then community add COM1 set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.8 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session vpn-apply-export set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.4 set protocols bgp group evpn-session neighbor 10.255.255.6
手順
MAC アドレスのみで BGP EVPN タイプ 2 ルートのフィルタリングを設定するには:
ポリシーと実行するアクションを作成します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from family evpn user@PE1# set term 1 from evpn-mac-route mac-only user@PE1# set term 1 then community add COM1
BGPグループプロトコルセッションを設定します(ここでは
export bgp-evpn-exp
ポリシーを適用します)。[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.8 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.4 user@PE1# set neighbor 10.255.255.6
業績
設定結果を確認するには、CLI階層の最上位にある設定モードから、、 show policy-options policy-statement bgp-evpn-exp
、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; evpn-mac-route mac-only; } then { community add COM1; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.8; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.4; neighbor 10.255.255.6; }
EVPN拡張コミュニティに従ったBGP EVPNルートのフィルタリング
CLIクイック構成
BGP EVPNルートは、BGPアップデートメッセージパス属性で伝送される一連の拡張コミュニティを持つことができます。そのため、これらの拡張コミュニティーを使用してBGP EVPNルートをフィルタリングできます。.拡張コミュニティーに含まれるEVPN固有の情報には、カプセル化タイプ、MACモビリティ情報、EVPNスプリットホライズンラベル、ESIモード、Eツリーリーフラベルなどがあります。
拡張コミュニティの完全なリストについては、 境界ゲートウェイプロトコル(BGP)拡張コミュニティ を参照してください。
拡張コミュニティは、2 つの主要なセクションに分割された 8 オクテット値であり、通常、 type:administrator:assigned-number の表記を使用します。ただし、BGP EVPN の Junos 設定で EVPN 拡張コミュニティを指定する場合は、単語を使用してタイプを指定する代わりに、すべての値( typeを含む)を 10 進数にします。タイプは 2 オクテットで、上位のオクテットが拡張コミュニティの実際のタイプを定義し、下位のオクテットがコミュニティを定義します。サブタイプ。val1 と val2 は、[2 + 4] オクテットまたは [4 + 2] オクテットとして指定できます。
Junos の拡張コミュニティの一般的な構成:
set policy-optionsコミュニティ name メンバーtype:val1:val2
Junos での BGP EVPN 設定の拡張コミュニティーを数値で指定する。拡張コミュニティの数値表現については、 BGP MPLSベースのイーサネットVPN をご参照ください。
以下の例では、10進数の780を使用して、カプセル化拡張コミュニティ(VXLANなど)と一致させています。780 の場合、拡張タイプ フィールドの上位オクテットの値は 0x03 であり、推移的であることを示します。拡張タイプ フィールドの下位オクテットの値は 0x0c です。したがって、最初の2オクテット値は0x030cであり、これが10進数の780の由来です。 val1 が 0、 val2 が 8 の残りの値フィールドは、VXLAN トンネル タイプの識別に使用されます。
EVPNに関連するトンネルタイプの全リストは、RFC 8365のセクション11(以下のリンク)で定義されていますが、関連するものもいくつかリストされています。
値 8 = VXLAN カプセル化
値 9 = NVGRE カプセル化
値 10 = MPLS カプセル化
値 11 = MPLS (GRE カプセル化)
値 12 = VXLAN GPE カプセル化
詳細については 、RFC 5512, Section 4.5, Reserved field および RFC 8365, Section 11 を参照してください。
ポリシーオプションコミュニティ name メンバー780:0:8を設定します
この例で使用されている set コマンドの完全なリストが最初に示され、その後に同じコマンドがステップバイステップ形式で示され、設定を確認するための手順が続きます。適切に設定されたシステムからの関連出力を確認するために使用できる検証コマンドは、このトピックの最後に示します。
EVPN拡張コミュニティに従ったBGP EVPNルートのフィルタリング
set policy-options community COM5 members 780:0:8 set policy-options policy-statement bgp-evpn-exp term 1 from community COM5 set policy-options policy-statement bgp-evpn-exp term 1 then reject set protocols bgp group evpn-session type internal set protocols bgp group evpn-session local-address 10.255.255.4 set protocols bgp group evpn-session family evpn signaling set protocols bgp group evpn-session export bgp-evpn-exp set protocols bgp group evpn-session neighbor 10.255.255.1 set protocols bgp group evpn-session neighbor 10.255.255.6 set protocols bgp group evpn-session neighbor 10.255.255.8
手順
EVPN拡張コミュニティに従ってBGP EVPNルートのフィルタリングを設定するには:
フィルタリングするコミュニティメンバーと、実行するアクションのリストを作成します。
[edit policy-options] user@PE1# set community COM5 members 780:0:8
フィルタリングするコミュニティメンバーと、実行するアクションのリストを作成します。
[edit policy-options policy-statement bgp-evpn-exp] user@PE1# set term 1 from community COM5 user@PE1# set term 1 then reject
BGPグループプロトコルセッションを設定します(ここでは
export bgp-evpn-exp
ポリシーを適用します)。[edit protocols bgp group evpn-session ] user@PE1# set type internal user@PE1# set local-address 10.255.255.4 user@PE1# set family evpn signaling user@PE1# set export bgp-evpn-exp user@PE1# set neighbor 10.255.255.1 user@PE1# set neighbor 10.255.255.6 user@PE1# set neighbor 10.255.255.8
業績
設定結果を確認するには、CLI階層の最上位にある設定モードから、、 show policy-options policy-statement bgp-evpn-exp
、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options community COM5 members members 780:0:8;
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { community COM5; } then { reject; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.4; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.6; neighbor 10.255.255.8; }
EVPNタイプ2ルートからEVPNタイプ5ルートへのコミュニティ情報のコピー
BGP EVPN フィルタリングを使用して、リモート PE から受信した EVPN タイプ 2 ルート アドバタイズメントからの MAC アドレス(存在する場合)および IPv4 または IPv6 アドレスを EVPN タイプ 5 ルートとして含めることができます。同様に、EVPN タイプ 2 ルートのコミュニティ情報を、 vrf.inet テーブル内のルート(具体的には、VPN-IPv4(AFI/SAFI 1/128)、VPN-IPv6(AFI/SAFI 2/128)、IPv4(AFI/SAFI 1/1)、IPv6(AFI/SAFI 2/1))から生成された EVPN タイプ 5 ルートにコピーできます。
EVPNタイプ2ルートアドバタイズメントに含まれるMACアドレスとIPv4またはIPv6アドレスをEVPNタイプ5に含めるには、次のコマンドを有効にします。
セットルーティングインスタンス、EVPNAプロトコル、EVPNリモート、IP、ホストルート、アドバタイズなしコミュニティ
また、IP と EVPN のルート間で伝送されるルーティング属性を制御することもできます。つまり、EVPN タイプ 5 ルートから IP ルートを生成する場合はインポート方向から含めるルート属性を選択し、IP ルートから EVPN タイプ 5 ルートを生成する場合、エクスポート方向に含めるルート属性も選択できます。これらのルート属性は、 as-path
、 community
、および preference
です。インポート時に community
ルート属性を明示的に含めなかった場合、Junos が vrf.inet.0 テーブルでルート属性を処理する方法により、カラーコミュニティ情報は含まれません(したがって、この情報は影響を受けるルートのネクストホップ解決には利用できません)。
特定のルート属性を含めるには、次のコマンドを使用して、許可またはスキップのインポートまたはエクスポートアクションを設定します(ここでは、インポートアクションは許可です)。
set routing-instances evpna protocols evpn ip-prefix-routes route-attributes as-path import-action allow set routing-instances evpna protocols evpn ip-prefix-routes route-attributes preference import-action allow set routing-instances evpna protocols evpn ip-prefix-routes route-attributes community import-action allow
業績
設定結果を確認するには、CLI 階層の最上位にある設定モードから、、、および show policy-options policy-statement bgp-evpn-exp
、および show protocols bgp group evpn-sessions
コマンドを入力して設定を確認します。出力結果に意図した設定内容が表示されない場合は、この例の手順を繰り返して設定を修正します。
user@PE1# show policy-options policy-statement bgp-evpn-exp term 1 { from { family evpn; evpn-mac-route mac-only; } then { community add COM1; } }
user@PE1# show protocols bgp group evpn-sessions group evpn-sessions { type internal; local-address 10.255.255.8; family evpn { signaling; export bgp-evpn-exp; vpn-apply-export; neighbor 10.255.255.1; neighbor 10.255.255.4; neighbor 10.255.255.6; }
検証
設定が正常に機能していることを確認します。上記の各例について、確認する設定を使用するこれらのコマンドのバージョンを実行します。以下の検証例は、EVPN NLRIタイプに基づいてBGP EVPNルートをフィルタリングする例に基づいています。
さまざまなBGP EVPNフィルタリングの検証
目的
指定された基準に従ってフィルタリングされたBGP EVPNルートに関する情報を表示します。
アクション
ターゲット・デバイスの操作モードから、以下のコマンドを入力します。
user@device> show evpn instance user@device> show evpn instance extensive user@device> show evpn database user@device> show evpn mac-ip-table
PE1の運用モードから、以下のコマンドを入力します。
user@PE1> show route table bgp.evpn.0 user@PE1> show route table EVPN-1.evpn.0 user@PE1> show route table default_evpn__.evpn.0 user@PE1> show route advertising-protocol bgp 100.100.100.2 table bgp.evpn.0 user@PE1> show route advertising-protocol bgp 100.100.100.2 table EVPN-1.evpn.0 user@PE1> show route advertising-protocol bgp 100.100.100.2 table default_evpn__.evpn.0
PE2の運用モードから、以下のコマンドを入力します。
user@PE2> show route receive-protocol bgp 100.100.100.1 table bgp.evpn.0 user@PE2> show route receive-protocol bgp 100.100.100.1 table EVPN-1.evpn.0 user@PE2> show route receive-protocol bgp 100.100.100.1 table default_evpn__.evpn.0 user@PE2> show route table bgp.evpn.0 user@PE2> show route table EVPN-1.evpn.0 user@PE2> show route table default_evpn__.evpn.0