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

  Filter-Policy

  Filter-Polciy是一种常用的路由过滤工具,只能过滤路由,无法过滤LSA,不能修改路由属性;它可以直接调用条件工具ACL或IP-Prefix 或者调用route-policy工具;在路由策略里担任着调用工具的角色;我们知道路由的学习是有方向的,相对来说控制路由或过滤路由也是有方向的;我们可以在路由器的出方向或入方向进行路由过滤,最终结果都是将对应路由过滤掉;

  距离矢量路由协议中路由过滤

  提示:距离矢量路由协议是直接传播的是路由信息,所以我们可以选择在路由发出或入的方向上进行过滤,不管在出或入方向进行过滤,对应最后的结果都是一样的;一般根据现网环境来决定到底是在哪个方向上进行过滤比较好;

  提示:距离矢量路由协议中,路由信息是直接传播的,所以在链路途中任意路由器在过滤了某条路由,随后后面的路由器就学习不到对应的路由;比如上图,我们在交换机的路由入方向过滤掉192.168.3.0以后,对应C交换机就学习不到对应192.168.3.0这条路由;当然如果在交换机A的出方向过滤掉192.168.3.0,则随后交换机B和交换机C都学习不到对应192.168.3.0这条路由;

  链路状态路由协议中路由过滤---单区域

  提示:上图是OSPF单区域里路由过滤的示意图;我们知道链路状态路由协议主要是通过传播LSA,建立数据库,然后通过LSDB数据库结合SPF算法来进行计算路由;所以对于我们要想过滤掉某条路由,我们只能在某个路由器的生成路由信息时来影响,即只能在路由的入方向来过滤某些路由;但是对于ospf来说,在单区域里主要通过1类或2类LSA在整个区域内不泛洪,从而同步LSDB数据库生成路由,我们在区域中某台路由器上进行路由过滤其实不影响其他路由器;原因是单区域里的LSDB数据库是相同的,对应路由是依靠LSDB数据库中的内容算出来的;入上图所示,我们在交换机B上过滤掉10.1.1.0/24这条路由,但对于交换机C来说,它的路由表中还是可以正常学习到10.1.1.0/24的路由;这是因为路由过滤并不能过滤LSA,其次单个区域中的所有路由器的LSDB都是同步的;

  链路状态路由协议中路由过滤---多区域---区域间路由

  提示:对于多区域,区域间的路由传播主要通过3类LSA;其实3类LSA就是把对应区域里的路由进行打包然后通过3类LSA的格式发送给其他区域;这也意味着如果我们在一个区域的abr上过滤掉某些路由,那么对于它传递给其他区域的路由也就无法学习到对应被过滤掉的路由;其原因是多区域,每个区域的LSDB数据库是不相同的,其次区域间路由通过abr发送3类LSA,对应内容就是abr路由器所在区域的路由信息;如上图,我们在交换机B上的入方向过滤掉10.1.1.0/24这条路由,那么对于交换机B向区域1里交换机c发送的3类LSA里面就没有10.1.1.0/24这条路由;所以交换机C也是学习不到10.1.1.0/24的路由;

  链路状态路由协议中路由过滤---多区域---外部引入路由

  提示:对于内部ospf的路由还是只能在计算路由信息生成时,即路由学习的入方向进行过滤;对应外部引入的路由,我们可以通过路由发出的方向进行过滤;外部路由引入只所以能够在出方向进行过滤,其主要原因是路由信息实现存在asbr的路由表中,在向其他路由器发送时,是通过路由表中的路由信息,生成对应的5类LSA,所以我们在发出5类LSA时过滤掉路由,对应5类LSA里就不会有对应路由,从而其他路由器也就无法通过5类LSA学习到对应的外部路由;

  总结:距离矢量路由协议路由过滤

  提示:距离矢量路由协议的路由过滤我们可以在入和出两个方向上进行过滤,因为路由矢量路由协议是直接传播的路由信息;

  总结:链路状态路由协议路由过滤

  提示:链路状态路由协议路由过滤主要在入方向进行过滤;其主要原因是链路状态路由协议通过传播LSA构建LSDB数据库,而路由过滤只能过滤路由信息,对于LSA它并不能过滤;所以链路状态路由协议中过滤路由,对应LSDB在相同区域里是同步的;我们过滤路由只能在路由的入方向,即通过spf在生成路由时来影响;对于外部路由引入我们是在发出时进行过滤;发出时过滤影响的是所有其他路由器;之所以外部路由能在asbr的出方向过滤,是因为外部路由事先存在ip路由表单中,在发出时过滤,对应生成5类LSA里就不会包含过滤掉的路由,从而其他路由器也就无法通过5类LSA学习到对应ASBR过滤掉的路由;

  实验:如下拓扑,配置RIP,使用路由过滤工具Filter-Policy过来路由信息

  R1的配置

