深度解析OSPF及其常见故障原因

前言:如有疑问(包括但不限于本篇,涉及网络  系统皆可),欢迎评论探讨,看见能解答必回。彼此交流,共同成长。)

摘要:各状态卡顿原因;引发卡顿原因;状态机及三张表;(1、2、3、4、5、7)类LSA;ospf网络类型;nssa属性、域外防环、路由不加表现象、过滤现象、瞬时黑洞、完美重启。

 

OSPF即开放式spf(short path first,D.J算法):路由器以自己为根,通过spf算法选出最短路径形成树,再考虑根网络的连接,使其作为叶子加入树。域间OSPF通过router/network两类 LSA描述,最后将收集的LSA组成LSDB。

 

一、各状态卡顿原因:1.down状态 2.init状态:认证不通过 3.two way状态:选举不成功4.exchange状态:mtu不匹配(包的交互问题,如包过大) loading状态:lsu加载不完整。

二、哪些情况会引发卡顿:1.相同的router id  2.认证不通过 3.区域id不同 4.特殊区域标志(nssa 、stub)不一致 5. 优先级都为0,选举失败。6.mtu不匹配  7.包的交互问题,如包过大、丢包  8.max-lsa数量限制会引发lsa加载失败  9.hello时间不一致  10.点到点与MA网络建邻导致spf算法混乱  11.虚链路的建邻没有两个ABR出口 12.shame-link建邻时,目的和源的单播不通。

 

三、状态机:三种状态、状态包参与、状态卡顿原因(开头已描述)

exstart状态进行主从选举,DBD在此期间不携带LSA头部信息。在router id 中,越大优先级越高。

exchange状态 将lsa头部信息互相发送确认,双方可看到对方的描述信息。

loading状态  发送lsr,确认后得到完整的lsa信息即lsu。

 

三张表:1.OSPF 邻居表

2.OSPF  LSDB表

LSA age 、seq 、checksum  用于LSA新旧比较

1).比较最大序列号(正、负)

2).最大的无符号校验和

3).LSA age  ,当LSA age 只差大于15分钟,LSA age 小的最新

3.路由表

 

四:LSA类型

1类LSA特性:注意若在MA网络中,会产生2类LSA,该LSA中包括了MA网络中网络掩码信 息,所有此时产生的1类LSA是不完整的。

  1. P to P(点到点,点到多点,非广播)  2.Stub network  3.transmit  network  4.虚链路virtual-link

 

引申问题:如何理解点到多点是点到点的集合?

答:transmit是一种拓扑图结构。

 

2LSA: Network LSA 网络LSA

作用:在MA网络中用于通告该MA网络中所有的路由,并描述该网络的网络掩码

Link-id:MA网络DR路由器接口地址

ADV:DR路由器的router-id

传播范围:在所属area 内传输,终止于ABR

 

引申问题:为什么要有2类lsa,2类如何解决问题?

答:2类指明MA网络

 

3类LSA : summary LSA 汇总LSA

作用:用于不同区域之间路由信息的传递

Link-id:所传递的路由信息网络号

ADV:所在区域的ABR对应的router-id

传播范围:只在某区域传递,区域边界产生

特性:3类LSA在穿越不同区域时,ADV会自动发生改变.  在产生3类LSA时自动产生 option参数为upward,用于3类LSA路由信息区域间的防环。

 

4类LSA:summary ASB  LSA

作用:用于通告ASBR路由器位置的

Link-id:ASBR路由器的router-id

ADV:所在区域ABR的router-id

传播范围:除了进行重发布所在区域外的area之间

特性:穿越不同区域,

ADV router 会发生变化(与3类LSA相同)

 

5类LSA:用于通告外部路由(1.重发布进入  2.7转5的LSA)

作用: 用于通告外部路由,仅仅包含路由信息

link-id:外部路由网络号

