ポリシーベース ルーティングの設定

この章では、Cisco NX-OS デバイスでポリシー ベース ルーティングを設定する方法について説明します。

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

ポリシーベース ルーティングの概要

ポリシーベース ルーティングを使用すると、IPv4 トラフィック フローに定義済みのポリシーを設定し、ルーティング プロトコルから派生したルートへの依存度を弱めることができます。ポリシーベース ルーティングが有効のインターフェイスで受信したすべてのパケットは、拡張パケット フィルタまたはルート マップ を経由して渡されます。ルート マップでは、パケットの転送先を決定するポリシーを記述します。

ルート マップは match 文および set 文からなり、許可または拒否を指定できます。文の解釈は次のとおりです。

  • パケットがいずれかの route map 文と一致した場合、すべての set 文が適用されます。アクションには、ネクスト ホップの選択が含まれます。

  • 文が permit とマークされており、パケットがいずれの route-map 文とも一致しない場合、そのパケットは通常の転送チャネルを介して返送され、接続先ベースのルーティングが実行されます。

詳細については、ルート マップを参照してください。

ポリシーベース ルーティングには、次の機能が含まれます。

  • 送信元ベース ルーティング:異なるユーザ セットを起点とするトラフィックをポリシー ルータ上のそれぞれ異なる接続を使用してルーティングします。

  • ロード シェアリング:トラフィックの特性に基づいて、複数のパスにトラフィックを分散します。

ポリシー ルート マップ

ルート マップは、さまざまなルーティング プロトコルや、特定のルーティング プロトコル内のさまざまなエンティティ間で配布されたルートのフィルタリングで使用されます。ルート マップのエントリごとに、match 文と set 文の組み合わせが 1 つずつ含まれています。match 文では、該当するパケットが特定のポリシーを満たす基準(つまり、満たすべき条件)を定義します。set 文節で、match 基準を満たしたパケットをどのようにルーティングするかを説明します。

ルート マップ文を許可または拒否として指定できます。文に拒否が指定されている場合、一致基準を満たすパケットは標準のフォワーディング チャネルを通じて送り返されます(宛先ベース ルーティングが実行されます)。文に許可が指定されていて、なおかつパケットが一致基準を満たしている場合は、すべての set 文節が適用されます。文に許可が指定されていて、なおかつパケットが一致基準を満たしていない場合は、それらのパケットも標準のルーティング チャネルを通じて転送されます。


(注)  


ポリシー ルーティングは、パケットの送信元となるインターフェイスではなく、パケットを受信するインターフェイス上で指定します。


ポリシーベース ルーティングの set 基準

ルート マップの set 基準は、ルート マップに指定された順番で評価されます。ポリシーベース ルーティング用のルート マップに固有の set 基準は、次のとおりです。

  1. 指定 IP アドレスのリスト:IP アドレスでは、パケットの転送先である宛先へのパス上の隣接ネクストホップ ルータを指定できます。その時点でアップの接続インターフェイスに関連付けられた最初の IP アドレスがパケットのルーティングに使用されます。


    (注)  


    任意で、最大 16 の IP アドレスにロード バランシングを行うように、ネクストホップ アドレスの set 基準を設定できます。この場合、Cisco NX-OS は各 IP フローのすべてのトラフィックを特定の IP ネクスト ホップ アドレスに送信します。


  2. デフォルトのネクストホップ IP アドレスのリスト:ルーティング テーブルにパケットの宛先アドレスの明示ルートがない場合にのみ、この set ステートメントで指定されたインターフェイスまたはネクストホップ アドレスにルーティングします。


    (注)  


    任意で、最大 16 の IP アドレスにロード バランシングを行うように、デフォルトのネクストホップ アドレスの set 基準を構成できます。この場合、Cisco NX-OS は各 IP フローのすべてのトラフィックを特定の IP ネクスト ホップ アドレスに送信します。


  3. NULL インターフェイス:set null インターフェイスを使用すると、match ステートメントに一致するトラフィックがドロップされます。

    パケットが定義された一致基準のいずれにも一致しない場合、そのパケットは標準の宛先ベース ルーティング プロセスを使用してルーティングされます。

ポリシーベース ルーティングの前提条件

ポリシーベース ルーティングの前提条件は、次のとおりです。

  • 有効なライセンスをインストールします。

  • ポリシーベース ルーティングをイネーブルにする必要があります(ポリシーベース ルーティング機能のイネーブル化の項を参照)。

  • インターフェイスに IP アドレスを割り当て、インターフェイスをアップにしてから、ポリシーベース ルーティング用のルート マップをインターフェイス上で適用します。

  • IPv4 および IPv6 TCAM リージョンのデフォルト サイズは 0 であるため、インターフェイスに PBR ポリシーを適用する前に、PBR TCAM を切り分けてスイッチをリロードする必要があります(『 Cisco Nexus 3000 シリーズ NX-OS セキュリティ構成ガイド』を参照)。

