内容

はじめに

前提条件

要件

使用するコンポーネント

表記法

背景説明

ネットワーク シナリオ

AS 4から発信されたネットワークだけがルータ1に入ることを許可する

AS 4 を経由したネットワークだけに AS 3 への接続を許可

AS 3 を入れるためにAS 4で発生したネットワークを拒否し他のすべてのネットワークを許可する方法

AS 4 および AS 4 に直接接続された AS から発信したネットワークだけにルータ 1 への接続を許可

関連情報

はじめに

このドキュメントでは、ボーダーゲートウェイプロトコル(BGP)で正規表現(regex)を使用する方法について説明します。

前提条件

要件

次の項目に関する専門知識があることが推奨されます。

- 基本的なBGP設定

使用するコンポーネント

このドキュメントの情報は、Cisco IOS® ソフトウェア リリース 12.0 に基づいています。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

背景説明

Border Gateway Protocol（BGP；ボーダーゲートウェイプロトコル）の ip as-path access-list コマンドでは、正規表現を使用できます。正規表現に関する一般情報については、正規表現に関するシスコのドキュメンテーションを参照してください。BGPの基本設定の詳細については、「BGPケーススタディ」および「基本的なBGPネットワークの設定」を参照してください。

ネットワーク シナリオ

このドキュメントで参照するネットワークダイアグラムを次に示します。

AS 4から発信されたネットワークだけがルータ1に入ることを許可する

ルータ1がAS 4から発信されたルートだけを受信し（インターネットルートを受信しない）、ルータ1に着信アクセスリストを適用します。

ip as-path access-list 1 permit ^4$

router bgp 1

neighbor 10.4.4.4 remote-as 4

neighbor 10.4.4.4 route-map foo in

route-map foo permit 10

match as-path 1

これにより、AS 4 から発信されたネットワークだけがルータ 1 に着信できます。

AS 4 を経由したネットワークだけに AS 3 への接続を許可

AS 4を通過したネットワークだけがルータ3からAS 3に入るようにする場合は、ルータ3に着信フィルタを適用します。

ip as-path access-list 1 permit _4_

router bgp 3

neighbor 10.2.2.2 remote-as 1

neighbor 10.2.2.2 route-map foo in

route-map foo permit 10

match as-path 1

ip as-path access-list コマンドでは、入力文字列および出力文字列にアンダースコア（_）を使用できます。

注：この例では、アンカー（たとえば、^がない）は使用されないため、AS 4の前後にどのような自律システム(AS)が来ても関係ありません。

AS 3 を入れるためにAS 4で発生したネットワークを拒否し他のすべてのネットワークを許可する方法

AS 4から発信されたすべてのネットワークを拒否して、他のすべてのルートがルータ3からAS 3に入ることを許可する場合は、ルータ3で着信フィルタを適用できます。

ip as-path access-list 1 deny _4$

ip as-path access-list 1 permit .*

router bgp 3

neighbor 10.2.2.2 remote-as 1

neighbor 10.2.2.2 route-map foo in

route-map foo permit 10

match as-path 1

AS 4 および AS 4 に直接接続された AS から発信したネットワークだけにルータ 1 への接続を許可

AS 4およびAS 4に直接接続されているすべてのASから発信されたネットワークをAS 1で取得するには、ルータ1に次の着信フィルタを適用します。

ip as-path access-list 1 permit ^4_[0-9]*$

router bgp 1

neighbor 10.4.4.4 remote-as 4

neighbor 10.4.4.4 route-map foo in

route-map foo permit 10

match as-path 1

ip as-path access-list コマンドでは、キャラット(^)が入力文字列を開始し、「AS」を指定します。アンダースコア(_)は、AS 4の後の文字列にヌル文字列があることを意味します。[0-9]*は、有効なAS番号を持つすべての接続ASがフィルタを通過できることを指定します。[0-9]*構文の利点は、このコマンド文字列を変更することなく、任意の数のASを柔軟に追加できることです。詳細は、『AS 正規表現』を参照してください。

関連情報

- IP ルーティングに関するサポート ページ

- シスコのテクニカルサポートとダウンロード