Route Policy Manager の設定

この章では、Cisco NX-OS スイッチで Route Policy Manager を設定する方法について説明します。

この章は、次の項で構成されています。

Route Policy Manager の概要

Route Policy Manager は、ルート マップおよび IP プレフィックス リストをサポートしています。この機能は、ルート再配布に使用されます。プレフィックス リストには、1 つまたは複数の IPv4 ネットワーク プレフィックスおよび関連付けられたプレフィックス長の値を指定します。プレフィックス リストは、ボーダー ゲートウェイ プロトコル(BGP)テンプレート、ルート フィルタリング、またはルーティング ドメイン間で交換されるルートの再配布などの機能で、単独で使用できます。

ルート マップは、ルートおよび IP パケットの両方に適用できます。ルート フィルタリングおよび再配布は、ルート マップを使用してルートを渡します。

プレフィックス リスト

プレフィックス リストを使用すると、アドレスまたはアドレス範囲を許可または拒否することができます。プレフィックス リストによるフィルタリングでは、ルートまたはパケットのプレフィックスと、プレフィックス リストに指定されているプレフィックスの照合が行われます。特定のプレフィックスがプレフィックス リストのどのエントリとも一致しなかった場合、実質的に拒否されたものと見なされます。

プレフィックス リストに複数のエントリを設定し、エントリと一致したプレフィックスを許可または拒否できます。各エントリにはシーケンス番号が関連付けられています。この番号はユーザが設定できます。シーケンス番号が設定されていない場合は、Cisco NX-OS によって自動的にシーケンス番号が設定されます。Cisco NX-OS はシーケンス番号が最も小さいエントリから順番にプレフィックス リストを評価します。Cisco NX-OS は、所定のプレフィックスと最初に一致したエントリを処理します。一致すると、Cisco NX-OS は permit 文または deny 文を処理し、プレフィックス リストの残りのエントリは評価しません。


(注)  


プレフィックス リストが空の場合は、すべてのルートが許可されます。


プレフィックス リストのマスク

Cisco NX-OS リリース 6.0(2)U3(1) では、プレフィックス リストにマスクが導入されています。マスクでは、数値 1 と数値 0 を使用して、対応する IP アドレス ビットをどのように扱うかを指定します。

  • マスク ビット 0 は、対応するビット値を無視することを示します。

  • マスク ビット 1 は、対応するビット値が正確に一致しているかどうかを確認することを示します。

プレフィックス リストを使用してルート マップの IP アドレスを照合できます。この IP アドレスは再配布時にルーティング プロトコルで使用されます。IP アドレスは、マスク ビット 1 に対応するビットがプレフィックス リストで指定されたサブネットと同じであるプレフィックス リストと照合されます。

マスクを慎重に設定することにより、許可または拒否のテストに 1 つまたは複数の IP アドレスを選択できます。

プレフィックス リストのマスクを使用すると、マスクに非連続ビットを指定し、偶数または奇数の IP アドレスの範囲を定義できます。

MAC リスト

MAC リストを使用すると、MAC アドレスまたはアドレス範囲を許可または拒否できます。MAC リストは MAC アドレスとオプションの MAC マスクのリストです。MAC マスクはワイルドカード マスクで、ルート マップが MAC リストのエントリと一致すると論理的に MAC アドレスと AND 結合されます。MAC リストによるフィルタリングでは、パケットの MAC アドレスと MAC リスト内の MAC リストが照合されます。特定の MAC アドレスが MAC リストのどのエントリとも一致しなかった場合、実質的に拒否されたものと見なされます。

MAC リストに複数のエントリを設定し、エントリと一致した MAC アドレスを許可または拒否できます。各エントリにはシーケンス番号が関連付けられています。この番号はユーザが設定できます。シーケンス番号が設定されていない場合は、Cisco NX-OS によって自動的にシーケンス番号が設定されます。Cisco NX-OS はシーケンス番号が最も小さいエントリから順番に MAC リストを評価します。Cisco NX-OS は指定された MAC アドレスと最初に一致するエントリを処理します。一致すると、Cisco NX-OS は permit 文または deny 文を処理し、MAC リストの残りのエントリは評価しません。

ルート マップ

ルート マップは、ルートの再配布に使用できます。ルート マップ エントリは、一致基準および設定基準のリストからなります。一致基準では、着信ルートまたはパケットの一致条件を指定します。設定基準では、一致基準を満たした場合のアクションを指定します。

同じルート マップに複数のエントリを設定できます。これらのエントリには、同じルート マップ名を指定し、シーケンス番号で区別します。

