ルーティング ポリシー一致条件で使用するプレフィックス リストについて
プレフィックスリストは、IPアドレスの名前付きリストです。受信ルートとの完全一致を指定し、(オプションで)リスト内のすべての一致するプレフィックスに共通のアクションを適用できます。
たとえば、以下のプレフィックスリストを設定するとします。
prefix-list bgp179 { apply-path "protocols bgp group <*> neighbor <*>"; }
これは、デバイス上のすべてのネイバーが同じアドレスファミリーに属している場合にうまく機能します。
IPv4とIPv6の両方のネイバーが設定されている場合など、ネイバーが異なるアドレスファミリーに属している場合、次のようにプレフィックスリストを使用できます。
prefix-list IPV4-BGP-NEIGHBORS {
apply-path "protocols bgp group <*> neighbor <*.*.*.*>";
}
prefix-list IPV6-BGP-NEIGHBORS {
apply-path "protocols bgp group <*> neighbor <*:*:*>";
}
1 つのプレフィックスリストが IPv4 アドレスに一致します。もう1つはIPv6アドレスに一致します。 show configuration policy-options prefix-list prefix-list name | display inheritance コマンドを実行して、設定を検証できます。
プレフィックスリストは、 exact 一致タイプの複数のインスタンスのみを含むルートリストのように機能します。これら 2 つの拡張一致条件の違いを 表 1 にまとめます。
機能 |
プレフィックスリスト |
ルートリスト |
|---|---|---|
アクション |
|
|
ルート リストの設定については、「 ルーティング ポリシー一致条件で使用するルート フィルターについて」を参照してください。
このセクションには、次の情報が含まれています。
プレフィックスリストの設定
名前付きプレフィックスリストを作成し、 prefix-list 一致条件を使用してルーティングポリシーに含めることができます( ルーティングポリシーの一致条件を参照)。
プレフィックスリストを定義するには、 prefix-list ステートメントを含めます。
[edit policy-options]
prefix-list prefix-list-name {
apply-path path;
ip-addresses;
}
apply-pathステートメントを使用して、定義されたパスが指すすべてのプレフィックス(およびそれに関連するネットワークマスク)を含めるか、1つ以上のアドレス、あるいはその両方を指定できます。
プレフィックスリストをルーティングポリシーに含めるには、[edit policy-options policy-statement policy-name term term-name]階層レベルのfromステートメントでprefix-list一致条件を指定します。
[edit policy-options policy-statement policy-name term term-name]
from {
prefix-list prefix-list-name;
}
then actions;
name プレフィックスリストを識別します。文字、数字、ハイフン(-)を含めることができ、最大127バイトの長さにすることができます。名前にスペースを含めるには、名前全体を引用符(" ")で囲みます。
ip-addresses は、 prefix/prefix-lengthとして指定されたIPv4またはIPバージョン 6(IPv6)プレフィックスです。IPv4 プレフィックスの prefix-length を省略した場合、デフォルトは /32prefix-length になります。IPv6 のプレフィックスで prefix-length を省略した場合、デフォルトは /128 になります。 from ステートメントで指定されたプレフィックスは、すべての IPv4 アドレスまたはすべての IPv6 アドレスのいずれかである必要があります。リスト内の個々のプレフィックスにアクションを適用することはできません。
複数のルーティングポリシーまたはファイアウォールフィルターの from ステートメントで同じプレフィックスリストを指定できます。ファイアウォールフィルターについては、 ファイアウォールフィルターの設定ガイドライン および 標準ファイアウォールフィルターの適用に関するガイドラインを参照してください。
apply-pathステートメントを使用して、定義されたパスが指すすべてのIPプレフィックスで構成されるプレフィックスリストを設定します。これにより、グループプレフィックスリストを維持するために必要な作業のほとんどが不要になります。
パスは、スペースで区切られた要素で構成されています。各要素は設定キーワードまたは識別子に一致し、ワイルドカードを使用して複数の識別子を一致させることができます。ワイルドカードは山括弧で囲む必要があります(例:<*>)。
apply-pathステートメントのリーフステートメントの後に、ワイルドカードを含むパス要素を追加することはできません。ワイルドカードを含むパス要素は、コンテナステートメントの後にのみ使用できます。
apply-pathを使用してプレフィックスリストを定義する場合、ポリシーステートメントで同じプレフィックスリストを使用することもできます。
プレフィックスリストの設定例については、 例:ルーティングポリシープレフィックスリストの設定を参照してください。
ルーティング ポリシー一致条件でプレフィックス リストがどのように評価されるか
プレフィックスリストの評価時に、ポリシーフレームワークソフトウェアは 最長一致ルックアップを実行します。つまり、ソフトウェアはリストの中で最長のプレフィックスを検索します。プレフィックスを指定する順序(上から下へ)は重要ではありません。その後、ソフトウェアはルートの送信元アドレスを最長プレフィックスと比較します。
プレフィックスリストフィルタを設定することで、プレフィックスリストに含まれるプレフィックスにプレフィックスリスト修飾子を使用できます。詳細については、「 ルーティングポリシー一致条件で使用するプレフィックスリストの設定」を参照してください。
一致が発生した場合、現在の項の評価が続行されます。一致が発生しない場合、現在の用語の評価は終了します。
プレフィックスリストに複数のプレフィックスを指定した場合、一致するためには1つのプレフィックスのみが一致する必要があります。プレフィックスリストの一致は、事実上、論理OR演算です。
プレフィックスリストフィルターの設定
プレフィックスリストフィルターを使用すると、プレフィックスリスト内のプレフィックスリストにプレフィックスリスト修飾子を適用できます。リスト内のプレフィックスは、指定された修飾子を使用して評価されます。同じポリシー条件の下で複数のプレフィックスリストフィルターを設定できます。
プレフィックスリストフィルターを設定するには、[edit policy-options policy-statement policy-name from]階層レベルでprefix-list-filterステートメントを含めます。
[edit policy-options policy-statement policy-name]
from {
prefix-list-filter prefix-list-name match-type actions;
}
prefix-list-nameオプションは、評価に使用するプレフィックスリストの名前です。指定できるプレフィックスリストは1つだけです。
match-typeオプションは、プレフィックスリスト内のプレフィックスに適用する一致タイプです。これは、表2に示す一致タイプのいずれかにすることができます。
actionsオプションは、プレフィックスリストが一致した場合に実行するアクションです。これは、フロー制御アクションの設定およびルート特性を操作するアクションの設定に記載されているアクションのうちの1つ以上にすることができます。
一致タイプ |
一致条件 |
|---|---|
|
ルートは同じ最上位ビット( |
|
ルートは、同じ最上位ビット( |
|
ルートは、同じ最上位ビット( |