route-map的原理及简单应用「建议收藏」

route-map的原理及简单应用「建议收藏」route-map(路由策略)

大家好,又见面了,我是你们的朋友全栈君。

Route-map

 什么是route-map

怎么说呢?你说它属于什么呢?属于路由策略?还是属于策略路由?

其实都不算,我个人理解,它只算是一个工具,上面两者都能用到

但是这个工具吧,用着还挺爽,所涉及到的范围还挺多的呢?~

 

IGP协议,BGP协议,….

Distribute,redistribute,等等,都能看到它的身影

 

初识route-map

 

1Route-map中的语句相当于acl的各行

2route-map的序列号默认为10,不会自动递增,所以需要手动的写序号

3route-map的行为默认是permit

4match——匹配条件,set——执行动作

match语句中,会有不同的表现形式

1 match X1,X2,写在一行,用,隔开时,是逻辑上的“或”关系

2 match X1  

 Match X2 写在两行时,用回车隔开,是逻辑上的“且”关系

“或”“且”想必不用多说了,很好理解 ,或,多个条件满足一个则OK

且,就是都得满足.

 

Route-map的运行方式

 route-map的原理及简单应用「建议收藏」

 

 PS:route-map中,和ACL是一样的,最后都有一条deny 的动作,

所以,我们在部署route-map时,也要分情况的来配置一条permit

当然,是分情况哦~什么情况呢?

比如说你在做路由重分布时,只想提取某些条目,那势必要拒绝其它的

而如果在后期的BGP中,针对某些条目去施加特定属性时,就要去话茬其它没有被策略的,以保证路由条目的正常传递,

这一点在后期的各个小实验中会有明显的体现,先要清楚这个事儿~

 

实例1

 route-map的原理及简单应用「建议收藏」

 

 如图所示,R1-R2运行RIP,R2-R3运行OSPF,在R2上进行双向重发布,

可以先来分析一下,

OSPF重分布到RIP ,需要写跳数,那请问这两个条目到达R1时的跳数是否一致?

RIP进到OSPF时,可以去修改metric-typeR3上看到的类型是否一致?

答案是肯定的,因为在重分布的时候并没有进行任何的修改,况且单独的重分布也没有办法进行设置。

而我现在的需求就是这样,OSPF进入RIP的两条,192.168.1.02跳,192.168.2.05

RIP进入OSPF172.16.1.0OE1172.16.2.0OE2

 

这时候就要请出我们的主角route-map了,

思路