一意のルート マップ名の下に 1 つまたは複数のルート マップ エントリをシーケンス番号に従って並べ、ルート マップを作成します。ルート マップ エントリのパラメータは、次のとおりです。

  • シーケンス番号

  • アクセス権:許可または拒否

  • 一致基準

  • 設定変更

Cisco NX-OS リリース 7.0(3)I3(1) 以前を実行しているが、Cisco NX-OS リリース 6.x ではない Cisco Nexus 3000 シリーズ スイッチでは、同じルートマップ シーケンス番号での IPv4 および IPv6 の照合はサポートされていません。

ルート マップではデフォルトで、最小のシーケンス番号から順にルートまたは IP パケットが処理されます。continue 文を使用すると、次に処理するルート マップ エントリを決定できるので、別の順序で処理するようにルート マップを設定できます。

一致基準

さまざまな基準を使用して、ルート マップでルートや IP パケットを照合できます。BGP コミュニティ リストのように、特定のルーティング プロトコルだけに適用できる基準もありますが、IP 送信元または宛先アドレスなど、その他の基準はあらゆるルートまたは IP パケットに使用できます。

ルート マップに従ってルートまたはパケットを処理する場合、Cisco NX-OS は設定されている個々の match 文とルートまたはパケットを比較します。ルートまたはパケットが設定されている基準と一致した場合、Cisco NX-OS はルート マップ内で一致するエントリに対する許可または拒否設定、および設定されている設定基準に基づいて、このルートやパケットを処理します。

一致のカテゴリおよびパラメータは、次のとおりです。

  • BGP パラメータ:AS 番号、AS パス、コミュニティ属性、または拡張コミュニティ属性に基づく一致

  • プレフィックス リスト:アドレスまたはアドレス範囲に基づく一致

  • マルチキャスト パラメータ:ランデブー ポイント、グループ、または送信元に基づく一致

  • その他のパラメータ:IP ネクストホップ アドレスまたはパケット長に基づく一致

設定変更

ルートまたはパケットがルート マップのエントリと一致したら、設定済みの 1 つ以上の set 文に基づいて、そのルートまたはパケットを変更できます。

設定変更は次のとおりです。

  • BGP パラメータ:AS パス、タグ、コミュニティ、拡張コミュニティ、ダンプニング、ローカル プリファレンス、オリジン、または重み値属性の変更

  • メトリック:ルート メトリック、ルート タグ、またはルート タイプの変更

  • その他のパラメータ:フォワーディング アドレスまたは IP ネクストホップ アドレスの変更

アクセス リスト

IP アクセス リストでは、次のような IP パケット フィールドとパケットを照合できます。

  • 送信元または宛先 IPv4 アドレス

  • プロトコル

  • Precedence

  • ToS

BGP の AS 番号

BGP ピアとの照合に使用する AS 番号のリストを設定できます。BGP ピアがリスト内の AS 番号と一致し、さらに他の BGP ピア設定と一致する場合、BGP はセッションを作成します。BGP ピアがリスト内の AS 番号と一致しない場合は、BGP はピアを無視します。AS 番号は AS 番号の範囲のリストとして設定できます。また、AS パス リストを使用して AS 番号を正規表現と比較することもできます。

BGP の AS パス リスト

AS パス リストを設定すると、着信または発信 BGP ルートのアップデートをフィルタリングできます。ルート アップデートに AS パス リストのエントリと一致する AS パス属性が含まれている場合、ルータは設定されている許可または拒否条件に基づいてルートを処理します。ルート マップの中で AS パス リストを設定できます。

同じ AS パス リスト名を使用することによって、AS パス リストで複数の AS パス エントリを設定できます。ルータは最初に一致したエントリを処理します。

BGP のコミュニティ リスト

ルート マップのコミュニティ リストを使用すると、BGP コミュニティに基づいて BGP ルート アップデートをフィルタリングできます。コミュニティ属性はコミュニティ リストに基づいて照合できます。また、コミュニティ属性はルート マップを使用して設定できます。

コミュニティ リストには、1 つまたは複数のコミュニティ属性を指定します。同じコミュニティ リスト エントリに複数のコミュニティ属性を設定した場合、BGP ルートが一致と見なされるには、指定されたすべてのコミュニティ属性と一致しなければなりません。

同じコミュニティ リスト名を使用することによって、コミュニティ リストのそれぞれ個別のエントリとして、複数のコミュニティ属性を設定することもできます。この場合、ルータは最初に BGP ルートと一致したコミュニティ属性を、そのエントリの許可または拒否設定に基づいて処理します。

