1. 程式人生 > 實用技巧 >策略路由

策略路由

策略路由

策略路由PBR(Policy Based Routing)它是一種依據使用者制定的策略而進行流量轉發的機制。

策略路由分類

本地策略路由:

對本裝置傳送的報文實現策略路由,比如本機下發的ICMP、BGP等協議報文。
當用戶需要實現不同源地址的報文或者不同長度的報文通過不同的方式進行傳送時,可以配置本地策略路由。常用Policy-Based-Route工具來實現。

介面策略路由:

對本裝置轉發的報文生效,對本機下發的報文不生效。
當用戶需要將收到的某些報文通過特定的下一跳地址進行轉發時,需要配置介面策略路由。使匹配重定向規則的報文通過特定的下一跳出口進行轉發,不匹配重定向規則的報文則根據路由表直接轉發。介面策略路由多應用於負載分擔和安全監控。常用Traffic-Policy工具來實現。

智慧策略路由:

基於鏈路質量資訊為業務資料流選擇最佳鏈路。
當用戶需要為不同業務選擇不同質量的鏈路時,可以配置智慧策略路由。
一般在防火牆裡面會涉及到智慧選路這一塊的內容

本地策略路由

R1和R2路由器各自配置介面IP地址和環回地址,沒有啟動任何協議,讓其R1的1.1.1.1訪問R2的2.2.2.2的IP地址,我們可以使用PBR技術來實現此需求

第一步:基礎配置

[R1]display ip routing-table 
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Tables: Public
         Destinations : 
8 Routes : 8 Destination/Mask Proto Pre Cost Flags NextHop Interface 1.1.1.1/32 Direct 0 0 D 127.0.0.1 LoopBack0 12.1.1.0/24 Direct 0 0 D 12.1.1.1 GigabitEthernet 0/0/0 12.1.1.1/32 Direct 0 0 D 127.0
.0.1 GigabitEthernet 0/0/0 12.1.1.255/32 Direct 0 0 D 127.0.0.1 GigabitEthernet 0/0/0 127.0.0.0/8 Direct 0 0 D 127.0.0.1 InLoopBack0 127.0.0.1/32 Direct 0 0 D 127.0.0.1 InLoopBack0 127.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0 255.255.255.255/32 Direct 0 0 D 127.0.0.1 InLoopBack0
[R2]display ip routing-table protocol static
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Public routing table : Static
         Destinations : 1        Routes : 1        Configured Routes : 1

Static routing table status : <Active>
         Destinations : 1        Routes : 1

Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        1.1.1.1/32  Static  60   0          RD   12.1.1.1        GigabitEthernet
0/0/0

Static routing table status : <Inactive>
         Destinations : 0        Routes : 0

第二步:用acl匹配出源地址

acl number 2000  
 rule 5 permit source 1.1.1.1 0 

第三步:在R1上面建立PBR

policy-based-route PBR permit node 10
 if-match acl 2000
 apply ip-address next-hop 12.1.1.2 

第四步:應用策略路由

ip local policy-based-route PBR

第五步:在R1上面pingR2的地址

[R1]ping -a 1.1.1.1 2.2.2.2
  PING 2.2.2.2: 56  data bytes, press CTRL_C to break
    Reply from 2.2.2.2: bytes=56 Sequence=1 ttl=255 time=60 ms
    Reply from 2.2.2.2: bytes=56 Sequence=2 ttl=255 time=30 ms
    Reply from 2.2.2.2: bytes=56 Sequence=3 ttl=255 time=30 ms
    Reply from 2.2.2.2: bytes=56 Sequence=4 ttl=255 time=20 ms
    Reply from 2.2.2.2: bytes=56 Sequence=5 ttl=255 time=20 ms

  --- 2.2.2.2 ping statistics ---
    5 packet(s) transmitted
    5 packet(s) received
    0.00% packet loss
    round-trip min/avg/max = 20/32/60 ms

介面策略路由

配置介面策略實現基於源的負載分擔,PC1訪問3.3.3.3走的路徑是AR1-AR2-AR3。PC2訪問3.3.3.3走的路徑是AR1-AR4-AR3

AR1、AR1、AR3、AR4執行ospf路由,區域為0

此時R4到達3.3.3.3的路由時負載的

[R4]display ip routing-table 3.3.3.3
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 2
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        3.3.3.3/32  OSPF    10   2           D   192.168.14.1    GigabitEthernet
0/0/0
                    OSPF    10   2           D   192.168.24.2    GigabitEthernet
0/0/1

[R4]

第一步:通過ACL匹配資料流

acl number 2000  
 rule 5 permit source 192.168.1.1 0 
acl number 2001  
 rule 5 permit source 192.168.1.2 0 

第二步:建立2個流分類

traffic classifier PC1
 if-match acl 2000
traffic classifier PC2
 if-match acl 2001

第三步:建立流行為

traffic behavior R1-R2
 redirect ip-nexthop 192.168.12.2
traffic behavior R1-R3
 redirect ip-nexthop 192.168.14.4

第四步:建立流策略

traffic policy PBR
 classifier PC1 behavior R1-R2
 classifier PC2 behavior R1-R3

第五步:在介面的入方向呼叫策略

interface GigabitEthernet0/0/2
traffic-policy PBR inbound

第六步:檢查如下

在R1的路由表裡面還是3.3.3.3是負載分擔方式
[R4]display ip routing-table 3.3.3.3
Route Flags: R - relay, D - download to fib
------------------------------------------------------------------------------
Routing Table : Public
Summary Count : 2
Destination/Mask    Proto   Pre  Cost      Flags NextHop         Interface

        3.3.3.3/32  OSPF    10   2           D   192.168.14.1    GigabitEthernet
0/0/0
                    OSPF    10   2           D   192.168.24.2    GigabitEthernet
0/0/1

[R4]

如果R4的G0/0/0介面故障呢?

如果PBR能夠匹配的話,走我們PBR實現定義好的動作,如果PBR匹配不上,我們就走路由表