前文我们了解了路由过滤和路由过滤工具Filter-Policy使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15316188.html;今天我们来聊一聊路由策略工具Route-Policy工具的相关话题;

  Route-Policy

  Route-Policy是路由策略工具,主要用来过滤路由和修改路由属性的工具;它的可以调用条件匹配工具ACL或前缀列表IP-Prefix来作为条件,匹配符合条件的路由,然后再对路由进行修改;比如允许路由或者拒绝对应路由,除此之外它还可以修改路由属性;如修改下一跳、开销等等;

  Route-Policy语法规则

  提示:Route-Policy是由多个node构成,node的概念类似ACL里的rule,每个node会有不同的索引号,类似ACL里面的rule 编号,这个编号的主要作用是用来定义匹配条件的先后顺序;其次route-policy和IP-Prefix一样都是用名字来标识不同路由策略;一条Route-policy除了有名字、节点号还有节点匹配模式,即允许和拒绝;if-match语句主要用来描述怎么匹配对应的路由(即匹配条件),满足条件(通过)的路由会执行下面的apply语句做修改路由属性的操作;route-policy node之间是或关系;每个node下可以有若干个if-match和apply子句,if-match、apply子句之间是与的关系,即多个条件需同时满足,过滤后的操作也是全部执行;

  Route-Policy匹配流程

  提示:route-policy的匹配流程和IP-Prefix的执行流程查不多,都是从上至下依次每个节点进行匹配,如果路由匹配上了,则不再往下匹配,直接跳转到对应执行apply子句(模式是permit的情况),如果模式是deny,则表示对应路由不能通过(当然这个不能通过是条件中是动作是permit,如果条件中是deny动作,则对应路由会接着往下匹配);如果路由没有被任何一个节点匹配,则对应路由会被默认规则匹配;在route-policy中默认规则是拒绝操作,即如果没有被任何节点匹配,对应默认动作是不允许路由通过;

  Route-Policy条件匹配模式和匹配模式组合说明

  提示:如果对应匹配条件中规则是permit,此时匹配的路由是否允许通过取决route-policy的模式,permit就允许通过,deny就不允许通过;如果没有被匹配上则进行下一个节点匹配;如果条件中是deny,则对应匹配或没有匹配都会进行下一个节点匹配,即条件规则是deny,不管route-policy的模式是permit还是deny,对应路由都会进行下一个节点匹配;也就是说条件是deny的规则,最后路由的去留取决默认规则;

  Route-Policy匹配规则

  提示:route-policy匹配规则可以匹配路由的ip地址范围,用acl来过滤路由;也可以使用前缀列表来过滤对应路由条目;除此之外还可以通过匹配路由下一跳,出接口、路由类型、标签和开销等作为条件;

  Route-Policy执行动作

  提示:对应匹配允许的路由信息,route-policy可以做修改路由的下一跳,优先级,标签,开销以及开销类型等;

  实验:如下拓扑,配置ospf

  R1的配置

sys
sys R1
int g0/0/0
ip add 10.0.0.1 24
int g0/0/1
ip add 11.0.0.1 24 ospf 1 router-id 1.1.1.1
area 0
net 10.0.0.0 0.0.0.255
net 11.0.0.0 0.0.0.255

  R2的配置

sys
sys R2
int g0/0/0
ip add 10.0.0.2 24
int g0/0/1
ip add 11.0.0.2 24
int lo 1
ip add 1.1.1.1 32
int lo 2
ip add 2.2.2.2 32 ospf 1 router-id 2.2.2.2
area 0
net 10.0.0.0 0.0.0.255
net 11.0.0.0 0.0.0.255
net 1.1.1.1 0.0.0.0
net 2.2.2.2 0.0.0.0

  查看R1的路由表,看看通过ospf是否学习到R2的lo接口路由?

  提示:可以看到R1通过ospf学习到1.1.1.1和2.2.2.2的路由,对应路由都有两个下一跳,默认开销、优先级都一样,此时R1和R2的流量都会负载分担在两条链路上;

  在R1上新建前缀列表匹配1.1.1.1的路由

  在R1上新建ACL匹配下一跳为11.0.0.2的地址

  提示:匹配下一跳地址,可以使用acl,也可以使用前缀列表;

  在R1上新建路由策略,拒绝下一跳为11.0.0.2,路由地址为1.1.1.1的路由

  提示:上述路由策略主要用前缀类别来作为条件匹配路由,用acl来作为条件匹配对应路由的下一跳地址;表示以上两个条件工具匹配的路由,对应路由策略为拒绝,即不让对应路由通过;最后一条是空语句,没有任何条件,表示匹配所有条件,即最后一条空语句就表示允许没有被节点1匹配的路由;相当于修改了route-policy的默认规则;

  在R1的ospf进程中使用filter-policy路由过滤工具调用route-policy作为条件过滤路由

  提示:route-policy只有被调用工具调用以后,对应规则才会生效;

  验证:在R1上查看路由表,看看对应路由是否被过滤掉?

  提示:可以看到R1此时的路由表中就只有一条1.1.1.1的路由,其下一条为10.0.0.2;之前下一跳为11.0.0.2的路由就被路由策略给过滤掉了;

  在R1上新建回环接口lo,其地址为10.10.10.10 32

  新建ACL匹配10.10.10.10的路由

  新建路由策略,匹配10.10.10.10的路由,并修改其开销为100,开销类型为1类

  在R1上将直连路由导入ospf中,并调用路由策略

  验证:在R2上查看路由表,看看对应路由的开销是否被修改?对应类型是否被修改?

  提示:可以看到对应R2学习到的路由其开销为101,因为R1导入的开销为100,即R1发出的开销就为100,然后加上R2接收时默认是1,所以开销为101;其实如果我们这里不更改类型为1,则默认是类型2,类型2它是不会计算内部开销的,即不会加上R2的开销;