1 使用ACL来匹配路由条目,(使用permit

2 定义route-map条目,匹配/不匹配

3 定义match条件

4 定义动作

5 是否考虑允许其它(最后一条有deny

6 调用route-map

 

PS:还记得之前的distribute-list吗?

Distribute-list + acl,是ACL起到决策作用(deny/permit

Route-map+ ACL route-map起到了决策作用,(所以通常使用route-map时,ACL都是permit去匹配)这一点千万要记住

 

在哪里做呢?肯定是在中间那台执行了重分布设备上

 

OSPF注入到RIP中,设置不同的metric跳数

 route-map的原理及简单应用「建议收藏」

 

 先查看一下在路由表中的具体前缀,必须按照这里的格式写才OK

由于OSPF的网络中,默认会将 loopback接口显示为一个终端,即32位的。

以及在没有配置策略之前,R1上看到的两个条目的metric

 route-map的原理及简单应用「建议收藏」

可以看到,都是一样的。

具体部署

R2(config)#access-list 3 per 192.168.1.1 0.0.0.0    //匹配网段

R2(config)#access-list 4 per 192.168.2.1 0.0.0.0

 

R2(config)#route-map ospf 10     //定义名字ospfroute-map,序号10

R2(config-route-map)#match ip add 3   //匹配地址3(即ACL3

R2(config-route-map)#set metric 2   //执行动作,metric2

R2(config-route-map)#exit

R2(config)#route-map ospf 20

R2(config-route-map)#ma ip add 4

R2(config-route-map)#set me 5

R2(config-route-map)#exit

R2(config)#route-map ospf 30      //最后的route-map,匹配所有,即放行

R2(config-route-map)#exit        

R2(config)#router rip

R2(config-router)#redistribute ospf 1 route-map ospf   //重分布时调用route-map

 

最后再来看一下R1上的变化吧

 route-map的原理及简单应用「建议收藏」

 

 一个变成了2跳,一个变成了5跳,成功

 

再来看另外一侧,RIP注入OSPF后显示不同metric-type

默认情况下都会是OE2,可以手动调整为OE1

但我们要求一样一个,

 route-map的原理及简单应用「建议收藏」

 

 现在在R3上看是都一样的

 

R2上设置route-map

R2(config)#access-list 1 per 172.16.1.0 0.0.0.255

R2(config)#access-list 2 per 172.16.2.0 0.0.0.255

 

R2(config-router)#route-map rip 10

R2(config-route-map)#ma ip add 1

R2(config-route-map)#set metric-type type-1

R2(config-route-map)#exit

R2(config)#route-map rip 20

R2(config-route-map)#ma ip add 2

R2(config-route-map)#set metric-type type-2

R2(config)#route-map rip 30 

 

R2(config-router)#redistribute rip subnets route-map rip

OK

再到R3上去看一下

 route-map的原理及简单应用「建议收藏」

 

 

看到了吗?这就是效果。

 

那有可能你会问,这么改的意义何在呢?两条路由本来就不一样,何必要这么改?

通过部署route-map路由策略,可以使收到相同路径的路由(负载均衡)时,进行策略部署,实现干预选路。从而达到我们的预期效果。

 

 

 

以上是一个简单的实例,可以很直观的看到route-map的原理以及部署过程,

route-map中可以匹配和设置的项很多

Match匹配项

 route-map的原理及简单应用「建议收藏」

 

 set动作

 route-map的原理及简单应用「建议收藏」

 

 

你会发现里面有好多都是关于BGP的,是的,没错,当到了后面的BGP时,会疯狂的使用route-map来部署策略。

 

所以,如果route-map学不好,那后面的BGP你也就学的那么回事儿吧!  

 

 

—————————————

CCIE成长之路 — 梅利

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/154946.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 云服务器搭建hadoop(搭建云计算服务器)

    ApacheHadoop是一个用java语言实现的软件框架,在由大量计算机组成的集群中运行海量数据的分布式计算,它可以让应用程序支持上千个节点和PB级别的数据。Hadoop并不完全代表云计算,所以,要用Hadoop搭建完整的云计算平台,答案是不够。我们常说云计算,实际上还是通过计算机的大规模或者说海量处理来为生活中各式各样的人和各行各业服务——所以,核心在“服务”。关于服务,展开…

    2022年4月10日
    163
  • (二)购物商城数据库设计-商品表设计

    (二)购物商城数据库设计-商品表设计大家好,今天我们来设计一下购物商城的商品表。我们的目标是表结构能够满足下面这张图的搜索:在设计表之前,我们先来了解下商品中的一个概念:SPU和SKUSPUSPU(StandardProductUnit):标准化产品单元。是商品信息聚合的最小单位,是一组可复用、易检索的标准化信息的集合,该集合描述了一个产品的特性。通俗点讲,属性值、特性相同的商品就可以称为一个SPU。SK…

    2022年6月20日
    46
  • MongoDB启动失败原因「建议收藏」

    MongoDB启动失败原因「建议收藏」MongoDB启动失败原因今天某个项目突然登录不了,查看服务器发现是后端出现异常,停掉后端重新启动的时候失败,显示是数据库连接失败,然后接着查看数据库,发现数据库连接失败,原因是数据库挂掉了。数据库用的是MongoDB,我也只是听过还没有使用过,简单的在网上查询了一下MongoDB的启动命令就直接开始启动了,结果发现启动失败。尝试了好一些方法后才终于成功启动:尝试提升MongoDB所在文…

    2025年6月21日
    6
  • ICMP协议/IGMP协议详解

    ICMP协议/IGMP协议详解网际控制报文协议ICMP功能:ICMP允许主机或者路由器报告差多情况和提供有关异常情况的报告,它是网络层的协议,ICMP报文装在IP数据报中,作为其中的数据部分。ICMP报文的种类ICMP差错报文终点不可达源点抑制超时参数问题改变路由(重定向)ICMP询问报文回送请求和回答时间戳请求和回答ICMP应用举例ping(PacketInternetGroper)命令:该命令利用发送分

    2022年9月14日
    3
  • TCP四次挥手详解[通俗易懂]

    TCP四次挥手详解[通俗易懂]在开始之前可以先了解一下TCP三次握手TCP四次挥手过程和状态变迁在断开连接之前客户端和服务器都处于ESTABLISHED状态,双方都可以主动断开连接,以客户端主动断开连接为优。第一次挥手:客户端打算断开连接,向服务器发送FIN报文(FIN标记位被设置为1,1表示为FIN,0表示不是),FIN报文中会指定一个序列号,之后客户端进入FIN_WAIT_1状态。也就是客户端发出连接释放报文段(FIN报文),指定序列号seq=u,主动关闭TCP连接,等待服务器的确认。第二次挥…

    2022年6月2日
    35
  • mybatis自定义排序_oracle排序分页查询

    mybatis自定义排序_oracle排序分页查询importtk.mybatis.mapper.entity.Example;importcom.github.pagehelper.PageHelper;…@OverridepublicList<Repayxxx>listRepaymentPlan(Integerstart){Exampleex…

    2022年9月22日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号