重发布(分发)和路由策略
重发布:在同一个网络拓扑结构中,如果存在多种不同的路由协议,由于不同的路由协议对于路由项的处理机制不同,这就会导致在网络中造成路由信息的隔离,而在路由协议的边界设备上,将某种路由协议的路由信息引入另一种路由协议中,这个 操作被称为路由引入或者路由重分发。(执行该操作的技术被称为重发布)
作用:在一个网络中,若运行多种路由协议或者相同路由协议的不同进程,协议之间不能直接沟通计算,进程之间也是相互独立,所以需要使用重发布技术来实现路由的共享
执行条件:1.必须存在一个边界设备(同时连接两种路由协议或两种进程,同时学习到两种来源的路由信息,之后进行路由共享)
2.关注种子度量值(起始度量值) 原因:A协议和B协议的开销计算算法不同,无法直接使用,故将A协议发布到B协议时,边界设备将不携带A协议的度量值,而是共享到B协议后,由边界设备在路由中添加一个起始度量值
规则:1.将A协议引入到B协议中,在边界设备中的B协议上配置(表明重发布技术的配置位置)
2.将A协议引入到B协议中,边界设备会将所有通过A协议学习到的路由以及边界设备上宣告在A协议的所有直连路由,全部共享到B协议中(表明重发布时发布的信息内容)
名词解释
点
单点:两个协议或两个进程之间存在一个边界设备
双点:两个协议或两个进程之间存在两个边界设备
多点:两个协议或两个进程之间存在多个边界设备
向
单向:仅将A协议路由共享到B协议中
双向:A和B协议的路由均共享到对方
A>B
通过重发布技术将其他协议的路由信息导入到RIP中,RIP协议赋予其的种子度量值为0
修改RIP种子度量值
注意:两条命令同时执行时,将按照第二条执行
静态>B
结论:导入静态RIP赋予的种子度量值也是0
重发布在导入的路由中无法将缺省路由引入
直连>B
除了R1的直连网段外,所有直连均会导入
若边界路由器进行A>B的重发布以及>B的重发布,并且两次包含相同的路由信息,则将会优先学习直连导入的路由信息
默认RIP和OSPF协议进行双点重发布,由于两者的优先级不同,故第一台ASBR设备重发布动作结束后,将影响其他ASBR设备的路由表,使得路由可能被回传到源协议当中,发生路由回馈(A协议的路由重发布到B协议当中后,又被重发布回A协议。路由回馈可能会导致选路不佳,甚至是路由环路的出现)
华为为了解决路由回馈问题,将OSPF的域外路由的优先级定义为150(150高于华为体系下所有IGP协议的优先级),从而解决路由回馈问题
在双点双向重发布中,虽然解决了路由回馈问题,但是多点重发布还是存在一个必然产生的问题(选路不佳)。原因:重发布时清除了原先的开销值导致的
路由策略
控制层流量:路由协议传递路由信息产生的流量
数据层流量:设备访问目的地址时产生的流量
所谓的路由策略(在控制层面转发流量的过程中,截取流量,之后修改流量再转发或者不转发,最终达到影响路由器路由表的生成,干涉选路的效果)
抓流量
ACL列表
因为ACL列表本身设计是为了抓取数据层流量的,所以,因为通配符的存在它可以灵活的匹配IP的数字特征,但是,没有办法匹配路由信息中的掩码特征,所以,ACL并不擅长控制层流量的抓取
如果需要在192.168.1.0/24、192.168.1.0/25、192.168.1.0/30中抓取到192.168.1.0/24,ACL是最无能为力的,只能按照数字特征抓取,则意味着使用以上命令将同时抓取携带着三种路由信息的数据包
前缀列表(IP-prefix)
一个路由条目由目的网络地址(前缀)+掩码长度(前缀长度)共同标识
IP前缀可以包含一条或者多条语句,每条语句都可以使用一个序号(十进制)进行标识
前缀列表的匹配规则:从上而下,逐条匹配,一旦匹配上则将按照该规定执行,不再向下匹配。末尾隐含拒绝所有规则
实例
假设有四条路由信息:172.16.0.0/16、172.16.0.0/24、172.16.0.0/30、172.16.1.1/32
该语句要求路由的目的网络地址的前24位比特位需要与172.16.0.0的前24位相同,并且路由的目的网络掩码长度必须为24,因此该规则可以抓取172.16.0.0/24
该语句要求路由的目的网络地址的前16位比特位与172.16.0.0的前16位相同,并且路由的目的网络掩码长度必须大于或者等于16,且小于或者等于24.因为该规则可以抓取172.16.0.0/26、172.16.0.0/24
上述语句中,IP地址为0.0.0.0,这种形式的IP地址被称为通配地址,也即该地址能匹配任意形式的目的网络地址,因此,该语句并不关系被匹配路由的目的网络地址,但是要求路由的目的网络掩码长度必须大于等于0,小于等于32。
该语句将匹配掩码长度为32的任意路由,也就是所有的主机路由
该语句允许的是默认路由0.0.0.0
做策略
偏移列表(Cisco)
偏移列表属于RIP这种距离矢量型协议专用
抓流量:
调用:
进入流量入方向接口,给其度量值增加5,metricin入;metricout出;出接口默认每次加1,入接口默认不加
该策略为逐跳行为,效果可以叠加操作,整段路径中流量经过的多个接口均配置了度量值增加,最终的开销值为增加的总度量值
过滤策略(Filter Policy):路由过滤工具
分发列表(Cisco)
只能对路由信息进行过滤,而无法对LSA进行过滤
在过滤策略中调用
(在进程中调用,选定入方向或出方向扣,若不选择接口,则为全局调用,会匹配所有接口)
切记,若使用ACL定义流量,正常华为为ACL末尾隐含允许所有,但是在过滤策略中一定要手工配置允许所有
注意,如果此时没有在R1上进行过滤,而是等R1将域外的五类LSA发布仅OSPF后,再在R2的出方向或者入方向,有着或是R1的出方向调用过滤策略,则不会成功。必须要在R1路由信息转换为LSA信息之前进行调用,也就是在ASBR的入方向调用
若在R2的入方向使用过滤策略限制192.168.2.0/24路由,则R2将不会具备该路由信息,因为是在R2根据本地LSDB中的LSA信息计算出192.168.2.0/24路由后,拒绝将这条路由信息加入本地路由表中,而R3此时还具备该路由信息,原因在于R3可以正常收到所有的LSA信息,并成功计算路由信息
若将过滤策略使用在链路状态型协议中,必须使用入方向
路由策略的匹配规则:自上而下,逐一匹配,一旦匹配上则将按照对应的规则来执行动作,不再向下匹配。末尾隐含拒绝所有的规则
192.168.0.0/24:过滤
192.168.2.0/24:修改种子度量值10
192.168.3.0/24:开销值类型修改为type-1
192.168.4.0/24:开销值类型修改为type-1,tag=200
12.0.0.0:不处理
抓取流量:
做策略:
在重发布中调用:
permit:
指定该节点的匹配模式为允许
如果路由匹配的结果是满足该阶段的所有if-match语句,则该路由被视为允许通过,该节点的apply语言将被执行,且不再进行下一个节点。若该节点中有if-match语句不满足,则进入下一个节点将继续匹配
deny:
指定节点的匹配模式为拒绝
如果节点的匹配模式为拒绝,则该节点的apply语句将不被执行
如果路由匹配的结果是满足该阶段的所有if-match语句,该路由策略的匹配过程直接结束。不会进入下一个阶段,而满足该节点条件的路由会被视为拒绝通过
若该节点中有if-match语句不满足,则进入下一个节点继续匹配
配置指南总结
1.即使要拒绝一个流量,在抓取的时候也必须使用允许操作,之后在路由策略来拒绝
2.在一条规则中,若没有进行流量匹配,那么就是匹配所有流量。若没有apply,那么仅对匹配的流量进行当前大动作修改
3.配置时,注意路由策略的“与”和“或”关系