Route-policy 实验

一、 拓扑

拓扑中的路由器,左边运行着RIP,右边运行着OSPF。在R2上做重分布,将RIP路由引入OSPF,并进行控制

二、 在R2上做重分布,并且做route-policy

R2:

ospf 110 router-id 2.2.2.2
 import-route rip 1 route-policy liuqing

  1. route-policy为permit,ACL有permit也有deny

acl number 2001

rule 10 permit source 1.1.0.0 0.0.0.255

rule 20 permit source 1.1.1.0 0.0.0.255

rule 30 deny source 1.1.2.0 0.0.0.255

route-policy liuqing permit node 10

if-match acl 2001

结果: R3上只有1.1.0.0和1.1.1.0两条路由,被拒绝的1.1.2.0这条路由没有;

分析: 1.1.0.0和1.1.1.0这两条路由,在route-policy的节点10是permit,在ACL上也是permit,所以允许通过;1.1.2.0这条路由,在route-policy的节点10是permit,在ACL上是deny,所以在这个节点上被拒绝通过,但是会进入下一个节点再进行匹配;其他的路由没有找到合适的匹配项,进入下一个节点再匹配,如果最终没被匹配上,被拒绝通过

2. Route-policy为permit,ACL有permit也有deny


route-policy liuqing permit node 10

if-match acl 2001

route-policy liuqing permit node 20

if-match acl 2002

acl number 2001

rule 10 permit source 1.1.0.0 0.0.0.255

rule 20 permit source 1.1.1.0 0.0.0.255

rule 30 deny source 1.1.2.0 0.0.0.255

acl number 2002

rule 10 permit source 1.1.2.0 0.0.0.255

结果: 1.1.0.0 1.1.1.0 1.1.2.0这三条路由都被允许通过

分析: 对于节点10,上面已经分析过了,1.1.0.0和1.1.1.0被允许通过,1.1.2.0这条路由在节点10被拒绝通过,但会继续匹配下一个节点,1.1.2.0这条路由在route-policy的节点20被允许通过

3. Route-policy为deny,ACL为有permit也有deny


acl number 2001

rule 10 permit source 1.1.0.0 0.0.0.255

rule 20 permit source 1.1.1.0 0.0.0.255

rule 30 deny source 1.1.2.0 0.0.0.255

route-policy liuqing deny node 10

if-match acl 2001

#

route-policy liuqing permit node 20

结果: 只有1.1.0.0和1.1.1.0被拒绝通过,其他的路由都被允许

分析: route-policy的节点是deny,而ACL是permit的,对于这种路由被拒绝,并且匹配结束; 对于route-policy的节点是deny,ACL也是deny的,对于这种路由在本节点被拒绝,会到下一个节点进行匹配,由于节点20是空的,所以1.1.2.0会被允许通过;其他没有被ACL 2001匹配的路由会被空的节点20匹配,得以通过。

4. Route-policy为deny,ACL为DENY

route-policy liuqing deny node 10

if-match acl 2001

acl number 2001

rule 10 deny source 1.1.0.0 0.0.0.255

rule 20 deny source 1.1.1.0 0.0.0.255

rule 30 deny source 1.1.2.0 0.0.0.255

结果:所有被重分布的路由都不能通过

分析:由于route-policy为deny,ACL为deny,所以ACL中的这三条路由在route-policy的这个节点都被拒绝,并进入route-policy的下一个节点进行匹配,由于在这个案例中没有下一个节点,所以路由被拒绝。

5. Route-policy为deny,ACL为DENY和permit


acl number 2001

rule 10 deny source 1.1.0.0 0.0.0.255

rule 20 deny source 1.1.1.0 0.0.0.255

rule 30 deny source 1.1.2.0 0.0.0.255

acl number 2002

rule 10 permit source 1.1.2.0 0.0.0.255

route-policy liuqing deny node 10

if-match acl 2001

#

route-policy liuqing permit node 20

if-match acl 2002

结果: 只有1.1.2.0这条路由被通过

分析:对于route-policy的节点10,由于route-policy为deny,ACL也是deny,所以ACL中这三条路由在本节点被拒绝,并且继续进入下一个节点进行匹配;在节点20,route-policy的规则是permit,ACL的规则也是permit,所以ACL 2002中的这条路由1.1.2.0被允许通过;其他的路由没有被ACL匹配到,默认被拒绝了。

6. 对于一个route-policy的一个节点有多个if-match时


route-policy liuqing permit node 10

if-match cost 1

if-match acl 2002

acl number 2002

rule 10 permit source 1.1.2.0 0.0.0.255

结果:1.1.2.0这条路由被允许

分析:route-policy的节点为permit,acl的规则也是permit,被ACL匹配的这条路由会被通过;但在这个案例中,route-policy有两个条件,一个是匹配cost为1,一个是匹配ACL2002,这需要两个条件同时满足才能被route-policy放通。

华为设备对于route-policy和ACL/ip-prefix的解释

Rule

Mode

匹配结果

permit

permit

l 匹配该节点if-match子句的路由在本节点允许通过Route-Policy,匹配结束。

l 不匹配if-match子句的路由进行Route-Policy下一个节点的匹配。

permit

deny

l 匹配该节点if-match子句的路由在本节点不允许通过Route-Policy,匹配结束。

l 不匹配if-match子句的路由进行Route-Policy下一个节点的匹配。

deny

permit

l 匹配该节点if-match子句的路由在本节点不允许通过Route-Policy,继续进行Route-Policy下一个节点的匹配。

l 不匹配if-match子句的路由进行Route-Policy下一个节点的匹配

