ネットワーク演習 ドキュメント シミュレーターを開く →

BGP — 正規表現マッチ付き expanded community-list

standard の community-list は厳密一致でマッチします。expanded の community-list は表示形式 <asn>:<n> に対する正規表現マッチを可能にします — 「65001: で始まる任意の community に一致」用途に便利です。prefix に 65001:777 を付け、expanded リスト ^65001: を定義し、タグ付き prefix が一致することを確認してデモします。

この演習をブラウザで開く →

無料 · インストール不要 · アカウント不要

シナリオ

community-list は 2 種類: | 種類 | マッチ形式 | 用途 | | --- | --- | --- | | standard | 完全一致値 (例: 65001:100) | 「community がちょうど X なら permit」 | | expanded | 表示文字列に対する正規表現 | 「community が 65001:* なら permit」 | Expanded は COMMUNITIES 属性を空白区切り <asn>:<n> 文字列として表現したものに対してマッチします — 両方を持つ prefix では 65001:100 65001:200 になります。^ / $ で位置固定、単語境界には \b を使ってください。 netverdict の実 Cisco との差分: 実 IOS は _ を境界メタ文字 (空白、カンマ、先頭、末尾に一致) として扱います。netverdict は JavaScript の RegExp をそのまま使うので、境界には \b を使ってください。 この lab では R1 が 192.168.1.0/24 に 65001:777 を付け、R2 が expanded リスト ^65001: を定義して prefix が一致することを確認します。

トポロジー

2 × ルーター · Cisco IOS-style

やること

  1. R1 で outbound prefix に community 65001:777 を付ける route-map を定義し、eBGP 隣接にバインドします。(np-bgp-community-tag-and-filter のパターンを再利用。)

  2. R2 で *expanded* community-list ANY-65001 を定義し、^65001: (AS 部分が 65001 の任意 community) に一致させます。

  3. R2 で route-map MATCH-65001 permit 10 を match community ANY-65001 と set local-preference 200 付きで定義し、R1 に inbound でバインドします。

この演習をブラウザで開く →

同じテーマの演習

この演習の他の言語版

BGP — expanded community-list with regex matchBGP — expanded Community-List mit Regex-MatchBGP — community-list expandida con regexBGP — community-list expandida com match regexBGP — community-list expanded avec match regexBGP — regex match के साथ expanded community-listBGP — 使用正则匹配的 expanded community-listBGP — community-list expanded con match regexBGP — 정규식 매치를 가진 expanded community-listBGP — expanded community-list с regex-совпадениемBGP — regex eşleşmeli expanded community-listBGP — community-list expanded khớp regex