OSPF的选路原则,重发布与RIP
OSPF的选路原则
域内路由 --- 1类,2类LSA 域间路由 --- 3类LSA
域外路由 --- 5类,7类LSA --- 类型1,类型2
1,域内路由如果都是通过1类和2类LSA学习到的域内路由信息,则将直接比较开销值,开销值小的,优先选择,如果开销值相同,则将负载均衡。
2,域间路由如果都是通过3类LSA学习到的域间路由信息,则将直接比较开销值,开销值小的,优先选择,如果开销值相同,则将负载均衡。
3,域外路由类型1:如果采用类型1,则所有域内设备到达域外网段的开销值都等于种子度量值加本地到达通告者的开销值。
类型2:OSPF默认采用类型2,如果开销值的类型为类型2,则所有域内设备到达域外网段的开销值都等于种子度量值。
5类LSA类型2比较:优先比较种子度量值,种子度量值小的优先选择;如果种子度量值相同,则比较沿途累加的开销值,沿途累加开销值小的优先选择;如果两种开销值都相同,则将负载均衡。
类型1永远优于类型2。
5类LSA类型1比较:直接比较总度量(种子度量值加沿途累加值),总度量小的优先选择,如果相同,则负载均衡。
域内和域间
域内优于域间,不比较开销值
域间和域外域间优于域外,不比较开销值 OSPF的防环机制域间防环
1,区域水平分割 --- 路由信息从哪个区域学到的就不再发回哪个区域
2,星型拓扑的区域划分本身就是一种防环机制
域内防环
SPF --- 最短路径优先算法
拓扑信息 --- 有向图 --- 最短路径树
重发布
作用
在一个网络中,若运行多种路由协议或者相同协议的不同进程,协议间不能直接沟通计算,进程间也是独立转发和计算的,所以,需要使用重发布来实现路由的共享。
条件:
1,必须存在ASBR设备。 --- 所谓ASBR设备指的是同时运行两种协议或者两个进程的设备。
2,必须关注种子度量值 --- 一个起始度量。A协议和B协议的度量标准计算逻辑不通,无法直接使用,所以,在将A协议导入到B协议时,ASBR将不携带A协议的度量值到B协议,而是在共享到B协议时,将由ASBR设备定义一个初始值。
规则:
1,将A协议发布到B协议时,在ASBR上的B协议进程中配置。
2,将A协议导入到B协议中,是将ASBR设备上通过A协议学习到的以及ASBR上宣告在A 协议中的所有直连路由,全部共享到B协议中。
点单点 --- 两个协议或两个进程之间存在1个ASBR 双点 --- 两个协议或两个进程之间存在2个ASBR 多点 --- 两个协议或两个进程之间存在多个ASBR 向单向 --- 仅将A协议的路由共享到B协议中双向 --- A/B协议的路由均共享
RIP协议
A - B:将一种动态协议发布到另一种动态协议中
[r2-rip-1]import-route ospf 1 结论:
RIP协议导入的初始种子度量值为0;
[r2-rip-1]default-cost 2 ---- 全局修改,之后所有重发布到RIP进程中的路由其初始的种子度量值都将修改
[r2-ospf-1]default cost ? --- OSPF中全局修改种子度量值的方法
INTEGER<0-16777214> Cost value
[r2-rip-1]import-route ospf 1 cost 3 --- 仅针对本次导入进行种子度量值的修改
[r2-rip-1]
静态 - B:将静态路由发布到动态路由中
[r2-rip-1]import-route static 结论:
1,导入静态路由时,无法导入缺省路由
2,RIP协议导入的初始种子度量值为0;
直连 - B:将直连路由发布到动态路由中
[r2-rip-1]import-route direct
1,RIP协议导入的初始种子度量值为0;
2,若ASBR设备进行A-B的重发布,同时进行了直连到B的重发布,两种重发布又包含相同的路由信息时,则优先选择直连重发布的路由。
双点重发布
默认RIP和OSPF协议,若进行多点双向重发布,由于两者的优先级不同,故第一台ASBR设备重发布动作结束后,将影响其他ASBR设备的路由表;使得路由可能被回传回源协议,发生路由回馈 --- A协议的路由重发布到B协议中,之后又被B协议重发布回A协议。
华为设备为了消除路由回馈现象,将OSPF协议域外导入的信息的优先级默认设置为
150,这个值大于所有华为体系内定义的IGP协议的默认优先级,所以,将不会导致路由回馈的产生。
由于重发布技术的种子度量值问题,将必然导致选路不佳,只能依赖路由策略来人为干涉选路。
控制层面流量 --- 路由协议传递路由信息产生的流量
数据层面流量 --- 设备访问目标地址时,产生的数据流量
路由策略 --- 在控制层流量流动的过程中,截取流量,之后修改流量再转发或者不转发,最终达到影响路由器路由表生成,起到干涉选路的效果。
1,抓流量
1,ACL --- 因为ACL列表本身主要抓取数据层面流量,其通配符设计导致数据流量可以精确匹配,但是,在抓取控制层面流量时,无法准确的匹配掩码信息,导致无法精确抓取控制层流量。
无掩码 所以不好精确只能 192.168.1.0 0 锁死至于掩码是多少位则不可以要求
2,前缀列表 --- ip-prefix
[r1]ip ip-prefix aa permit 192.168.1.0 24 --- 前缀列表主要靠自定义名称来进行
区分 可以一直添加规则
[r1]display ip ip-prefix aa --- 查看名称为aa列表的规则
前缀列表中的规则默认是以10为步调自动添加序列号的,便于插入规则。
[r1]ip ip-prefix aa index 15 permit 192.168.2.0 24 --- 添加序号插入规则
前缀列表的匹配规则 --- 从上而下,逐一匹配,一旦匹配上则将按照该规则执行,不再向下匹配。末尾隐含拒绝所有的规则。
[r1]undo ip ip-prefix aa index 12 --- 删除规则的方法
[r1]ip ip-prefix aa permit 192.168.1.0 24 less-equal 28 --- 抓取掩码长度为24到
28的网段信息
[r1]ip ip-prefix aa permit 192.168.1.0 24 greater-equal 28 --- 如果前后矛盾,则将按照后面的执行,而前面的将变成前24位固定
[r1]ip ip-prefix aa permit 192.168.1.0 24 greater-equal 28 less-equal 30 --- 匹配掩码长度为28到30的网段,前24位固定
[r1]ip ip-prefix aa permit 192.168.1.0 24 greater-equal 28 less-equal 28 --- 匹配掩
码长度为28的网段,前24位固定
[r1]ip ip-prefix aa permit 0.0.0.0 0 greater-equal 32 less-equal 32 --- 匹配所有主机路由
[r1]ip ip-prefix aa permit 0.0.0.0 0 less-equal 32 --- 允许所有
[r1]ip ip-prefix aa permit 0.0.0.0 0 --- 抓取缺省路由
2,路由策略
1,RIP的merticin和merticout --- 偏移列表 --- 只能针对距离矢量型协议进行控制注意:在RIP中对开销值进行修改时只能将开销值改大,而不能改小。
1,抓取流量
[r4]acl 2000
[r4-acl-basic-2000]rule permit source 23.0.0.0 0 --- 使用ACL列表抓取
[r1]ip ip-prefix aa permit 23.0.0.0 24 --- 使用前缀列表抓取
2,在接口上调用偏移列表
[r4-GigabitEthernet0/0/1]rip metricout 2000 2 --- 使用的出方向的列表,后面的设定值修改的是RIP数据包中携带开销值计算时默认的增加量。(默认增加量为1,该命令将增加量修改为2。)
[r1-GigabitEthernet0/0/1]rip metricin ip-prefix aa 2 --- 使用的入方向的列表,其
效果是在本地路由表中的开销值的基础上再增加后面的设定值
2,过滤列表 --- filter-policy
注意:过滤列表也是分方向的,而且,可以应用在OSPF和RIP当中
1,抓流量
[r2]acl 2000
[r2-acl-basic-2000]
[r2-acl-basic-2000]rule deny source 34.0.0.0 0 --- 注意,过滤列表本身没有过滤能力,所以,需要在抓取流量时使用拒绝动作。
[r2-acl-basic-2000]rule permit source any --- 注意,在抓流量时,末尾一定要放通剩余流量,否则将会把所有流量全部过滤掉。
[r1]ip ip-prefix cc deny 34.0.0.0 24 --- 使用前缀列表抓取流量
[r1]ip ip-prefix cc permit 0.0.0.0 0 less-equal 32 --- 后面添加放通所有的规则
2,在进程中调用过滤策略
[r2-rip-1]filter-policy 2000 export GigabitEthernet 0/0/0 --- 出方向的调用 --- 出
方向影响他人
[r1-rip-1]filter-policy ip-prefix cc import GigabitEthernet 0/0/0 --- 入方向调用 ---
入方向影响自身,注意,需要选择接口,否则所有接口学到的路由信息都将过滤
注意:过滤列表可以在OSPF中使用,但是,因为OSPF中传递的是拓扑信息,所以,无法进行出方向的过滤,只能进行入方向的调用,并且,调用的效果是仅过滤抓取的路由信息不加表。
3,Route-policy --- 路由策略
1,抓流量
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 1.1.1.0 0
[r2]acl 2001
[r2-acl-basic-2001]rule permit source 2.2.2.0 0
[r2]ip ip-prefix aa permit 3.3.3.0 24
[r2]ip ip-prefix bb permit 4.4.4.0 24
2,做路由策略
[r2]route-policy aa deny node 10
Info: New Sequence of this List. 拒绝通过
-policy]apply cost 2 修改种子度量值
[r2]route-policy aa permit node 40
Info: New Sequence of this List.
[r2-route-policy]if-match ip-prefix bb
[r2-route-policy]apply cos
[r2-route-policy]if-match acl 2000 匹配acl所抓的流量
[r2]route-policy aa permit node 20 允许通过
[r2-route-policy]if-match acl 2001 匹配acl所抓的流量
[r2-route-policy]apply cost-type type-1 更改开销值类型
[r2]route-policy aa permit node 30
Info: New Sequence of this List.
[r2-route-policy]if-match ip-prefix aa 匹配过滤路由所抓的
[r2-route]
t 10 修改种子度量值
[r2-route-policy]apply tag ?
INTEGER<0-4294967295> Tag value
[r2-route-policy]apply tag 666 修改tag---标签
[r2]route-policy aa permit node 50
Info: New Sequence of this List.
[r2-route-policy]
注意:如果没有if-match,则代表匹配所有;如果没有APPLY,则只执行大动作
路由策略的匹配规则 --- 从上而下,逐一匹配,一旦匹配上则将按照该规则执行,不再向下匹配。末尾隐含拒绝所有的规则。
3,在重发布中调用
[r2-ospf-1]import-route rip route-policy aa
Route-policy的配置指南
1,即便要拒绝一个流量,在抓取流量的时候,也必须使用允许,之后由路由策略来拒绝。
2,在一条规则中,若没有进行流量匹配,则代表匹配所有;若没有apply,则仅对匹配到的流量执行大动作,因此,大动作为允许的空表为允许所有。