HCNP Routing&Switching之路由策略工具Route-Policy的更多相关文章

  1. HCNP Routing&Switching之路由过滤工具Filter-Policy

    前文我们了解了路由控制技术中路由策略和路由匹配工具IP-Prefix相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15314262.html:今天我们 ...

  2. HCNP Routing&Switching之路由控制、路由策略和IP-Prefix List

    前文我们了解了IS-IS路由聚合和认证相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15306645.html:今天我们来聊一聊路由控制技术中的路由策 ...

  3. HCNP Routing&Switching之路由控制-策略路由

    前文我们了解了路由策略工具Route-Policy相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15322135.html:今天我们来聊一聊策略路由相 ...

  4. HCNP Routing&Switching之路由引入

    前文我们了解了路由控制技术策略路由相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15333139.html:今天我们来聊一聊路由引入技术相关话题: 路 ...

  5. HCNP Routing&Switching之路由引入导致的问题及解决方案

    前文我们了解了路由引入相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15359902.html:今天我们来讨论下由于路由引入所导致的问题以及怎么避免此 ...

  6. HCNP Routing&Switching之BGP路由控制

    前文我们了解了BGP的路由属性和优选规则相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15489497.html:今天我们来聊一聊BGP路由控制相关话 ...

  7. HCNP Routing&Switching之BGP路由过滤和AS-Path-Filter

    前文我们聊了下通过修改BGP路由属性来影响路由,从而达到控制BGP路由的目的:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15495585.html:今天我们 ...

  8. HCNP Routing&Switching之OSPF外部路由类型以及forwarding address

    前文我们了解了OSPF的4类.5类LSA,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15222969.html:今天我们来聊一聊外部路由类型和forward ...

  9. HCNP Routing&Switching之IS-IS路由渗透和开销

    前文我们了解了IS-IS邻居建立过程.LSDB同步.拓扑计算和路由的形成:回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15265698.html:今天我们来聊 ...

随机推荐

  1. DDD领域驱动理解

    在理解领域驱动的时候,网上很多大谈理论的文章,这种对于初学者不是太容易接受.根据我自己的学习经历,建议按照如下几个步骤学习: 粗略的看一遍领域驱动的理论,做到心中有形,知道领域驱动是什么,解决什么问题 ...

  2. Golang语言系列-05-数组和切片

    数组和切片 数组 概念 数组是同一种数据类型元素的集合:数组的长度必须是常量,并且长度是数组类型的一部分,一旦定义,长度不能变 例如:[5]int 和 [10]int 是不同的数组类型 使用时可以修改 ...

  3. pikachu Unsafe Fileupload

    不安全的文件上传漏洞概述文件上传功能在web应用系统很常见,比如很多网站注册的时候需要上传头像.上传附件等等.当用户点击上传按钮后,后台会对上传的文件进行判断 比如是否是指定的类型.后缀名.大小等等, ...

  4. HCNA Routing&Switching之PPPoE协议

    前文我们了解了广域网中的HDLC和PPP协议相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15174240.html:今天我们来聊一聊PPPoE协议相 ...

  5. Ubuntu时间有误差,设置系统时间与网络时间同步

    转载地址:https://blog.csdn.net/qq_33733970/article/details/78823620

  6. 堆排序——Java实现

    一.堆排序 堆排序(Heap Sort)是指利用堆这种数据结构所设计的一种排序算法.堆是一个近似完全二叉树的结构,并同时满足堆积的性质:即子结点的键值或索引总是小于(或者大于)它的父节点. 二.堆 什 ...

  7. JDBC中的元数据

    在我编写JDBC代码的时候:出现很多的重复的代码,有没有什么办法让我们能够编写出更加通用的JDBC代码呢?使用元数据,元数据能够让我们编写出更加通用的JDBC代码.什么是元数据呢?(三种元数据)1)连 ...

  8. 多线程Synchronized的两种锁

    Synchronized的作用: 能够保证在同一时刻最多只有一个线程执行该段代码,以达到保证并发安全的效果 Synchronized的两个用法: 1)对象锁 包括方法锁(默认锁对象为this当前实例对 ...

  9. 1 分钟快速使用 Docker 上手最新版 Sentry-CLI - 创建一个版本

    我们可以使用官方 sentry-cli 工具操作 Sentry API,从而来为你的项目管理一些数据.它主要用于管理 iOS.Android 的调试信息文件,以及其他平台的版本(release)和源代 ...

  10. 修改anaconda3 jupyter notebook 默认路径

    本文参考了: https://blog.csdn.net/u014552678/article/details/62046638 https://blog.csdn.net/qigenhuochai/ ...