sys
sys R1
int g0/0/0
ip add 12.0.0.1 24 int lo 1
ip add 1.1.1.1 32
int lo 2
ip add 2.2.2.2 32
int lo 3
ip add 3.3.3.3 32 rip 1
ver 2
net 12.0.0.0
net 1.0.0.0
net 2.0.0.0
net 3.0.0.0

  R2的配置

sys
sys R2
int g0/0/0
ip add 12.0.0.2 24 int lo 1
ip add 4.4.4.4 32
int lo 2
ip add 5.5.5.5 32
int lo 3
ip add 6.6.6.6 32 rip 1
ver 2
net 12.0.0.0
net 4.0.0.0
net 5.0.0.0
net 6.0.0.0

  验证:查看R2或R1的路由表,看看是否学习到对方的路由信息?

  提示:可以看到在R2上能够正常学习到R1的lo接口路由;

  在R2上使用IP-Prefix 工具匹配1.1.1.1/32的路由信息

  在R2的rip进程中,路由入方向只允许1.1.1.1/32的路由

  验证:查看R2的路由表,看看对应1.1.1./32的路由是否被过滤掉了呢?

  提示:可以看到此时R2只能学习到1.1.1.1/32的路由;之前的2.2.2.2和3.3.3.3就被过滤工具Filter-policy工具调用ip-prefix的默认策略给拒绝掉了;这里需要说明一点,filter-policy工具调用ip-prefix作为条件来过滤路由,默认规则是拒绝操作;如果我们需要拒绝某条路由,允许其他路由,我们需要在ip-prefix里写上permit 0.0.0.0 0 less 32;

  在R2上新建前缀列表规则,拒绝4.4.4.4/32的路由,允许其他所有路由

  在R2的出方向使用路由过滤工具filter-policy调用ip-prefix test1进行路由过滤

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

  提示:可以看到对应4.4.4.4/32的路由R1没有被学习到,其原因是R2在发送路由信息时通过filter-policy工具调用ip-prefix将4.4.4.4/32的路由拒绝掉了;

  实验:如下拓扑,配置ospf,使用filter-policy工具调用ip-prefix进行路由过滤

  R3的配置

sys
sys R3
int g0/0/0
ip add 34.0.0.3 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 3.3.3.3
area 0
net 34.0.0.0 0.0.0.255

  R4的配置

sys
sys R4
int g0/0/0
ip add 34.0.0.4 24
int g0/0/1
ip add 45.0.0.4 24 ospf 1 router-id 4.4.4.4
area 0
net 34.0.0.0 0.0.0.255
area 1
net 45.0.0.0 0.0.0.255

  R5的配置

sys
sys R5
int g0/0/0
ip add 45.0.0.5 24 ospf 1 router-id 5.5.5.5
area 1
net 45.0.0.0 0.0.0.255

  在R3新建ip-prefix 匹配1.1.1.1/32的路由

  在R3上将直连路由注入到ospf中,然后使用路由过滤工具调用ip-prefix 在出方向

  验证:查看R4或R5的ospf路由表,看看对应1.1.1.1的路由是否存在路由表?

  提示:可以看到在R4学习到的外部路由中就只有1.1.1.1/32的路由,2.2.2.2/32的路由被默认规则给拒绝掉了;

  在R4上创建前缀列表匹配1.1.1.1/32路由

  在R4的入方向拒绝1.1.1.1/32的路由,看看对应R5是否会受影响?

  验证:查看R4的路由表,看看1.1.1.1是否被拒绝?

  提示:可以看到R4本地路由表没有1.1.1.1的路由了;这里需要注意一点,链路状态路由协议在入方向过滤路由,只是影响到ip路由表中的路由,并不影响协议路由表;即ospf路由表里还是会有1.1.1.1的路由;

  验证:在R5上查看路由表,看看R5是否会受影响?

  提示:可以看到R5的ip路由表里还是有1.1.1.1的路由;但是34.0.0.0/24的路由被过滤掉了;其原因是在R4的入方向过滤了1.1.1.1/32,并且没有允许其他路由通过,所以34.0.0.0/24的路由也被过滤掉,然后R4生成3类LSA中就没有34.0.0.0/24的路由,所以到达R5时,对应34.0.0.0/24的路由不会被R5学习到;对应1.1.1.1这个路由,它本身就是R3产生的5类LSA,在全网传播,虽然R4在入方向过滤掉1.1.1.1,但不影响R3发送的5类LSA向R5传播;所以我们在R5上能够看到1.1.1.1的路由,34.0.0.0/24的路由看不到;

  通过上述实验可以看到链路状态路由协议在路由入方向过滤路由,只是影响本地到ip路由表里的路由,并不影响其他路由器的路由(本地区域或外部路由);对于外部路由,只有在ASBR出方向过滤时,对应其他路由器才会受到影响;对于区域间路由,如果abr在入方向没有被允许,则后续的其他区域路由器也不会学习到对应区域间的路由;对于abr出方向过滤路由是没有意义的,也不会生效,即出方向过滤路由只针对外部路由引入有效,区域间路由并不会生效;

