JUNOS - AS_PATH Filtering



 ◆ JUNOS - BGPの設定( AS_PATHによるフィルタリング)- 正規表現とは

 BGPでは膨大なルート情報を送受信するため、ルート情報そのものに基づいてフィルタリングを行うより、
 ASパスの情報に基づいてフィルタリングを行うことが一般的です。そのASパスを指定する際に
正規表現
 使用することで柔軟にASパスを指定できます。正規表現とは「入力文字列との照合パターン」のことです。

 ◆ 正規表現( 以下のシンボルを設定コマンドで利用 )
シンボル キャラクタ 説明
. ピリオド  任意の1文字と一致( スペースの一致も含む )
^ キャレット  入力文字列の先頭と一致
$ ドル記号  入力文字列の末尾と一致
* アスタリスク  0個以上のパターン列と合致
+ プラス記号  1個以上のパターン列と合致
? 疑問符  0個か1個のパターンと合致
- ハイフン  範囲の両端を示す
| パイプ  OR条件( | の両端にある文字列のいずれか1つに合致)
[ ] ブラケット  [ ] 内の任意の1文字の文字列と一致
( ) カッコ  ( ) で括った文字列をグループ化して1文字として処理
{m} -  ちょうどm回に合致
{m,} -  m回以上の繰り返しに合致
{m,n} -  m回以上、n回以下に合致


 ◆ JUNOS - BGPの設定( AS_PATHによるフィルタリング)- 設定例


   


 以下の設定例では、「AS_PATHアトリビュートにAS30が含まれる」ルート情報をルーティングテーブル
 にインストールしないようにフィルタリングしています。AS_PATHアトリビュートに基づいたフィルター
 のポリシーを正規表現を使用して作成した後、それをEBGPネイバールータに対して適用しています。


 root@R2# set policy-options as-path FILTER01 ".* 30 .* "

 root@R2#
set policy-options policy-statement AS-FILTER01 term 1 from as-path FILTER01
 root@R2# set policy-options policy-statement AS-FILTER01 term 1 then reject

 root@R2# set protocols bgp group EXT import AS-FILTER01


 上記のフィルター適用前のR2のルーティングテーブル( BGPルート )は以下の通りです。

 



 フィルター適用後の上記設定後のR2のルーティングテーブル( BGPルート )は以下の通りです。

 


 ルーティングテーブルにはインストールされていませんが、hiddenルート(隠されたルート)として
 R2で確認することができます。以下のとおり「
show route hidden」コマンドによって確認できます。

 



Juniper - JUNOS BGP 設定コマンド

Copyright(C) 2002-2024 ネットワークエンジニアとして All Rights Reserved