PBR

Policy Based Routing
Protocol-Independent

構成

R4のloopbackからR2,R3のloopbackへ疎通可能にする
R1にR2,R3のloopback向け経路は無し

設定

■ACLで捕捉対象パケットを指定
R1(config)#ip access-list extended FROM-R4-lo4
R1(config-ext-nacl)#permit ip host 4.4.4.4 any

R1(config)#ip access-list extended FROM-R4-lo40
R1(config-ext-nacl)#permit ip host 40.40.40.40. any

■route-map作成
R1(config)#route-map TEST permit 10
R1(config-route-map)#match ip address FROM-R4-lo4
R1(config-route-map)#set ip next-hop 10.1.1.2
→4.4.4.4から届いたパケットは10.1.1.2へ転送

R1(config)#route-map TEST permit 20
R1(config-route-map)#match ip address FROM-R4-lo40
R1(config-route-map)#set ip next-hop 10.2.2.3
→40.40.40.40から届いたパケットは10.2.2.3へ転送

■着信IFに適用
R1(config)#g4/0
R1(config-if)#ip policy route-map TEST
R1(config-if)#end

確認

■R1

sh ip policy
sh route-map

■R4

4.4.4.4を送信元とすればR1のPBRによりネクストホップに転送される
R3向けで4.4.4.4をsource指定するとR1のPBRでR2に転送され、R2のデフォルトルートによりR1へ向かう
R1に3.3.3.3向け経路は無いので破棄される


■R1のdebug
no ip cef
debug ip packet

*Jan 19 00:26:47.679: IP: s=4.4.4.4 (GigabitEthernet4/0), d=2.2.2.2 (GigabitEthernet1/0), len 100, input feature, Policy Routing(86), rtype 2, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Jan 19 00:26:47.683: IP: s=4.4.4.4 (GigabitEthernet4/0), d=2.2.2.2 (GigabitEthernet1/0), len 100, input feature, MCI Check(92), rtype 2, forus FALSE, sendself FALSE, mtu 0, fwdchk FALSE
*Jan 19 00:26:47.691: IP: s=4.4.4.4 (GigabitEthernet4/0), d=2.2.2.2 (GigabitEthernet1/0), g=10.1.1.2, len 100, forward
*Jan 19 00:26:47.699: IP: s=4.4.4.4 (GigabitEthernet4/0), d=2.2.2.2 (GigabitEthernet1/0), len 100, sending full packet