◆ ip as-path access-listコマンドの解説
filter-listにip as-path access-listを指定することで、AS_PATHアトリビュートに基づいたフィルタリングが
可能となります。これにより、1つのASまたは複数のASに含まれる全てのルートをフィルタリングできます。
その際に、ip as-path access-listコマンドでは、正規表現(入力文字列との照合パターン)を使用することで
AS_PATHアトリビュート値のAS情報を柔軟に指定することができます。
◆ AS_PATHアクセスリストの設定
(config)# ip as-path access-list acl-number permit | deny regular-expression
コマンド引数 |
説明 |
acl-number |
ip as-path access-list の番号を 1 〜 500 で指定 |
permit | deny |
ip as-path access-list に合致した時のアクション |
regular-expression |
AS_PATHアトリビュートの情報を指定する正規表現 |
◆ regular-expression
シンボル |
キャラクタ |
説明 |
. |
ピリオド |
任意の1文字と一致 |
^ |
キャレット |
入力文字列の先頭と一致 |
$ |
ドル記号 |
入力文字列の末尾と一致 |
_ |
アンダースコア |
数字以外の任意の文字と一致( スペースの一致も含む ) |
* |
アスタリスク |
0個以上のパターン列と合致(直前の文字の0回以上の繰り返し) |
+ |
プラス記号 |
1個以上のパターン列と合致(直前の文字の1回以上の繰り返し) |
? |
疑問符 |
0個か1個のパターンと合致( アトムまたはヌル文字列と一致 ) |
- |
ハイフン |
範囲の両端を示す |
[ ] |
ブラケット |
[ ] 内の任意の1文字の文字列と一致(パターンの範囲を示す) |
◆ regular-expression - 例
正規表現の例 |
意味 |
^100_ |
AS100から始まるもの(AS100がBGPネイバーであるもの) |
^100$ |
AS100から始まりAS100で終わるもの |
_100$ |
AS100をオリジンとするもの |
_100_ |
AS100を含めるもの |
^$ |
自身のASで発生したもの |
.* |
全てのAS |
^[1-2]00_ |
AS100またはAS200で始まるもの |
^100_[0-9]*$ |
AS100またはAS100で始まり任意の1つのASで終わるもの |
◆ AS_PATHアトリビュートにおいて、AS100から始まるルートの指定
Cisco(config)# ip as-path access-list 1 permit ^100_ |
◆ AS_PATHアトリビュートにおいて、AS100で生成された(AS100をオリジンとした)ルートの指定
Cisco(config)# ip as-path access-list 1 permit _100$ |
◆ AS_PATHアトリビュートにおいて、自身のASで生成したルートのみを指定
Cisco(config)# ip as-path access-list 1 permit ^$ |
◆ AS_PATHアトリビュートにおいて、AS100からはじまるルートを拒否してそれ以外の全てのASからのルートを指定
Cisco(config)# ip as-path access-list 1 deny ^100_
Cisco(config)# ip as-path access-list 1 permit .*
|
ip as-path access-list 1 permit .* は「 ACLでいえば access-list 1 permit any
であり 」全てのAS_PATHに該当します。
|