コミュニティ リストのコミュニティ属性は、次の形式のいずれか 1 つで設定できます。

  • 名前付きコミュニティ属性(internet no-export など)。

  • aa:nn 形式(前の 2 バイトは 2 バイトの自律システム番号、後の 2 バイトはユーザーが定義するネットワーク番号を表します)。

  • 正規表現。

正規表現に関する詳細については、「Cisco Nexus 3000 シリーズ コマンド リファレンス」を参照してください。

BGP の拡張コミュニティ リスト

拡張コミュニティ リストでは 4 バイトの AS 番号がサポートされています。拡張コミュニティ リストのコミュニティ属性は、次のいずれかの形式で設定できます。

  • aa4:nn 形式(最初の 4 バイトは 4 バイトの AS 番号、最後の 2 バイトはユーザが定義するネットワーク番号を表します)。

  • 正規表現。

正規表現に関する詳細については、「Cisco Nexus 3000 シリーズ コマンド リファレンス」を参照してください。

Cisco NX-OS は汎用の特定拡張コミュニティ リストをサポートしています。このリストを使用すると、4 バイトの AS 番号に対して通常のコミュニティ リストと同様の機能を使用できます。汎用の特定拡張コミュニティ リストには次のプロパティを設定できます。

  • Transitive:BGP はコミュニティ属性を自律システム間に伝達します。

  • Nontransitive:BGP はコミュニティ属性を削除してからルートを他の自律システムに伝達します。

ルートの再配布およびルート マップ

ルート マップを使用すると、ルーティング ドメイン間でのルートの再配布を制御できます。ルート マップではルートの属性を照合し、一致基準を満たすルートだけを再配布します。設定変更を使用することによって、再配布時に、ルート マップでルート属性を変更することもできます。

ルータは再配布されたルートを各ルート マップ エントリと照合します。match 文が複数ある場合は、ルートがすべての一致基準を満たしている必要があります。ルートがルート マップ エントリで定義されている一致基準を満たす場合は、エントリで定義されているアクションが実行されます。ルートが基準と一致しなかった場合、ルータは後続のルート マップ エントリとルートを比較します。ルートの処理は、ルートがルート マップのいずれかのエントリと一致するか、どのエントリとも一致せずすべてのエントリによる処理が完了するまで継続します。ルータがルート マップの全エントリとルートを比較しても一致しなかった場合、ルータはそのルートを受け付けるか(着信ルート マップ)またはルートを転送します(発信ルート マップ)。

Route Policy Manager の注意事項と制約事項

Route Policy Manager 設定時の注意事項および制約事項は、次のとおりです。

  • CLI は route-tag では set または match が有効になっていますが、サポートされておらず、その特定のルートマップシーケンスに対して意図しない動作が発生します。

  • プレフィックス リスト内の名前は、大文字と小文字が区別されません。一意の名前を使用することを推奨します。大文字と小文字を変更しただけの名前は使用しないでください。たとえば、CTCPrimaryNetworks と CtcPrimaryNetworks は 2 つの異なるエントリではありません。

  • ルートマップが存在しない場合、すべてのルートが拒否されます。

  • プレフィックス リストが存在しない場合は、すべてのルートが許可されます。

  • ルート マップ エントリに match 文がない場合、ルート マップ エントリのアクセス権(許可または拒否)によって、すべてのルートまたはパケットの処理結果が決まります。

  • ルート マップ エントリの match 文の中で参照されたポリシー(プレフィックス リストなど)から no-match または deny-match が戻った場合、 は match 文を Cisco NX-OS 失敗として、次のルート マップ エントリを処理します。

  • ルート マップを変更しても、ルート マップ コンフィギュレーション サブモードを終了するまでは、Cisco NX-OS によりすべての変更が保留されます。その後、Cisco NX-OS がすべての変更をプロトコル クライアントに送信すると、変更が有効になります。

  • 同じルートマップシーケンスに IPv4 と IPv6 の両方の match ステートメントを含めないことを推奨します。両方が必要な場合は、同じルートマップの異なるシーケンスで指定する必要があります。

  • ルート マップは定義する前に使用できるので、設定変更を終えるときには、すべてのルート マップが存在していることを確認してください。

  • 再配布およびフィルタリングを行う場合、ルート マップの使用状況を確認できます。各ルーティング プロトコルには、これらの統計情報を表示する機能があります。

  • BGP をIGP に再配布するとき、iBGP も再配布されます。この動作を無効にするには、ルート マップに追加 deny 文を挿入します。

  • Route Policy Manager は MAC リストをサポートしていません。

  • ip access-list name コマンドの ACL 名の最大文字数は 64 です。ただし、RPM コマンドに関連付けられている ACL 名(ip prefix-list や match ip address など)は、最大 63 文字しか使用できません。

  • BGP は特定の match コマンドのみをサポートします。詳細については、ルート マップの設定 セクションの match コマンドの表を参照してください。

  • 「prefix-list」という名前の ACL を作成する場合、match ip address コマンドを使用して作成されたルート マップに関連付けることはできません。RPM コマンドの match ip address prefix-list は、前のコマンド(「prefix-list」ACL 名)をあいまいにします。

  • match ip address コマンドを使用する場合、設定できる ACL は 1 つだけです。