deny

deny

l 匹配该节点if-match子句的路由在本节点不允许通过Route-Policy,继续进行Route-Policy下一个节点的匹配。

l 不匹配if-match子句的路由进行Route-Policy下一个节点的匹配

注1:Rule表示if-match子句中包含的匹配模式是permit还是deny。

注2:Mode表示Route-Policy中node节点对应的匹配模式permit还是deny。

总结:

    1. 在使用route-policy过滤路由时,如果允许路由通过,则在route-policy中使用permit,ACL中也使用permit; 

    2. 在使用route-policy过滤路由时,如果要拒绝路由通过,则在route-policy中使用deny,ACL中使用permit; 

    3. 不管route-policy的节点是permit还是deny,只要ACL是DENY的,在route-policy的这个节点被ACL deny掉的这些路由是被拒绝的,但是会进入到route-policy的下一个节点去匹配。

    4. 只要ACL是permit的,被ACL的permit规则匹配的路由,匹配结束,不会再进入到route-policy的下一个节点再进行匹配了。

转载于:https://blog.51cto.com/liu008qing/2286541

route-policy和ACL组合时permit和deny的作用相关推荐

  1. ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系?

    ACL中的permit/deny与traffic policy中behavior的permit/deny之间是什么关系? ACL与traffic policy(流策略)经常组合使用.traffic p ...

  2. ACL和RouteMap的permit和deny规则在路由重分配时的动作

    A –--- B 两台路由器通过E1/1接口直联,运行OSPF. A路由器配置3条静态路由: ip route 7.0.0.0 255.0.0.0 Ethernet1/1 ip route 8.0.0 ...

  3. ACL的rule中的deny/permit在各个业务模块里的场景是怎样的

    ACL的rule中的deny/permit在各个业务模块里的场景是怎样的 ACL的rule中的deny/permit在各个业务模块里的场景不同,具体如下: 流策略 当ACL的rule配置为permit ...

  4. Cisco PBTS和Route MAP技术,以及H3C的Route Policy

    Cisco PBTS Policy-Based Tunnel Selection http://www.cisco.com/c/en/us/td/docs/routers/ncs6000/softwa ...

  5. php crypt返回的是对象还是字符串,php – 将字符串与哈希值进行比较时,Crypt函数不起作用...

    我正在使用一种非常标准的cookie登录方式 – 我给用户两个cookie,一个用他的用户名,另一个用随机生成的字符串加用户特定的盐. 这是在登录时发生的事情: $_SESSION['username ...

  6. idea修改java和jsp不起作用_使用IDEA编写jsp时EL表达式不起作用的问题及解决方法...

    在使用IDEA开发maven+springMVC项目时遇到不加载EL表达式的问题,怎么处理呢?下面小编给大家带来了实现代码,一起看看吧 加载如下JSP代码: Title ${lists.usernam ...

  7. 大数据互联网架构 tomcat集群配置时三个端口的作用

    tomcat集群配置时三个端口的作用 在配置多个tomcat时需要同时配置这三个端口 Connector用于监听请求 protocol: http/1.1协议 , 用于监听浏览器发送的请求 , 设置成 ...

  8. java两个return_关于java:调用另一个方法时return语句不起作用

    我最近开始尝试使用return语句,对此我有一个小疑问-当我有一个调用另一个方法的方法时,将显示我正在调用的方法的return语句吗? 让我们举例说明一下 /** Program to test re ...

  9. 王者荣耀服务器信息共享,王者荣耀账号时长共享含义及作用解析

    王者荣耀最近专门推出了一个针对未成年人的账号时长共享,很多小伙伴都在问这个账号时长共享是干嘛的?小编就为大家带来了王者荣耀账号时长共享含义及作用解析! 王者荣耀账号时长共享什么意思 "账号时 ...

最新文章

  1. python基础语法手册format-Python format 格式化函数
  2. ubuntu下设置开机自启动项
  3. php面向对象封装mysql_php mysqli面向对象封装mysql数据库常用操作
  4. 正则表达式及shell
  5. 《SQL查询语句4》
  6. jQuery中ready与load事件的区别
  7. Vue.js 内部运行机制之总结 常见问题解答
  8. plc tcp ip通讯怎么只能连一个客户端_如何远程读取西门子PLC数据?
  9. delegate、notification、KVO各优缺点
  10. autotools归纳
  11. 利用Ajax实现DataGrid无刷新分页(AjaxGrid)【转】
  12. Java程序练习-Period
  13. 安装 卸载 mysql linux,Linux 下MySQL 安装与卸载
  14. iOS 不规则的ImageView
  15. 服务器返回文件格式,服务器返回json串格式不固定的数据解析思路
  16. python写监控脚本_python写个进程监控的脚本
  17. RFID第二版答案-第六章
  18. 网络是怎样联通的-整体架构
  19. 《量化投资策略如何实现超额收益》简介及PDF电子书下载
  20. ubuntu 路由修改网络优先级

热门文章

  1. openstack pike版本安装笔记8(Orchestration Server:heat组件,模板服务)
  2. MongoDB需要慎用local、admin数据库
  3. Virtual Box下配置Host-Only联网方式详解
  4. SAS 9.13作图—gchart命令
  5. 加速你的企业数字化转型,首先做到这一步!
  6. TypeScript极速完全进阶指南-2中级篇
  7. ORACLE查询表最近更改数据的方法
  8. 我的MYSQL学习心得(十三) 权限管理
  9. Linux 循环与变量
  10. 理解 retain 、copy 、NSMutableString 、NSString 的用法