策略路由(Policy-based routing)  


策略路由(Policy-based Routing)和静态路由(Static Routing)的比较,如下表




 


 

 策略路由

 静态路由

配置 方式

 手工配置

 手工配置


配置

原则

  

根据“目的”或“来源”位指定路由路径; 

策略路由也是静态路由的一种,只是比静态路由更有弹性。

 根据“目的”地址,指定路由路径


 


策略路由配置的一般步骤:


1.       定义一个路由映射图:


Route-map


2.       将路由映射图映射到特定的接口上:


Router(config-if)#ip policy route-map map-tag

 


路由映射图(route-map)与控制访问列表命令结构的比较,如下表:


 Route-map 路由映射

ACL访问列表 

  

Route-map(定义一个路由映射)

Match(匹配)

Set(采取的动作)

  

Access-list(定义一个访问列表)

Permit(匹配则保留)

Deny(匹配则丢弃)


 


Route-map命令详解


命令语法:Router(config)#route-map map-tag [permit|deny] [sequence-number]


         Map-tag 该路由映射图的名字或ID;


         指定Permit参数假如满足匹配条件则采取动作;


         指定deny参数假如满足匹配条件则不采取行动;


         [sequence-number](序列号)参数指示一个新的路由映射图所处的位置;


         [sequence-number]序列号也用来检查匹配条件的顺序。


命令语法:Router(config-route-map)#match {action}


命令语法:Router(config-route-map)#set {action}


 


策略路由的主要应用:


1.       应用于路由重分布(Redistribution)


2.       根据不同来源位置的数据流量,通过策略路由选择不同的出口;


3.       根据不同的类型(HTTP,FTP)的数据流量,通过策略路由选择不同的出口。


 

实验:


实验1.       应用于路由重分布:


在该实验中边界路由器上运行着RIP和OSPF路由协议,现要求将RIP中度量值(跳数)为3的路由重分发(redistribute)到OSPF中,路由重分发到OSPF中以后,度量值变为6,并且将其度量值属性设置为1。


启用BGP 环路检测功能 bgp synchronization_路由器


在边界路由器上的配置:


Router(config)#router ospf 100 
 
 Router(config-router)#redistribute rip route-map rip-routes 
 
 Router(config)#route-map rip-route permit (路由映射匹配以下条件就采取行动) 
 
 Router(config-route-map)#match metric 3 (匹配条件:具有跳数为3的RIP路由) 
 
 Router(config-route-map)#set metric 6 (为匹配条件的RIP路由设置OSPF属性:metric=6) 
 
 Router(config-route-map)#set metric-type 1 (为匹配条件的RIP路由设置OSPF属性:type1)


实验2.       根据不同来源地址的流量,通过策略路由选择不同的出口:


在这个实验中,源地址为211.141.1.0/24的数据必须经由R2的S0流出,经过R3再到达Internet;


在这个实验中,源地址为172.16.1.0/24的数据必须经由R2的S1流出,进过R1再到达Internet。


启用BGP 环路检测功能 bgp synchronization_internet_02


在R2上的具体配置:


R2(config)#access-list 1 permit 211.141.1.0 0.0.0.255  
 
 R2(config)#access-list 2 permit 172.16.1.0 0.0.0.255 
 
 R2(config)#route-map ISP_R3 permit 10 
 
 R2(config-route-map)#match ip address 1 
 
 R2(config-route-map)#set interface s0 
 
 R2(config-route-map)#exit 
 
 R2(config)#route-map ISP_R1 permit 20 
 
 R2(config-route-map)#match ip address 2 
 
 R2(config-route-map)#set interface s1


 


 


实验3.       根据数据流量类型(FTP,HTTP等)来进行策略路由:


这个实验要达到的目的是:


从Internet到达R0的HTTP流量从S0/0发出;


从Internet到达R0的FTP流量从S0/1发出;


从Internet到达R0的其他流量从S0/2发出。


启用BGP 环路检测功能 bgp synchronization_启用BGP 环路检测功能_03


 


 


详细命令:


R0(config)#access-list 100 permit tcp any any eq www 
 
 R0(config)#access-list 101 permit tcp any any eq ftp 
 
 R0(config)#access-list 102 permit any any 
 
   
 
 R0(config)#route-map traffic permit 10 
 
 R0(config-route-map)#match ip address 100 
 
 R0(config-route-map)#set interface s0/0 
 
   
 
 R0(config)#route-map traffic permit 20 
 
 R0(config-route-map)#match ip address 101 
 
 R0(config-route-map)#set interface s0/1 
 
   
 
 R0(config)#route-map traffic permit 30 
 
 R0(config-route-map)#match ip address 102 
 
 R0(config-route-map)#set interface s0/2 
 
   
 
 R0(config)#int e0 
 
         R0(config-if)#ip policy route-map traffic