Route Policy Manager のデフォルト設定

下の表に、Route Policy Manager のデフォルト設定を示します。

表 1. デフォルトの Route Policy Manager パラメータ

パラメータ

デフォルト

Route Policy Manager

有効(Enabled)

Route Policy Manager の設定


(注)  


Cisco IOS の CLI に慣れている場合、この機能に対応する Cisco NX-OS コマンドは通常使用する Cisco IOS コマンドと異なる場合があるので注意してください。


IP プレフィックス リストの設定

IP プレフィックス リストでは、プレフィックスおよびプレフィックス長のリストに対して IP パケットまたはルートを照合します。IPv4 の IP プレフィックス リストを作成できます。

指定したプレフィックス長と完全に一致するプレフィックス リスト エントリのみを対象とするよう設定できます。また、指定したプレフィックス長の範囲に該当するすべてのプレフィックスを対象とすることもできます。

ge キーワードと lt キーワードを使用すると、プレフィックス長の範囲を指定できます。着信パケットまたはルートがプレフィックス リストと一致すると判定されるのは、プレフィックスが一致し、プレフィックス長が ge キーワードの値(設定されている場合)以上かつ lt キーワードの値(設定されている場合)以下の場合です。キーワード eq を使用する場合、設定する値はプレフィックスのマスク長より大きくする必要があります。

手順の概要

  1. configure terminal
  2. (任意) ip prefix-list name description string
  3. ip prefix-list name [ seq number ] [{ permit | deny } prefix {[ eq prefix-length ] | [ ge prefix-length ] [ le prefix-length ]}]
  4. (任意) show ip prefix-list name
  5. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

(任意) ip prefix-list name description string

例:

switch(config)# ip prefix-list AllowPrefix description allows engineering server
(任意)

プレフィックス リストについての情報ストリングを追加します。

ステップ 3

ip prefix-list name [ seq number ] [{ permit | deny } prefix {[ eq prefix-length ] | [ ge prefix-length ] [ le prefix-length ]}]

例:

switch(config)# ip prefix-list AllowPrefix seq 10 permit 192.0.2.0 eq 24

IPv4 プレフィックス リストを作成するか、または既存のプレフィックス リストにプレフィックスを追加します。プレフィックス長の照合は次のように行われます。

  • eq:prefix length の値と完全に一致するものが対象。この値は、マスク長より大きくする必要があります。

  • ge:設定された prefix length 以上のプレフィックス長が対象。

  • le:設定された prefix length 以下のプレフィックス長が対象。

ステップ 4

(任意) show ip prefix-list name

例:

switch(config)# show ip prefix-list AllowPrefix
(任意)

プレフィックス リストについての情報を表示します。

ステップ 5

(任意) copy running-config startup-config

例:

switch# copy running-config startup-config
(任意)

この設定変更を保存します。

次に、2 つのエントリからなる IPv4 プレフィックス リストを作成し、BGP ネイバーにプレフィックス リストを適用する例を示します。

switch# configure terminal
switch(config)# ip prefix-list allowprefix seq 10 permit 192.0.2.0/23 eq 24
switch(config)# ip prefix-list allowprefix seq 20 permit 209.165.201.0/27 eq 28
switch(config)# router bgp 65536:20
switch(config-router)# neighbor 192.0.2.1/16 remote-as 65535:20
switch(config-router-neighbor)# address-family ipv4 unicast
switch(config-router-neighbor-af)# prefix-list allowprefix in

次に、奇数 IP アドレスの一致マスクを使用して IPv4 プレフィックス リストを作成する例を示します。

switch# configure terminal
switch(config)# ip prefix-list odd permit 0.0.0.1/32 mask 0.0.0.1

MAC リストの設定

MAC リストを設定すると、特定の範囲の MAC アドレスを許可または拒否できます。

手順の概要

  1. configure terminal
  2. mac-list name [ seq number ] { permit | deny } mac-address {mac-mask]}
  3. (任意) show mac-list name
  4. (任意) show ip prefix-list name

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

