目录
OSPF的选路原则
1、域内(支持1类和2类LSA)
如果学到的路由都是通过1类,2类LSA获取到域内路由,该情况会直接比较开销值,优先选择开销值较小的路线,如果两条路由的开销值相同,则负载均衡
2、域间(支持3类LSA)
如果学到的路由都是通过3类LSA获取的域间路由,该情况会直接比较开销值,优先选择开销值小的路线,如果两条路的开销值相同,则负载均衡。
3、域外(支持5类和7类LSA)
1)5类LSA和7类LSA类型1的选路原则:直接比较路由的总开销(种子度量值家沿途累加开销值),优先选择总开销较小的路线。如果总开销相同,则将形成负载均衡。
2)5类LSA和7类LSA类型2的选路原则:先比较种子度量值,优选种子度量值小的;如果种子度量值相同,则比较沿途累加的开销值,选择沿路累加开销值小的;如果沿途累加开销值也相同,则负载均衡。
Type 1:如果是类型1,则传递的度量值是种子度量值家沿途累加度量值。
Type 2:如果是类型2,则传递的度量值为种子度量值。默认选择类型2。
注意:类型1和类型2之间存在一个优先选路规则,即类型1永远优于类型2。
命令:[r3]display ospf lsdb ase //该命令可以展开所有5类LSA
不同类型的LSA之间的比较
1、域内和域间
域内路由通过1类和2类LSA学习路由信息,域间路由通过3类LSA学习路由信息,域内路由优先级高于域间路由。
2、域间和域外
域外路由通过5类和7类LSA学习路由信息。域间路由优先级高于域外路由。
3、5类和7类LSA
在华为体系中,5类和7类LSA可以看作是一类相同的LSA,开销值相同时也会负载均衡。
OSPF的防环
1、域间防环
1)星型拓扑的区域划分规则就是一种防环手段。
2)区域之间存在水平分割机制(区域水平分割)。
2、域内防环
OSPF在区域内部传递的是拓扑信息,需要通过SPF算法(最短路径优先算法)计算路由条目,所以域内的防环主要依靠SPF算法。
重发布
作用
在一个网络中,若运行多种路由协议或者相同协议的不同进程,由于协议之间不能直接沟通计算,进程之间也是独立进行转发和运算的,所以需要使用重发布来实现路由下共享。
条件
1、必须存在ASBR(同时连接两种协议或同时运行两个进程,同时学习到两边的路由信息,之后进行路由共享)。
2、必须关注种子度量值(起始度量)。A、B协议的度量计算逻辑不同,无法直接使用。故在将A协议重发布到B协议时,ASBR将不携带A协议原先所设定的开销值,而是在共享到B协议时,由ASBR在路由中添加一个新的起始度量值。
规则
1、在将A协议重发布到B协议时,需要在ASBR上的B协议中进行配置。
2、将A协议发布到B协议上,是将ASBR上所有通过A协议学习到的路由信息和ASBR上宣告在A协议上的所有直连网段的路由,全部共享到B协议中。
点
单点:两个协议或两个进程之间存在个ASBR。
双点:两个协议或两个进程之间存在2个ASBR。
多点:两个协议或两个进程之间存在多个ASBR。
向
单向:仅将A协议路由共享到B协议当中。
双向:A/B协议的路由军互相共享。
配置
A -> B ---- 一种动态路由协议共享到另一种动态路由协议中
静态 -> B ---- 将ASBR上的静态路由共享到动态路由协议中
直连 -> B ---- 将ASBR上的直连路由共享到动态路由协议中
RIP
A -> B
[r2-rip-1]import-route ospf 1
结论:RIP在重发布获取其他协议的路由后,会将其种子度量值设置为0。
修改种子度量值的方法:
1、[r2-rip-1]default-cost 2 //在ASBR进程中修改默认种子度量值
注意:该修改命令将会影响所有往RIP进程中重发布的路由信息。
2、[r2-rip-1]import-route ospf 1 cost 3 //在ASBR上执行重发布时修改种子度量值
注意:该修改命令仅影响本次重发布路由的种子度量值
注意:以上两种命令,当存在冲突时,将以命令匹配的更精确的这条命令来执行。
静态 -> B
[r2-rip-1]import-route static
结论:
1、缺省路由无法直接通过重发布导入到B协议中,只能通过自己匹配。
2、种子度量值默认为0,修改方法同上。
直连 -> B
[r2-rip-1]import-route direct
结论:
1、处理R1是直连路由外,其他三条直连网段都会导入;
2、直连导入的默认种子度量值0;
3、若ASBR进行了A->B的重发布,同时进行路直连路由到B的重发布,并且里面包含相同的路由信息,则优先选择直连重发布的路由信息而不卡开销值。
OSPF
A -> B
[r2-ospf-1]import-route rip 1
结论:
OSPF重发布获取其他路由协议时,会将其种子度量值设为1,度量值类型设为类型2。
修改种子度量值和开销值类型的方法:
[r2-ospf-1]default cost ? //在ASBR的OSPF进程中,修改种子度量值(范围是0-16777214)
[r2-ospf-1]default type ? //在ASBR的OSPF进程中,修改默认的开销值类型(类型1和类型2)
注意:以上两种修改方法将影响所有导入OSPF进程中的路由的初始种子度量值和开销值类型。
静态 -> B
[r2-ospf-1]import-route static
结论:
1、缺省路由无法直接通过重发布导入到B协议中,只能手动配置;
2、种子度量值也默认为1,开销值类型为类型2。(修改方法同上)
<r3>display ospf 1 routing //查看OSPF进程路由信息
[r2-ospf-1]default-route-advertise //该命令的实质是将路由表中的缺省路由重发布到OSPF进程中
直连 -> B
[r2-ospf-1]import-route direct
结论:
1、处理R3是直连路由外,其他三条直连网段都会导入;
2、种子度量值默认为1,开销值类型为类型2;
3、若ASBR进行了A -> B的重发布,同时进行了直连路由到B的重发布,并且里面包含 相同的路由信息,则优先选择直连重发布的路由信息而不看开销值。
双点重发布
默认RIP和OSPF协议若进行双点重发布,由于两者的优先级不同,故第一台ASBR的重发布动作结束后,将影响其他ASBR设备的路由表。使得路由可能被传回到源协议,发生路由回馈 --- A协议的路由重发布到B协议后,又被B协议重发布回A协议。
注意:路由回馈可能造成选路不佳,甚至出现环路。
所以需要消除路由回馈,华为设备的消除方法是将OSPF协议内部路由的默认优先级设计为10,但是重发布进来的路由(5类/7类LSA学到的)的优先级设置为150。--- 150的 优先级大于所有IGP协议的优先级。通过这种方法,可以避免路由回馈的产生。
在多点的重发布中,由于重发布技术的种子度量值问题,将必然导致选路不佳;只能依赖由策略来认为干涉选路。
控制层流量:路由协议发送路由信息是产生的流量。
数据层流量:设备访问目标地址是产生的流量。
路由策略
在控制层流量转发的过程中,截取流量,之后,修改流量中的参数或直接不转发,最终影响路由器路由表的生成,以达到干涉选路的目的。
1、抓取流量(控制层流量)
(1)通过ACL列表进行抓取,本身用于限制数据层流量的进出,也可以用于抓取控制层流量,单由于通配符的设计,导致其无法精确匹配控制层流量。
(2)通过前缀列表哦进行抓取( IP-Prefix)
[r1]ip ip-prefix aa permit 192.168.1.0 24 //网段信息,包含网络号和掩码
[r1]display ip ip-prefix aa //查看前缀列表的规则
前缀列表的规则默认是一10为不掉自动添加,便于插入和删除规则。
前缀列表的匹配规则:
自上而下,逐一匹配,一旦匹配上将按照该规则执行,而不在向下匹配。末尾隐含拒绝所有。
命令:
[r1]ip ip-prefix aa index 15 permit 192.168.3.0 24 //通过序号插入规则
[r1]undo ip ip-prefix aa index 15 //通过序号删除规则
前缀列表进行范围匹配:
[r1]ip ip-prefix aa permit 192.168.3.0 24 less-equal 28 //匹配路由的掩码范围在24-28之间
[r1]ip ip-prefix aa permit 192.168.4.0 24 greater-equal
28 //前后如果矛盾,则按照后面的为准,前面的数字含有将不再代表掩码长度,而代表前24为固定
[r1]ip ip-prefix aa permit 192.168.5.0 24 greater-equal
28 less-equal 30 //匹配前24位固定,掩码长度在28-30之间的路由信息
[r1]ip ip-prefix aa permit 192.168.6.0 24 greater-equal
28 less-equal 28 //匹配前24位固定,掩码长度必须为28位的网段
匹配主机路由:
[r1]ip ip-prefix aa permit 0.0.0.0 0 greater-equal 32 //匹配所有
[r1]ip ip-prefix aa permit 0.0.0.0 0 less-equal 32 //匹配缺省路由
2、路由策略
(1)RIP的merticin和merticout (偏移列表)
该偏移列表只能应用在距离矢量型协议上,链路状态是无法使用的。
[r1]ip ip-prefix aa permit 23.0.0.0 24 //该命令是通过前缀列表抓取目标网段的流量
[r1-GigabitEthernet0/0/1]rip metricin ip-prefix aa 10 //该命令是在路由器结课上做入方向上的偏移列表
(2)filter-policy(过滤列表/过滤策略)
[r1]ip ip-prefix bb deny 34.0.0.0 24 //由于过滤列表本身并不具备过滤功能,所以在进行流量抓取时,需要使用抓取流量列表的过滤功能
[r1]ip ip-prefix bb deny 34.0.0.0 24
[r1-rip-1]filter-policy ip-prefix bb import
GigabitEthernet 0/0/0 //在进程中调用过滤列表(注意:按需求确认是否需要选择作用的接口)
过滤列表
过滤列表,可以在距离矢量型协议上使用,也可以在链路状态型协议中使用。但是注意:在链路状态型协议中使用时,在一个区域内,由于没有办法过滤拓扑信息,所以只能在入方向进行调用,用来影响自身,并且只是在路由加表时不向路由表中加表,并不是将拓扑信息过滤掉。若是想在出方向进行调用,可以在ABR或者ASBR上针对三类、五类、七类LSA进行过滤。
3、Route-policy(路由策略)
(1)先抓取流量
Basic ACL 2000, 1 rule
Acl's step is 5
rule 5 permit source 1.1.1.0 0
Basic ACL 2001, 1 rule
Acl's step is 5
rule 5 permit source 2.2.2.0 0
ip ip-prefix aa index 10 permit 3.3.3.0 24
ip ip-prefix bb index 10 permit 4.4.4.0 24
(2)路由策略
[r2]route-policy aa deny node 10 //加一个列表的条目序号,一般是以10为步调手动添加
[r2]route-policy aa deny node 10
[r2-route-policy]if-match acl 2000 //如果匹配到ACL2000抓取到的流量
[r2]route-policy aa permit node 20
Info: New Sequence of this List.
[r2-route-policy]if-match acl 2001
[r2-route-policy]apply cost-type type-1
[r2]route-policy aa permit node 30
[r2-route-policy]if-match ip-prefix aa
[r2-route-policy]apply cost 10
[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 cost-type type-1 //单条规则中如果存在多个小动作或者匹配规则,则它们之间将按照“与”的关系执行。而规则直接按则按照原则,满足“或”的关系即可。
[r2-route-policy]apply tag 6666
[r2]route-policy aa permit node 50 //放通所有流量
(路由策略的匹配规则:自上而下,逐一匹配,一旦匹配上将按照该规则执行,而不再向下匹配。末尾隐含拒绝所有。)
(3)在重发布中进行调用
[r2-ospf-1]import-route rip 1 route-policy aa
ROUTE-POLICY的配置指南
1、即便要拒绝一个流量,在抓取时也使用允许,之后再路由策略中进行拒绝。
2、再一条规则中,若没有进行流量匹配的动作,则代表匹配所有流量,如果没有相应的应用(小动作),则仅对匹配的流量执行大动作即可。因此大动作为允许的空表,代表允许所有。