路由策略和策略路由 & route-map

今天,这个专题应用下route-map,在这个之前,有很多内容需要掌握,不是简单的制定一个路由图就可以了。

                                                   --------

本次专题理论的东西居多,但是不是复制黏贴,是加上自己的理解思想。

第一个要解决的问题:路由策略和策略路由有什么区别?到底为何物?

先说策略路由,影响的不是路由表的生产,策略路由又叫PBR,是Policy-based routing策略基于路由,那么这个路由表存在是已经存在而且稳定的。

用TCP/IP路由技术一书的表述就是:策略路由就是一个复杂的静态路由。

总结:策略路由是一个基于路由表的影响特定数据包的转发的一个方式,这个方式是应用于接口下的。

例如:让192.168.1.1的数据包都从s0/1走,让192.168.1.2的数据包都从s0/1走

access-list 1 permit host 192.168.1.1

access-list 2 permit host 192.168.1.2

route-map ccie permit 10

match ip address 1

set interface s0/1

router0map ccie permit 20

match ip address 2

set interface s0/2

int fa1/0

ip policy route-map ccie

注意:set interface s0/1 与 set  default interface s0/1

      set ip next-hip   与 set  default ip next-hop  是有区别的,前者不查找路由直接进行了转发,而后者是先查找路由表,查找不到精确的路由表时才会转发到下一跳接口或IP。

注意:PBR只有进方向方向,一定要注意!PBR优先于路由表查找

注意:策略路由PBR默认只对穿越流量生效,

(config)#(ip local policy route-map ccie)  //这样写是策略理由也影响本地产生的流量

思科利用策略路由最常用的方式是丢弃报文:

set interface null 0 (这样比acl deny 减少很多开销)

int null 0

no ip unreachable  //为了防止丢弃报文返回大量的不可达信息

路由策略开始了,路由策略说白了就是影响路由表最终生成的结果的,比如我可以匹配ACL之后修改OSPF网络中的COST,达到改变路由表的效果。我也可以匹配ACL 一些源路由信息,然后修改下一跳的出口或IP

路由策略一般与BGP结合使用的比较常见,这里要注意一下:

match interface s0/1   //不是判断s0/1接口Up与down的,他是用于匹配“指定下一跳接口是否是s0/1的路由“

2个概念性问题先说到这里,下面说route-map  路由图

route-map 10  是默认的

route-map 10  route-map 20 这样是按匹配成功与否顺序执行的,对于route-map 的命名一定要注意!!

route-map isp1 permit 10

route-map isp12 permit 10

route-map isp permit 10

肯定是先执行isp,如果匹配失败执行isp1 ,如果失败再执行isp12。

注意:对于route-map有一个隐含的默认拒绝,但是对于拒绝行为依赖于这个路由图是应用于 策略路由还是应用于 重新分配(重分布),如果是IP数数据包匹配策略路由没有成功,是会重新查找路由表的,对于重新分配则,是对于路由来说的,它是不会被重分布的。

注意:对于match interface s0/1 这个配置一般和 match ip route-source 一起使用,用于匹配这个路由信息的下一跳接口是否是s0/1!

set ip next-hop verify-availability 利用CDP表验证下一跳IP是否可达,来判断是否继续策略路由或者切换线路

route-map的match可以对标准ACL匹配,也可以对扩展ACL匹配

access-list 1 permit host 172.16.1.1

match ip address 1

access-list 100 permit tcp 172.16.1.0 0.0.0.255 any eq ftp

access-list 100 permit tcp 172.16.1.0 0.0.0.255 eq ftp any  //一样的

match ip adress 100

match length 1000 1600 //匹配三层的数据包字节大小范围

原文地址:https://www.cnblogs.com/qiaoyanlin/p/8745478.html