mac-list name [ seq number ] { permit | deny } mac-address {mac-mask]}

例:

switch(config)# mac-list AllowMac seq 1 permit 0022.5579.a4c1 ffff.ffff.0000

MAC リストを作成するか、既存の MAC リストに MAC アドレスを追加します。seq の範囲は 1 ~ 4294967294 です。mac-mask は照合する MAC アドレスの部分を表します。MAC アドレス形式である必要があります。

ステップ 3

(任意) show mac-list name

例:

switch(config)# show mac-list AllowMac
(任意)

MAC リストに関する情報を表示します。

ステップ 4

(任意) show ip prefix-list name

例:

switch(config)# show ip prefix-list AllowPrefix
(任意)

プレフィックス リストについての情報を表示します。

AS パス リストの設定

発信と着信の両方の BGP ルートに AS パス リスト フィルタを指定できます。各フィルタは、正規表現を使用するアクセス リストです。正規表現が ASCII ストリングとして表されたルートの AS パス属性と一致した場合は、許可または拒否条件が適用されます。

手順の概要

  1. configure terminal
  2. ip as-path access-list name { deny | permit } expression
  3. (任意) show ip as-path-access-list name
  4. (任意) show ip prefix-list name

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

ip as-path access-list name { deny | permit } expression

例:

switch(config)# ip as-path access-list Allow40 permit 40

ステップ 3

(任意) show ip as-path-access-list name

例:

switch(config)# show ip as-path-access-list Allow40
(任意)

as-path アクセス リストの情報を表示します。

ステップ 4

(任意) show ip prefix-list name

例:

switch(config)# show ip prefix-list AllowPrefix
(任意)

プレフィックス リストについての情報を表示します。

次に、2 つのエントリからなる AS パス リストを作成し、BGP ネイバーに AS パス リストを適用する例を示します。

switch# configure terminal
switch(config)# ip as-path access-list AllowAS permit 64510
switch(config)# ip as-path access-list AllowAS permit 64496
switch(config)# copy running-config startup-config
switch(config)# router bgp 65536:20
switch(config-router)# neighbor 192.0.2.1/16 remote-as 65535:20
switch(config-router-neighbor)# address-family ipv4 unicast
switch(config-router-neighbor-af)# filter-list AllowAS in

コミュニティ リストの設定

コミュニティ リストを使用すると、コミュニティ属性に基づいて BGP ルートをフィルタリングできます。コミュニティ番号は aa:nn 形式の 4 バイト値です。最初の 2 バイトは自律システム番号を表し、最後の 2 バイトはユーザ定義のネットワーク番号です。

同じコミュニティ リスト文で複数の値を設定した場合、コミュニティ リスト フィルタを満足させるには、すべてのコミュニティ値が一致しなければなりません。複数の値をそれぞれ個別のコミュニティ リスト文で設定した場合は、最初に条件が一致したリストが処理されます。

コミュニティ リストを match 文で使用すると、コミュニティ属性に基づいて BGP ルートをフィルタリングできます。

手順の概要

  1. configure terminal
  2. (任意) show ip community-list name
  3. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

オプション 説明

コマンド

目的

ip community-list standard list-name { deny | permit } [ community-list ] [ internet ] [ local-AS ] [ no-advertise ] [ no-export ]

例:

switch(config)# ip community-list standard BGPCommunity permit no-advertise 65536:20

標準 BGP コミュニティ リストを作成します。list-名 には最大 63 文字の英数字を使用できます。大文字と小文字は区別されます。community-list には、1 つ以上のコミュニティを aa:nn 形式で指定できます。

ip community-list expanded list-name { deny | permit } expression

例:

switch(config)# ip community-list expanded BGPComplex deny 50000:[0-9][0-9]_

正規表現を使用して拡張 BGP AS コミュニティ リストを作成します。

ステップ 3

(任意) show ip community-list name

例:

switch(config)# show ip community-list BGPCommunity
(任意)

コミュニティ リストの情報を表示します。

ステップ 4

(任意) copy running-config startup-config

例:

switch# copy running-config startup-config
(任意)

この設定変更を保存します。

次に、2 つのエントリからなるコミュニティ リストの作成例を示します。

switch# configure terminal
switch(config)# ip community-list standard BGPCommunity permit no-advertise 65536:20
switch(config)# ip community-list standard BGPCommunity permit local-AS no-export
switch(config)# copy running-config startup-confi

拡張コミュニティ リストの設定