ポリシーベース ルーティングの注意事項と制約事項

ポリシーベース ルーティングに関する注意事項および制約事項は、次のとおりです。

  • ポリシーベース ルーティングのルート マップでは、1 つのルート マップ文に match または set 文を 1 つだけ指定できます。

  • match コマンドで、ポリシーベース ルーティング用ルート マップの複数の ACL を参照できません。

  • ポリシーベース ルーティングのルート マップで使用する ACL には、deny 文を含めることができません。

  • インターフェイスが同じ仮想ルーティング/転送(VRF)インスタンスに所属している場合は、ポリシーベース ルーティング対応のさまざまなインターフェイス間で、同じルート マップを共有できます。

  • Cisco Nexus 3000 シリーズ スイッチの場合、他のリージョンから切り分けることによって、IPv4 PBR TCAM の最大サイズを 1024 にすることができます。Cisco Nexus 3100 プラットフォーム スイッチの場合、他のリージョンから切り分けると、この最大サイズは 2816 になります。

  • Cisco Nexus 3000 シリーズ スイッチの場合、他のリージョンから切り分けることによって、IPv6 PBR TCAM の最大サイズを 512 にすることができます。Cisco Nexus 3100 プラットフォーム スイッチの場合、この最大サイズは他のリージョンから切り分けて 512 になります。

デフォルト設定

下の表に、ポリシーベース ルーティング パラメータのデフォルト設定を示します。

表 1. デフォルトのポリシーベース ルーティング パラメータ

パラメータ

デフォルト

ポリシーベース ルーティング

無効化

ポリシーベース ルーティングの設定


(注)  


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


ポリシーベース ルーティング機能のイネーブル化

ルート ポリシーを設定する前に、ポリシーベース ルーティング機能をイネーブルにしておく必要があります。

手順

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

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

グローバル コンフィギュレーション モードを開始します。

ステップ 2

feature pbr

例:

switch(config)# feature pbr

ポリシーベース ルーティング機能をイネーブルにします。

ステップ 3

(任意) show feature

例:

switch(config)# show feature
(任意)

有効および無効にされた機能を表示します。

ステップ 4

(任意) copy running-config startup-config

例:

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

(任意)

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

no feature pbr コマンドを使用して、ポリシーベースのルーティング機能をディセーブルにし、関連するコンフィギュレーションをすべて削除します。

コマンド

目的

no feature pbr

例:

switch(config)# no feature pbr

ポリシーベース ルーティングをディセーブルにして、関連するすべての設定を削除します。

ルート ポリシーの設定

ポリシーベース ルーティングでルート マップを使用すると、着信インターフェイスにルーティング ポリシーを割り当てることができます。ルート マップの設定のセクションを参照してください。

手順

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

ステップ 1

configure terminal

例:

switch# configure terminal
switch(config)#

グローバル コンフィギュレーション モードを開始します。

ステップ 2

interface type slot/port

例:

switch(config)# interface ethernet 1/2
switch(config-if)#

インターフェイス設定モードを開始します。

ステップ 3

{ ip | ipv6 } policy route-map map-name

例:

switch(config-if)# ip policy route-map Testmap
switch(config-if)# ipv6 policy route-map TestIPv6map

IPv4 または IPv6 ポリシーベース ルーティング用のルート マップをインターフェイスに割り当てます。

ステップ 4

(任意) exit

例:

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

ルート マップ設定モードを終了します。

ステップ 5

(任意) exit

例:

switch(config)# exit
(任意)

グローバル コンフィギュレーション モードを終了します。

ステップ 6

(任意) copy running-config startup-config

例:

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

(任意)

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

次に、インターフェイスにルート マップを追加する例を示します。

switch# configure terminal
switch(config)# interface ethernet 1/2
switch(config-if)# ip policy route-map Testmap
switch(config)# exit
switch(config)# copy running-config startup-config

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

コマンド

目的

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

例:

switch(config-route-map)# match ip address access-list-name ACL1

1 つまたは複数の IP アクセス コントロール リスト(ACL)に対して IPv4 アドレスを照合します。このコマンドはポリシーベース ルーティング用であり、ルート フィルタリングまたは再配布では無視されます。

match ipv6 address access-list-name name [ name... ]

例:

switch(config-route-map)# match ipv6 address access-list-name ACLv6

1 つまたは複数の IPv6 ACL に対して IPv6 アドレスを照合します。このコマンドはポリシーベース ルーティング用であり、ルート フィルタリングまたは再配布では無視されます。

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

コマンド

目的

set ip next-hop address1 [address2.. 。] { load-share }

