《运维人必会的OSPF故障排查10大技巧.docx》由会员分享,可在线阅读,更多相关《运维人必会的OSPF故障排查10大技巧.docx(21页珍藏版)》请在第壹文秘上搜索。
1、OSPF,即开放式最短路径优先(OpenShortestPathFirst.OSPF)是广泛使用的一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码(V1.SM)和汇总、层次区域划分等优点。在网络中使用OSPF怖议后,大部分路由将由OSpF协议自行计舞和生成,无须网络管理员人工限置,当网络拓扑发生变化时,协议可以自动计兑、更正路山,极大地方便了网络管理.但如果使用时不结合具体网络应用环境,不做好细致的规划,OSPF协议的使用效果会大打折扣,甚至引发故障。OSPF路由问题,需要择查的地方较多,梳理一个清蜥的OSPE排查思路极为垂要。为什么需要OSPF?
2、在OSPF出现前,网络上广泛使用RIP(RoutingInformationProtocol)作为内部网关协议.由于RIP是基于距离矢量算法的路由协议,存在若收敛慢、路由环路、可扩展性差等问题,所以逐渐被OSPF取代.OSPF作为基于链路状态的协议,能够解决RlP所面临的诸多问题。此外,OSPF还有以下优点:OSPF采用组播形式收发报文,这样可以减少对其它不运行OSPF路由器的影响.OSPF支持无类型域间选路(CIDR).OSPF支持对等价路由进行负载分担。OSPF支持报文加密。由于OSPF具有以上优势使得OSPF作为优秀的内部网关协议被快速接收并广泛使用.原理及处理过程路由器类型先讲一下OS
3、PF协议中常用到的路由器类型,如图所示IS-ISASBR表路由器类型路由器类型含义区域内路由器(InternalRouter)该类设备的所有接口都属于同一个OSPF区域.区域边界路由器ABR(AreaBorderRouter)该类设备可以同时属于两个以上的区域,但其中一个必须是骨干区域.ABR用来连接骨干区域和非骨干区域,它与骨干区域之间既可以是物理连接,也可以是逻辑上的连接。骨干路由器(BackboneRouter)该类设备至少有一个接口属于骨干区域.所有的ABR和位于AreaO的内部设备都是骨干路由器.自治系统边界路由器ASBR(ASBoundaryRouter)与其他AS交换路由信息的设
4、备称为ASBR.ASBR并不一定位于AS的边界,它可能是区域内设备,也可能是ABR.只要一台OSPF设备引入了外部路由的信息,它就成为ASBR.路由类型AS区域内和区域间路由描述的是AS内部的网络结构,AS外部路由则描述了应该如何选择到AS以外目的地址的路由.OSPF将引入的AS外部路由分为Typel和Type2两类.如下表中按优先级从高到低顺序列出了路由类型。表路由类型路由类型含义IntraArea区域内路由.InterArea区域间路由.第一类外部路由(TyPelE这类路由的可信程度高一些,所以计算出的外部路由的开销与自治Xternal)系统内部的路由开销是相当的,并且和OSPF自身路由的
5、开销具有可比性.到第一类外部路由的开销=本设备到相应的ASBR的开销+ASBR到该路由目的地址的开销.第二类外部路由(TyPe2E这类路由的可信度比较低,所以OSPF协议认为从ASBR到自治系Xternal)统之外的开销远远大于在自治系统之内到达ASBR的开销.所以,OSPF计算路由开销时只考虑ASBR到自治系统之外的开销,即到第二类外部路由的开俏=ASBR到该路由目的地址的开俏.OSPF是如何工作的?OSPF协议路由的计算过程可简隼描述如下:建立邻接关系和路由计算.建立邻接关系它的过程如下:本端设备通过接口向外发送Hello报文与对端设备建立邻居关系.两端设备进行主/从关系协商和DD报文交换
6、.两端设备通过更新1.SA完成链路数据库1.SDB的同步.此时,邻接关系建立成功.路由计算OSPF采用SPF(ShortestPathFirst)算法计算路由,可以达到路由快速收敛的目的。好了,了解完这些基础技术后,我们回到OSPF的故障处理来,首先根据多年工作经验,整理出如下故障徘杳流程图:由于OSPF路由正确的加入到全局路由表,依赖于正确的OSPF路由计第,而OSPF计算路由依赖于正确的OSPF1.SDB数据库信息,要建立正确的OSPF1.SDB数据库则首先要确保邻居之间能够形成正确的邻接关系.因此OSPF路由问题的排查整体思路技巧为:首先检查OSPF邻居关系然后检查OSPF1.SDB数据
7、库信息最后检直全同路由表解决方案具体排查如下:1.OSPF邻居状态查看两端OSPF邻居状态是否正需,正常情况下DRother之间的邻居关系应该稳定在2-way状态,非DRother之间的邻居关系应该稳定在Full状态命令:displayospfpeer.x.x.x例如:通过命令直看,可以确认OSPF的邻居状态是否正常.ID10.1.4.4NeighborsArea0.0.0.224interfaceRouterID:10.1.222.12State:FullMoie:NbrDR:10.1.224.12BDR:Deadtimerduein3SdisospCpeer10.1.222.12OSPFP
8、rocess1withRouter10.1.224.4(GioabitEthernetOZOZO),5neighborsAddress:10.1.224.12isMasterPriority:110.1.224.4MTU:0secRetranstimerinterval:5Neighborisupfor00:48:53AuthenticationSequence:02.是否加入OSPF路由表查看OSPF路由表中是否存在相应路由。命令:displayospfroutingx.x.例如:查看外部路由9.9.9.9是否加入ospf路由表disosfrouting10.1.2.2OSPFProcess
9、1withRouterID10.1.4.4Descinaxion:10.1.2.2/32AdvetRouter:10.1.222.12Tag:301Cost:1Type:Type2NextHop:10.1.224.12Interface:GigabitEthernetOZOZOPriority:MediumAge:00S0m53sdisospfroutinginclude10.1.2.2OSPFProcess1withRouwrID10.1.4.4RoutingTablesRoutingforASEjDestinationcostTypeTagNextHopAd1t10.1.2.2/321Ty
10、j230110.1.224.1210.1.222.123.接口使能OSPF及邻居参数是否匹配第一步确认接口启动OSPFOSPF的运行是基于设备接口的,如果OSPF没有在接口启动,那么邻居关系肯定无法形成.在接口上启用OSPF是通过Area视图下的network命令实现的,必须确保network中的网络范围包括需要启动OSPF的接口地址.命令:displayospfinterface例如:通过命令查看接口是否启动OSPF(redisplayospfinterfaceOSPFProcess1withRouterID.1.4.4Interfacesr*a:0.0.0.0(MP1.STEnotenab
11、led)IPAddressTypeStateCostPriDR10.1.4.4P2PP-2-P010.0.0.00.0.0.0第二步确认邻居两端OSPF参数匹配命令:displayospferror例如:通过命令查看邻居两端OSPF参数匹配dsplyospferror05PFProcess1withRouterD10.1.4.4OSPFerrorStatiaticaGeneralpacketexrcrs:000000000:IP:receivedmyownpacket0:Badpacket:Badversion0:Badchecksum:Badareaid0:Droponunnusheredi
12、nterface:Badvictuallia0:Badauthenticationtype:BadauthenticationkeyO:Pacetoosxall:Packetsi2eIplengthO:Tranaaxterror:InterfacedownO:Unknownneighbor:BadnetaeMntO:Externoptionusmatcb:RouteridconfusionHE1.1.Opacketerrors:OOO:Ketaflaarr.BtchO:HellotunecXianatch:CeadtxermismatchO:Vixtuolneighborunknown:KBM
13、AneiQhbocunknownO:InvalidSourceAddressDDO0PAceterrors:NeighborcatelowO:Unknown1.SAtyp:WHJoption11i0mazc1.SOACKpocketerrora:NeighborstateXowO:Unnown1.SArypc1.SOORQpacketerrors:xKcxghbcxstatelowO:Emptycquet:Badrequest1.SOOOUPDpacketerrors:NeighborscarelowO:NewereelfO:Kuxbcrofpolicyfoiled1.SAa:Ku113erofwrongperiod1.5A3Configurationerrors:TunnelcostmatAe反宜使用以上命令显示,对应错误数增加则存在问题相应的参数匹配问勉.常见几种错误如下:(I)OSPF区域配置是否匹配启动OSPF的接口属于某个区域,同时区域有多种类型,区域依齐区域ID进行标识,如果两边的区域类型或区域ID不匹配,则不会形成邻居关系.(2)OSPF验证配用是否匹配OSPF支持报文验证功能,验证分为简单甄证和MD5验证两种类型,如果