ADV:ASBR路由器router-id(产生该LSArouter-id

传播范围:在整个OSPF域传递

特性:分为OSPF 外部类型1和类型2,5类LSA默认种子度量值为20.

 

7类LSA: 

作用:在NSSA区域中,用于通告外部路由信息.

Link-id:外部路由网络号

ADV router:ASBR路由器的 router-id

传播范围:仅仅在本NSSA区域中传递

特性:产生的7类LSA中包含了FA地址(转发地址),路由学习时是按照到达该FA地 址的metric值进行计算的,若FA地址不可达,则路由不优. 并且在NSSA区域边界ABR 路由器上进行7类转5类,转换后的5类LSA默认依然包含FA地址,所有产生的5类LSA 不需要再产生4类LSA。

FA地址一般为ASBR路由器上运行OSPF的最大环回接口地址.注意在某些IOS上为最先 运行OSPF的环回接口地址。

 

五:OSPF 网络类型

1.loopback:环回网络,ospf自动识别lookback接口,接口matric计算不考虑带宽。

2.P to P:自动建邻,不选举DR,组播发送

3.BMA:广播型多路,自动建邻,选举DR,组播更新,生成2类LSA

4.NBMA:非广播型多路,手动建邻,选举DR,单播更新,在hub-spoke中应用

5.P-MP-nonB:自动建邻,不选DR,组播建邻,产生到达对方的主机路由

6.P-MP-nonbroadcast:不选DR,不主动只能单播建邻,产生到达对方的主机路由(解决在hub-spoke网络中spoke端互指PVC的问题)

7.虚链路---virtual-link、sham-link

 

六:其他问题

1.Nssa(“not-so-stubby”)属性:拒绝4 5 类,用7类作为自己的外部路由。7.5类如果有两个abr,只在router id大的转。

2.域外防止环路:1)利用type-4 LSA防环

当一台OSPF路由器将外部路由引入OSPF域后,它就成为了一台ASBR,被引入的外部路由以Type-5 LSA在整个OSPF域内泛洪。一台路由器使用Type-5 LSA计算出路由的前提是两个,其一是要收到Type-5 LSA,其二是要知道产生这个Type-5 LSA的ASBR在哪里。与ASBR接入同一个区域的路由器能够根据该区域内泛洪的Type-1 LSA及Type-2 LSA计算出到达该ASBR的最短路径,从而计算出外部路由。而其他区域的路由器就没有这么幸运了,因为ASBR产生的Type-1 LSA只能在其所在的区域内泛洪,所以才需要Type-4 LSA。因此其他区域的路由器在获取Type-4 LSA后便能计算出到达ASBR的最短路径,进而利用该ASBR产生的Type-5 LSA计算出外部路由。Type-5 LSA将会被泛洪到整个OSPF域,表面上看,它本身并不具有什么防环的能力,但是实际上,它并不需要,因为它可以依赖Type-1 LSA及Type-4 LSA来实现防环。

2)type-5 LSA中 external route tag防环

五类LSA Route-tag与DN位置位都存在时(思科dn不置位),首先根据Route-tag值来判断是否引入该路由,如果Route-tag值中的AS号信息与引入的BGP的AS号一致,则拒绝引入该路由。

 

3.Ma和nbma对比,后者网络变动影响较大,故障恢复时间长。所以一般而言,最好的方案是点到多点。通过mgre的配置改良,可以克服必须绕行接口的缺点。(让mgre支持伪广播(组播映射))

 

4.非组播的坏处:当有新点时hub上都需要重新手动建邻。

 

5.如果有dr\bdr选举 分支接口配0

 

6.FA要么为0要么有地址,有地址则按照FA的规则进行选择。必要产生条件:FA接口必须是MA类型的。

7.五类FA会引起路由表的递归查找,若查不到或查到的非O或OI开头的路由,则递归无效。该现象称为:路由不加表现象

引起路由不加表现象:1.如上 2.BMA与点到点建邻,无法计算路由  3.四类被过滤掉

 

8.过滤现象1).分发列表(只能in)

2).域间过滤 3).域间汇总来过滤特定路由+not+advertise+关键字)

 

9.瞬时黑洞:协议收敛速度的不同,导致路由有去无回。解决办法:设置stub router

1.max-metric router-lsa on-starup wait-for-bgp  //等待bgp收敛完成

2.max-metric router-lsa  //经过的lsa永远最大metric

 

10.完美重启:不清空FIB表。框式路由器,双交换引擎。虚拟化:磁化?、再分配

graceful restart

 

 

你可能感兴趣的:(网络相关)