路由策略和策略路由 & 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 //匹配三层的数据包字节大小范围

 

posted @   D_R_Y  阅读(14815)  评论(0编辑  收藏  举报
编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示