例:

switch(config-route-map)# set ip next-hop 192.0.2.1

ポリシーベース ルーティング用の IPv4 ネクストホップ アドレスを設定します。このコマンドでは、複数のアドレスが設定されている場合に、最初の有効なネクスト ホップ アドレスが使用されます。

任意の load-share キーワードを使用して、最大 16 のネクスト ホップ アドレスにトラフィックのロード バランシングを行います。

set ip default next-hop address1 [ address2... ] { load-share }

例:

switch(config-route-map)# set ip default next-hop 192.0.2.2

宛先への明示的ルートがない場合に使用する、ポリシーベース ルーティング用の IPv4 ネクスト ホップ アドレスを設定します。このコマンドでは、複数のアドレスが設定されている場合に、最初の有効なネクスト ホップ アドレスが使用されます。

任意の load-share キーワードを使用して、最大 16 のネクスト ホップ アドレスにトラフィックのロード バランシングを行います。

set ipv6 next-hop address1 [address2.. 。] { load-share }

例:

switch(config-route-map)# set ipv6 next-hop 2001:0DB8::1

ポリシーベース ルーティング用の IPv6 ネクストホップ アドレスを設定します。このコマンドでは、複数のアドレスが設定されている場合に、最初の有効なネクスト ホップ アドレスが使用されます。

任意の load-share キーワードを使用して、最大 16 のネクスト ホップ アドレスにトラフィックのロード バランシングを行います。

set ipv6 default next-hop address1 [ address2... ]

例:

switch(config-route-map)# set ipv6 default next-hop 2001:0DB8::2

宛先への明示的ルートがない場合に使用する、ポリシーベース ルーティング用の IPv6 ネクスト ホップ アドレスを設定します。このコマンドでは、複数のアドレスが設定されている場合に、最初の有効なネクスト ホップ アドレスが使用されます。

Cisco NX-OS はネクスト ホップおよびインターフェイスを検出すると、ただちにパケットをルーティングします。

ポリシーベース ルーティングの設定の確認

ポリシーベース ルーティングの設定情報を表示するには、次のいずれかのタスクを実行します。

コマンド

目的

show ip policy [name]

IPv4 ポリシーに関する情報を表示します。

show route-map [name] pbr-statistics

ポリシー統計情報を表示します。

route-map map-name pbr-statistics を使用してポリシー統計情報を有効にします。clear route-map map-name pbr-statistics を使用してこれらのポリシー統計情報をクリアします。

ポリシーベース ルーティング統計情報の表示

ポリシーベース ルーティングの統計情報を表示するには、show route-map rmap-name pbr-statistics コマンドを使用します。統計情報は、ルート マップ シーケンスごとに維持されます。これは、特定のルート マップ シーケンスの一致条件に基づいてポリシー ルーティングされるパケット数を示します。デフォルトのルーティング テーブルを使用してルーティングした他のパケット(set コマンドでは到達不能なネクスト ホップが原因の場合がある)もすべて表示されます。統計情報を表示する前に、PBR 統計情報の収集をオンにする必要があります。

次に、PBR 統計情報を表示する例を示します。

switch(config)# show route-map pbr-sample pbr-statistics

ポリシーベース ルーティング統計情報の消去

ルート マップの PBR 統計のために保持されているカウンタをクリアするには、clear route-map rmap-name pbr-statistics コマンドを使用します。

次の例では、すべての PBR 統計情報をクリアする方法を示します。

switch(config)# clear route-map pbr-sample pbr-statistics

ポリシーベース ルーティングの設定例

インターフェイス上で単純なルート ポリシーを設定する例を示します。

feature pbr
ip access-list pbr-sample
permit tcp host 10.1.1.1 host 192.168.2.1 eq 80
!
route-map pbr-sample
match ip address pbr-sample
set ip next-hop 192.168.1.1
!
route-map pbr-sample pbr-statistics
 
interface ethernet 1/2
ip policy route-map pbr-sample

次の出力で、この設定を確認します。

n3000# show route-map pbr-sample
 
route-map pbr-sample, permit, sequence 10
Match clauses:
ip address (access-lists): pbr-sample
Set clauses:
ip next-hop 192.168.1.1
 
n3000# show route-map pbr-sample pbr-statistics
 
route-map pbr-sample, permit, sequence 10
Policy routing matches: 84 packets

関連項目

ポリシーベース ルーティングの詳細については、次の項目を参照してください。

その他の参考資料

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

標準

標準

タイトル

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

ポリシーベース ルーティングの機能の履歴.

次の表に、この機能のリリースの履歴を示します。

表 2. ポリシーベース ルーティングの機能の履歴.

機能名

リリース

機能情報

ポリシーベース ルーティング

6.0(2)U2(1)

この機能が導入されました。