拡張コミュニティ リストを使用すると、コミュニティ属性に基づいて BGP ルートをフィルタリングできます。コミュニティ番号は aa4:nn 形式の 6 バイト値です。最初の 4 バイトは自律システム番号を表し、最後の 2 バイトはユーザ定義のネットワーク番号です。

同じ拡張コミュニティ リスト文で複数の値を設定した場合、拡張コミュニティ リスト フィルタの条件を満たすには、すべての拡張コミュニティ値が一致しなければなりません。複数の値をそれぞれ個別の拡張コミュニティ リスト文で設定した場合は、最初に条件が一致したリストが処理されます。

拡張コミュニティ リストを match 文で使用すると、拡張コミュニティ属性に基づいて BGP ルートをフィルタリングできます。

手順の概要

  1. configure terminal
  2. (任意) show ip community-list name
  3. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

オプション 説明

コマンド

目的

ip community-list standard list-name { deny | permit } 4bytegeneric { transitive | non-transitive } community1 [community2]

例:

switch(config)# ip extcommunity-list standard BGPExtCommunity permit 4bytegeneric transitive 65536:20

標準 BGP コミュニティ リストを作成します。community-list には、1 つ以上の拡張コミュニティを aa:nn 形式で指定できます。

ip extcommunity-list expanded list-name { deny | permit } expression

例:

switch(config)# ip community-list expanded BGPComplex deny 50000:[0-9][0-9]_

正規表現を使用して拡張 BGP AS コミュニティ リストを作成します。

ステップ 3

(任意) show ip community-list name

例:

switch(config)# show ip community-list BGPCommunity
(任意)

コミュニティ リストの情報を表示します。

ステップ 4

(任意) copy running-config startup-config

例:

switch# copy running-config startup-config
(任意)

この設定変更を保存します。

次に、汎用の特定拡張コミュニティ リストを作成する例を示します。

switch# configure terminal
switch(config)# ip extcommunity-list standard test1 permit 4bytegeneric transitive 65536:40 65536:60
switch(config)# copy running-config startup-config

ルート マップの設定

ルート マップを使用して、ルートの再配布やルート フィルタリングを行うことができます。ルート マップには、複数の一致基準と複数の設定基準を含めることができます。

BGP にルート マップを設定すると、BGP ネイバー セッションの自動ソフト クリアまたはリフレッシュのトリガーになります。

手順の概要

  1. configure terminal
  2. route-map map-name [permit | deny] [seq]
  3. (任意) continue seq
  4. (任意) exit
  5. (任意) copy running-config startup-config

手順の詳細

  コマンドまたはアクション 目的

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

コンフィギュレーション モードに入ります。

ステップ 2

route-map map-name [permit | deny] [seq]

例:

switch(config)# route-map Testmap permit 10
switch(config-route-map)#

ルート マップを作成するか、または既存のルート マップに対応するルート マップ設定モードを開始します。seq を使用して、ルート マップ エントリを順序付けます。

ステップ 3

(任意) continue seq

例:

switch(config-route-map)# continue 10
(任意)

ルート マップで次を処理するシーケンス文を決定します。使用するのは、フィルタリングおよび再配布の場合だけです。

ステップ 4

(任意) exit

例:

switch(config-route-map)# exit
(任意)

ルート マップ コンフィギュレーション モードを終了します。

ステップ 5

(任意) copy running-config startup-config

例:

switch# copy running-config startup-config
(任意)

この設定変更を保存します。

ルート マップ コンフィギュレーション モードで、ルート マップに対して次のオプションの match パラメータを設定できます。


(注)  


default-information originate コマンドでは、オプションのルート マップの match 文は無視されます。


コマンド

目的

match as-path name [ name...]

例:

switch(config-route-map)# match as-path Allow40

1 つまたは複数の AS パス リストと照合。AS パス リストは、ip as-path access-list コマンドで作成します。

match as-number { number [,number... ] | as-path-list name [ name... ]}

例:

switch(config-route-map)# match as-number 33,50-60

1 つまたは複数の AS 番号または AS パス リストと照合。AS パス リストは、ip as-path access-list コマンドで作成します。指定できる範囲は 1 ~ 65535 です。AS パス リスト名には最大 63 文字の英数字を使用できます。大文字と小文字は区別されます。

match community name [name... ] [ exact-match ]

例:

switch(config-route-map)# match community BGPCommunity

1 つまたは複数のコミュニティ リストと照合。コミュニティ リストは、ip community-list コマンドで作成します。

match extcommunity name [name... ] [ exact-match ]

例:

switch(config-route-map)# match extcommunity BGPextCommunity

