Policy-Based Routing(PBR)とは
従来のルーティングは、宛先 IP アドレスの ルーティングテーブル情報に基づいて ネクストホップに転送します。
ASA: Policy Based Routing (PBR) について
ポリシーベース ルーティング(PBR)は、送信元アドレス、送信元ポート、宛先アドレス、宛先ポート、プロトコル、またはこれらの組み合わせの条件に基づいて 特定のトラフィックを指定のネクストホップに転送することができます。
要するに、従来の静的ルーティングやOSPFやBGPの動的ルーティングとは別のルーティング手法であり、特徴として複数の組み合わせの条件でルーティングの制御ができるということですね。
トポロジ
以下のトポロジで設定を確認していきます。(今回はR2,R5は使用しません)
![](https://itinfranote.com/wp-content/uploads/PBR-1.png)
Policy-Based Routing(PBR)の設定方法
Policy-Based Routing(PBR)はroute-mapを使用して制御したい通信を定義してIFに適応させることで通信の制御ができます。route-mapではset ip default next-hopコマンドとset ip next-hopコマンドを使用して通信のネクストホップを設定します。
set ip default next-hopコマンドは、ルーティングテーブルに宛先IPアドレスが存在するかどうかを確認し、次の操作を実行します。
- 宛先 IP アドレスが存在する場合、このコマンドは、パケットのポリシー ルーティングを行わずに、ルーティング テーブルに基づいてパケット転送をします。
- 宛先IPアドレスが存在しない場合、コマンドはパケットをポリシールーティングし、指定されたネクストホップに送信します。
set ip next-hopコマンドは、指定されたネクストホップの存在を確認し、次の点を確認します。
ネクストホップコマンドを使用したポリシーベースルーティングの設定
- ネクスト ホップがルーティング テーブルに存在する場合、このコマンドは、ネクスト ホップへのパケットのポリシー ルーティングを行います。
- ネクスト ホップがルーティング テーブルに存在しない場合、このコマンドは通常のルーティング テーブルを使用してパケットを転送します。
①Route-mapの設定・Interfaceに適応
※戻りの経路に必要な静的ルートも設定します。
R1(config)#ip route 0.0.0.0 0.0.0.0 13.1.1.3
R4(config)#ip route 0.0.0.0 0.0.0.0 34.1.1.3
R3(config)#ip route 1.1.1.1 255.255.255.255 13.1.1.1
R3(config)#ip access-list extended R1R3
R3(config-ext-nacl)#permit ip host 1.1.1.1 host 4.4.4.4
R3(config)#route-map R1R3 permit 10
R3(config-route-map)#match ip address R1R3
R3(config-route-map)#set ip next-hop 34.1.1.4
R3(config)#interface GigabitEthernet 0/1
R3(config-if)#ip policy route-map R1R3
動作確認
PBR適応前
R1#ping 4.4.4.4 source loopback 1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 4.4.4.4, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
U.U.U
Success rate is 0 percent (0/5)
PBR適応後
R1#ping 4.4.4.4 source loopback 1
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 4.4.4.4, timeout is 2 seconds:
Packet sent with a source address of 1.1.1.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 3/3/4 ms
②Route-mapの設定・Interfaceに適応
R3(config)#ip route 11.11.11.11 255.255.255.255 13.1.1.1
R3(config)#ip access-list extended R1R3-2
R3(config-ext-nacl)#permit ip host 11.11.11.11 host 44.44.44.44
R3(config)#route-map R1R3-2 permit 10
R3(config-route-map)#match ip address R1R3-2
R3(config-route-map)#set ip default next-hop 34.1.1.4
R3(config)#interface GigabitEthernet 0/1
R3(config-if)#ip policy route-map R1R3-2
ちなみにPBRはインターフェイスに1つしか設定できず、既存の設定は上書きされます。
動作確認
R1#ping 44.44.44.44 source lo11
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 44.44.44.44, timeout is 2 seconds:
Packet sent with a source address of 11.11.11.11
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 5/8/15 ms