启用策略路由: 开始配置route-map。使用route-map map-tag [permit deny] [sequence-number]进入route-map的配置模式。
使用match语句定义感兴趣的流量,如果不定义则指全部流量。match length min max and/or match ip address {access-list-number name}[...access-list-number name]
使用set命令设置数据包行为。
set ip precedence [number name]
set ip next-hop ip-address [... ip-address]
set interface interface-type interface-number [... type number]
set ip default next-hop ip-address [... ip-address]
set default interface interface-type interface-number [... type ...number]
这里要注意set ip next-hop与set ip default next-hop、set interface与set default interface这两对语句的区别,不含default的语句,是不查询路由表就转发数据包到下一跳IP或接口,而含有default的语句是先查询路由表,在找不到精确匹配的路由条目时,才转发数据包到default语句指定的下一跳IP或接口。
进入想应用策略路由的接口。interface xxx
应用所定义的策略。注意必须在定义好相关的route-map后才能在接口上使用该route-map,在接口启用route-map策略的命令为:
ip policy route-map map-tag
启用Fast-Switched PBR 在Cisco IOS Release 12.0之前,策略路由只能通过“进程转发”来转发数据包,这样数据包的转发效率是非常低的,在不同的平台上,基本在每秒1000到10,000个数据包。随着缓存转发技术的出现,Cisco实现了Fast-Switched PBR,大大提升了数据包的转发速度。启用方法即在接口中使用ip route-cache policy命令。
注意:Fast-switched PBR支持所有的match语句及大多数的set语句,但其有下面的两个限制:
不支持set ip default next-hop 与 set default interface命令。
如果在route-cache中不存在set中指定的接口相关的项,那么仅在point-to-point时set interface命令才能够Fast-switched PBR。而且,在进行“进程转发”时,系统还会先查询路由条目查看该interface是不是一个合理的路径。而在fast switching时,系统不会对此进行检查。