1 つまたは複数の拡張コミュニティ リストと照合。コミュニティ リストは、ip extcommunity-list コマンドで作成します。

match interface interface-type number [ interface-type number... ]

例:

switch(config-route-map)# match interface e 1/2

設定済みのインターフェイスのいずれかからのネクスト ホップと照合。? を使用すると、サポートされているインターフェイス タイプのリストを検索できます。

match ip address prefix-list name [ name... ]

例:

switch(config-route-map)# match ip address prefix-list AllowPrefix
1 つまたは複数の IPv4 プレフィックス リストと照合。プレフィックス リストは ip prefix-list コマンドを使用して作成します。

match ip next-hop prefix-list name [ name ... ]

例:

switch(config-route-map)# match ip next-hop prefix-list AllowPrefix

1 つまたは複数の IP プレフィックス リストに対して、ルートの IPv4 ネクストホップ アドレスを照合。プレフィックス リストは ip prefix-list コマンドを使用して作成します。

match ip route-source prefix-list name [ name ...]

例:

switch(config-route-map)# match ip route-source prefix-list AllowPrefix

1 つまたは複数の IP プレフィックス リストに対して、ルートの IPv4 ルート送信元アドレスを照合。プレフィックス リストは ip prefix-list コマンドを使用して作成します。

match mac-list name [name... ]

例:

switch(config-route-map)# match mac-list AllowMAC

1 つまたは複数の MAC リストと照合。MAC リストは mac-list コマンドを使用して作成します。

match metric value [ +-deviation ] [value.. ]

例:

switch(config-route-map)# match mac-list AllowMAC

ルート メトリック値を 1 つまたは複数のメトリック値または値の範囲と照合。メトリック範囲は +- deviation 引数を使用して設定します。ルート マップは次の範囲に該当するすべてのルート メトリックと照合されます。

value - deviation to value + deviation .

match route-type route-type

例:

switch(config-route-map)# match route-type level 1 level 2

ルート タイプと照合。route-type は、次のうちの 1 つまたは複数にできます。

  • external

  • internal

  • level-1

  • level-2

  • ローカル(local)

  • nssa-external

  • type-1

  • type-2

match tag tagid [ tagid.. . ]

例:

switch(config-route-map)# match tag 2

フィルタリングまたは再配布に関する 1 つまたは複数のタグとルートを照合。

match vlan vlan-id [ vlan-range]

例:

switch(config-route-map)# match vlan 3, 5-10

VLAN と照合。

ルート マップ設定モードで、オプションとして、ルート マップに次の set パラメータを設定できます。

コマンド

目的

set as-path { tag | prepend { last-as number | as-1 [ as-2.. 。]}}

例:

switch(config-route-map)# set as-path prepend 10 100 110

BGP ルートの AS パス属性を変更します。最後の AS 番号として設定された number または特定の AS パス値としてのストリング(as-1 as-2...as-n)を前に付加できます。

set comm-list name delete

例:

switch(config-route-map)# set comm-list BGPCommunity delete

着信または発信 BGP ルート アップデートのコミュニティ属性から、コミュニティを削除します。コミュニティ リストは ip community-list コマンドを使用して作成します。

set community { none | additive | local-AS | no-advertise | no-export | community-1 [community-2. ..]}

例:

switch(config-route-map)# set community local-AS

BGP ルート アップデートのコミュニティ属性を設定します。

(注)  

 

ルート マップ属性の同じシーケンスで、set community コマンドと set comm-list delete コマンドを両方使用すると、設定処理より先に削除処理が実行されます。

(注)  

 

send-community コマンドを BGP ネイバー アドレス ファミリ コンフィギュレーション モードで使用して、BGP コミュニティ属性を BGP ピアにプロパゲートします。

set dampening halflife reuse suppress duration

例:

switch(config-route-map)# set dampening 30 1500 10000 120

BGP ルート ダンプニング パラメータを設定します。

  • halflife :指定できる範囲は 1 ~ 45 分です。デフォルトは 15 です。

  • reuse :指定できる範囲は 1 ~ 20000 秒です。デフォルトは 750 です。

  • suppress :指定できる範囲は 1 ~ 20000 です。デフォルトは 2000 です。

  • duration :指定できる範囲は 1 ~ 255 分です。デフォルトは 60 です。

set extcomm-list name delete

例:

switch(config-route-map)# set extcomm-list BGPextCommunity delete

着信または発信 BGP ルート アップデートの拡張コミュニティ属性から、コミュニティを削除します。拡張コミュニティ リストは ip extcommunity-list コマンドを使用して作成します。

