
OSPF协议震荡处理总结.doc
5页强烈推荐】OSPF协议震荡处理总结 1.1 协议简要介绍Ospf:协议号:89,组播地址发包:224.0.0.5,TTL=1,只有一跳,不会被转发Router ID,路由器的唯一标志(自治系统内唯一)Router ID选取规则:如果通过命令行router id进行了配置,则按照配置结果设置;如果没有通过命令行router id进行配置,并且已经存在配置有IP地址的loopback接口,则选择loopback接口地址中最大的作为router id;如果没有通过命令行router id进行配置,并且不存在配置有IP地址的loopback 接口,则从其他接口的IP地址中选择最大的一个作为router id(不考虑接口的 UP/DOWN状态);邻居建立后,还需要通过HELLO报文进行邻居关系的维持,有两个定时器来进行这项工作:HELLO TIME:缺省为10秒)DEAD TIME:缺省为4倍的HELLO TIME通过Hello报文来进行邻居发现Hello报文中描述所有该接口上的邻居Hello以HelloInterval(10s)为间隔向外发送若间隔DeadInterval(40s)还没有收到邻居的Hello报文,则邻居Down。
1.2 协议状态机及交互 1.3 协议抓包论坛中前边发过1.4 常用调试手段如何方便的了解OSPF出了什么问题,调试开关是需要打开的,其中最有效,最常用的就是debugging ospf event(IOS对应命令为debug ip ospf event)!它能让你对OSPF的大部分问题看的一目了然当然它也不是万能的,它是在正确接收OSPF报文的基础上才能有相应的错误事件如果没有看到任何动静,建议打开OSPF的所有报文调试开关debugging ospf packet,看看报文的收发是否正常打开OSPF event调试开关举例:
display ospf lsdb显示OSPF的LSDB数据库display ospf routing显示OSPF路由信息display ospf error packet显示OSPF错误报文信息debugging ospf packet调试OSPF收发报文信息debugging ospf event调试OSPF的事件触发1.5 日志信息及定位方法Dec 13 2011 14:29:35+04:00 fol2-c1 %%01OSPF/4/NBR_DOWN_REASON(l)[296037]:Neighbor state leaves full or changed to Down. (ProcessId=1, NeighborRouterId=87.250.228.201, NeighborAreaId=0, NeighborInterface=Vlanif801,NeighborDownImmediate reason=Neighbor Down Due to Inactivity, NeighborDownPrimeReason=Hello Not Seen, NeighborChangeTime=[2011/12/13] 14:29:35) 相关错误警告信息见附件。
概要的故障处理步骤如下:1检查接口网段是否一致2检查各接口的优先级是否有非零3检查各路由器的route id互不相同4接口的timer等参数保持一致5接口的认证信息保持一致6检查是否ospf报文能正确接收 详细的故障处理步骤如下:1. 检查接口网段是否一致 建立ospf邻居时,Broadcast和NBMA接口应该在在同一网段,保持两端可以ping通同时接口所属区域的区域id应保持一致,同时区域的类型也要相同,包括nssa,stub,normal area等2. 检查各接口的优先级是否有非零 Broadcast和NBMA类型的网段,各接口的优先级至少有一个是非零的,已确保能 够正确的选举出DR否则各邻居只能达到2-way的邻居状态可以通过display ospf interface等命令查看接口的优先级3. 检查各路由器的route id互不相同 同一网段上所有路由器的route id应该互不相同,否则会产生无法预料的路由振荡可以通过display ospf brief等命令查看路由器的route id4. 接口的timer等参数保持一致 ospf timer hello命令用来设置接口发送Hello报文的时间间隔。
缺省情况下,point-to-point、broadcast、point-to-multipoint类型接口发送Hello报文的时间间隔的值为10秒;NBMA类型接口发送Hello报文的时间间隔的值为30秒 ospf timer dead命令用来设置OSPF的邻居失效时间,缺省情况下,point-to-point、point-to-multipoint、broadcast类型接口的OSPF邻居失效时间为40秒,NBMA类型接口的OSPF邻居失效时间为120秒 创建邻居时,对应接口时间间隔参数必须保持一致,否则无法建立邻居可以通过display ospf interface等命令查看5. 接口的认证信息保持一致 ospf在area下和接口下分别有认证信息的配置 ospf认证的基本原则是: 如果接口下配置了认证,则使用接口下的认证,如果接口下配置为null,则该接口不进行认证;如果接口下没有配置认证(配置为null不是没有配置认证),则采用area下配置的认证,如果area也没有配置认证,则不认证 创建邻居时,只有两端的认证配置完全一致时才能达到Full状态6. 检查是否ospf报文能正确接收 有时ospf的报文无法正确接收,原因有很多,先检查链路层是否畅通。
可以打开ospf的debug开关查看报文的收发情况Debug命令有debug ospf packet,debug ospf event等,还可以通过display ospf error命令查看各种ospf的错误计数 如果ospf 的报文一切正常,再打开ip报文的debug信息来确认ip层是否转发成功命令是debug ip packet,可以增加acl filter对debug信息过滤 附件: NeighborDownPrimeReason.xlsx ( 21.12 KB ,18 下载 ) 标签: Ospf,接口,报文petyourface威望:500积分:2465金币:2000头衔:中级工程师 发消息2 楼 发表于 2012-11-26 23:33 | 只看该作者等待审核中monkeybrother威望:500积分:1787金币:2000头衔:中级工程师 发消息3 楼 发表于 2012-11-26 23:41 | 只看该作者附件内容如下,下次我尽量把内容都附在正文里告警描述 告警ID 含义Hello Not Seen NBR_DOWN_NO_HELLO_SEEN Inactivity timer 超时DownInterface Parameter Mismatch NBR_DOWN_INTF_PARA_MISMATCH 参数错误,例如Network类型配置错误Logical Interface State Change NBR_DOWN_IFLCHANGE 逻辑接口变化Physical Interface State Change NBR_DOWN_IFACHANGE 物理接口变化OSPF Process Reset NBR_DOWN_PROC_RESET 重启OSPF进程(手动执行reset ospf进程)Area reset NBR_DOWN_AREA_RESET 重启OSPF区域Area Option Mis-match NBR_DOWN_AREA_CAP_MISMATCH Option选项错误Vlink Peer Not Reachable NBR_DOWN_VLINK_UNREACHABLE 虚链路不可达Sham-Link Unreachable NBR_DOWN_SHAMLINK_UNREACHABLE Sham-Link不可达Undo Network Command NBR_DOWN_NET_UNDO 执行undo network command命令Undo NBMA Peer NBR_DOWN_PEER_UNDO NBMA网络执行undo peer命令Passive Interface Down NBR_DOWN_PASSIVE_INT 执行silent-interface命令Opaque Capability Enabled NBR_DOWN_TE_ENABLE 使能TE功能,重建邻居。
Opaque Capability Disabled NBR_DOWN_TE_DISABLE 去使能TE功能,重建邻居Virtual Interface State Change NBR_DOWN_IFVCHANGE 虚接口状态改变消息BFD Session Down NBR_DOWN_BFD_SESS_STATE_CHANG BFD Down。