HCNP Routing&Switching之路由过滤工具Filter-Policy的更多相关文章

  1. HCNP Routing&Switching之路由策略工具Route-Policy

    前文我们了解了路由过滤和路由过滤工具Filter-Policy使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15316188.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/15359902.html:今天我们来讨论下由于路由引入所导致的问题以及怎么避免此 ...

  5. HCNP Routing&Switching之路由引入

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

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

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

  7. HCNP Routing&Switching之BGP路由属性和优选规则

    前文我们了解了BGP防环机制和路由聚合相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15458110.html:今天我们来聊一聊BGP路由属性和选路规 ...

  8. HCNP Routing&Switching之BGP团体属性和团体属性过滤器

    前文我们了解了BGP的路由过滤已经as-path过滤器的使用相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15542559.html:今天我们来聊一聊 ...

  9. HCNP Routing&Switching之BGP基础

    前文我们了解了路由注入带来的问题以及解决方案相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15362604.html:今天我们来学习下新的路由协议BG ...

随机推荐

  1. Distribute SSH Pubkey to Multiple Hosts with Fabric

    Generate ssh keys on source host with ssh-keygen; Disable known_hosts prompt(optional): add "St ...

  2. MySQL学习05(MySQL函数)

    MySQL函数 常用函数 官方文档 : https://dev.mysql.com/doc/refman/5.7/en/func-op-summary-ref.html 数据函数 SELECT ABS ...

  3. spring学习08(声明式事务)

    11.声明式事务 11.1 回顾事务 事务在项目开发过程非常重要,涉及到数据的一致性的问题,不容马虎! 事务管理是企业级应用程序开发中必备技术,用来确保数据的完整性和一致性. 事务就是把一系列的动作当 ...

  4. Linux性能优化-平均负载

    Linux性能优化-平均负载 目录 Linux性能优化-平均负载 平均负载的含义 平均负载为多少时合理 平均负载与 CPU 使用率 平均负载案例分析 场景一:CPU 密集型进程 场景二:I/O 密集型 ...

  5. SpringBoot - 集成Auth0 JWT

    目录 前言 session认证与Token认证 session认证 Token认证 JWT简介 JWT定义 JWT数据结构 JWT的类库 具体实现 JWT配置 JWT工具类 测试接口 前言 说说JWT ...

  6. STM32—驱动六轴MPU6050输出欧拉角

    文章目录 一.MPU6050介绍 1.MPU6050与陀螺仪.加速度计的关系: 2.整体概括 3.引脚说明 4.基本配置及相关寄存器 电源管理寄存器1 陀螺仪配置寄存器 加速度计配置寄存器 FIFO使 ...

  7. NOIP 模拟 6 辣鸡

    题解 难得啊,本来能 \(AC\) 的一道题,注释没删,挂了五分,难受 此题暴力很好想,就是直接 \(n^2\) 枚举不同的矩阵组合,记录块内答案和跨块的答案 出题人不会告诉你,这题只要输出块内答案就 ...

  8. c# 对 struct为什么不能继承类和结构的思考

    1.类.结构在使用的时候可以不调用构造函数,如果能够继承类,这种情况下不能够初始化基类,因为不执行构造函数 2.结构.所有的结构类型都默认是 sealed,通过 反汇编可以看到  ,这就阻止了结构被继 ...

  9. UWP 动画之路径

    xml --------------------------------------------- <Page x:Class="MyApp.MainPage" xmlns= ...

  10. SpringCloud降级熔断 Hystrix

    1.分布式核心知识之熔断.降级讲解 简介:系统负载过高,突发流量或者网络等各种异常情况介绍,常用的解决方案 1.熔断:         保险丝,熔断服务,为了防止整个系统故障,包含子和下游服务 下单服 ...