条件付き広告と特定のマッチ条件を持つインポート・ポリシー(ルーティング・テーブル)
BGPは、ネイバーから学習したループしていないルートをすべて受け入れ、RIB-Inテーブルにインポートします。これらのルートがBGPインポート・ポリシーで受け入れられた場合、inet.0ルーティング・テーブルにインポートされます。また、特定のルートのみをインポートする必要がある場合は、条件に基づいて相手ルーティング・デバイスからルートをエクスポートするように規定することも可能です。
ルートのエクスポートの条件は、以下のものがあります:
ルートが学習されたピア
ルートが学習されたインターフェイス
その他の必須属性
たとえば、以下のように表示されます。
[edit] policy-options { condition condition-name { if-route-exists address table table-name; } }
これはプレフィックスの条件付きインストールと呼ばれ、以下の例で説明されています:ルーティング・テーブルへのプレフィックスの条件付きインストールを有効にする条件付きアドバタイズのルーティング・ポリシーの設定。
ルーティング・ポリシーの条件は、エクスポート・ポリシー、インポート・ポリシー、またはその両方に関係なく設定することができます。エクスポート・ポリシーは,ルーティング・ポリシー内の別のルートの存在に基づいて,ルーティング・ポリシーから継承されたこれらの条件をサポートします。しかし、インポート・ポリシーではこれらの条件に対応しておらず、条件が存在していても実行されません。
図 1 は、BGPインポートおよびエクスポート・ポリシーが適用される場所を示しています。インポート・ポリシーは、というコマshow route receive-protocol bgp neighbor-address
ンドの出力に表示されているインバウンド・ルートに適用されます。エクスポート・ポリシーは、というコマshow route advertising-protocol bgp neighbor-address
ンドの出力に表示されているアウトバウンド・ルートに適用されます。
プレフィックスの条件付きインストールを有効にするには、プレフィックスのエクスポートが行われるデバイスにエクスポート・ポリシーを設定する必要があります。エクスポート・ポリシーは各ルートを評価し,というステートfrom
メントに基づくすべてのマッチ条件を満たすことを確認します。また、というステートcondition
メントの下に定義されたルートの存在も検索します(というステートfrom
メントの下に設定されたルートも検索します)。
ポリシーで定義した必須条件すべてに合致しない場合,またはというステートcondition
メントで定義したルートがルーティング・テーブルに存在しない場合,そのルートはBGPピアにエクスポートされません。このように、条件付きエクスポート・ポリシーは、ピアのルーティング・テーブルにインストールしたい目的のルートまたはプレフィックスに関して、ルートをマッチングさせます。
エクスポート・ポリシーを使用して、プレフィックスの条件付きインストールを設定するには:
プレフィックスをチェックするというステート
condition
メントを作成します。[edit] policy-options { condition condition-name { if-route-exists address table table-name; } }
というステート
condition
メントを使用して、新しく作成した条件を含むエクスポート・ポリシーを作成します。[edit] policy-options { policy-statement policy-name { term 1 { from { protocols bgp; condition condition-name; } then { accept; } } } }
選択したプレフィックスのみをルーティング・テーブルからエクスポートすることを要求するエクスポート・ポリシーをデバイスに適用します。
[edit] protocols bgp { group group-name { export policy-name; } }