set extcommunity generic { transitive | nontransitive }{ none | additive ] community-1 [community-2... ]}

例:

switch(config-route-map)# set extcommunity generic transitive 1.0:30

BGP ルート アップデートの拡張コミュニティ属性を設定します。

(注)  

 

ルート マップ属性の同じシーケンスで、set extcommunity コマンドと set extcomm-list delete コマンドを両方使用すると、設定処理より先に削除処理が実行されます。

(注)  

 

send-community コマンドを BGP ネイバー アドレス ファミリ コンフィギュレーション モードで使用して、BGP コミュニティ属性を BGP ピアにプロパゲートします。

set forwarding-address

例:

switch(config-route-map)# set forwarding-address

OSPF のフォワーディング アドレスを設定します。

set level { backbone | level-1 | level-1-2 | level-2 }

例:

switch(config-route-map)# set level backbone

IS-IS 用にルートをインポートするエリアを設定します。IS-IS のオプションは level-1、level-1-2、または level-2 です。デフォルトは level-1 です。

set local-preference value

例:

switch(config-route-map)# set local-preference 4000

BGP ローカル プリファレンス値を設定します。範囲は 0 ~ 4294967295 です。

set metric [ + | - ] bandwidth-metric

switch(config-route-map)# set metric +100

既存のメトリック値を増減します。メトリックは Kb/s 単位です。範囲は 0 ~ 4294967295 です。

set metric bandwidth [ delay reliability load mtu ]

switch(config-route-map)# set metric 33 44 100 200 1500

ルート メトリック値を設定します。

メトリックは次のとおりです。

  • metric0 :帯域幅(Kb/s)。範囲は 0 ~ 4294967295 です。

  • metric1 :遅延(10 マイクロ秒単位)。

  • metric2 :信頼性。指定できる範囲は 0 ~ 255(100% の信頼性)です。

  • metric3 :ロード中。指定できる範囲は 1 ~ 200(100% のロード)です。

  • metric4 :パスの MTU。値の範囲は 1 ~ 4294967295 です。

set metric-type { external | internal | type-1 | type-2 }

例:

switch(config-route-map)# set metric-type internal

宛先ルーティング プロトコルのメトリック タイプを設定します。オプションは次のとおりです。

external:IS-IS 外部メトリック

internal:BGP の MED として IGP メトリックを使用

type-1:OSPF 外部タイプ 1 メトリック

type-2:OSPF 外部タイプ 2 メトリック

set origin { egp as-number | igp | incomplete}

例:

switch(config-route-map)# set origin incomplete

BGP オリジン属性を設定します。EGP as-number の範囲は 0 ~ 65535 です。

set tag name

例:

switch(config-route-map)# set tag 33

宛先ルーティング プロトコルのタグ値を設定します。name パラメータは符号なし整数です。

set weight count

例:

switch(config-route-map)# set weight 33

BGP ルートの重み値を設定します。範囲は 0 ~ 65535 です。

set metric-type internal コマンドは、発信ポリシーと eBGP ネイバーにのみ作用します。同じ BGP ピア発信ポリシーに metric コマンドと metric-type internal コマンドを両方設定した場合、Cisco NX-OS は metric-type internal コマンドを無視します。

Route Policy Manager の設定の確認

Route Policy Manager の設定情報を表示するには、次の作業のいずれかを行います。

コマンド

目的

show ip community-list [name]

コミュニティ リストの情報を表示します。

show ip ext community-list [name]

拡張コミュニティ リストの情報を表示します。

show [ip] prefix-list [name]

IPv4 プレフィックス リストの情報を表示します。

show route-map [name]

ルート マップの情報を表示します。

Route Policy Manager の設定例

次の例では、アドレス ファミリを使用して Route Policy Manager を設定し、ネイバー 209.0.2.1 からのユニキャスト ルートやマルチキャスト ルートが AllowPrefix プレフィックス リストと一致した場合に、それらのルートが承認されるようにします。


router bgp 64496
 
neighbor 172.16.0.1 remote-as 64497
  address-family ipv4 unicast
    route-map filterBGP in

route-map filterBGP
 match ip address prefix-list AllowPrefix

ip prefix-list AllowPrefix 10 permit 192.0.2.0/24
ip prefix-list AllowPrefix 20 permit 172.16.201.0/27

関連項目

Route Policy Manager の詳細については、次の項目を参照してください。

その他の参考資料

IP の実装に関する詳細情報については、次の各項を参照してください。

標準

標準

タイトル

この機能でサポートされる新規の標準または変更された標準はありません。また、既存の標準のサポートは変更されていません。