ospf协议 联系客服

发布时间 : 星期二 文章ospf协议更新完毕开始阅读d8e5cbf84b73f242326c5f6c

33 : HELLO: Neighbor unknown 48 : DD: MTU option mismatch 34 : DD: Unknown LSA type 49 : DD: Extern option mismatch 35 : LS ACK: Bad ack 50 : LS ACK: Unknown LSA type 36 : LS REQ: Empty request 51 : LS REQ: Bad request

37 : LS UPD: LSA checksum bad 52 : LS UPD: Received less recent LSA 38 : LS UPD: Unknown LSA type

24:在什么情况下ospf error的OSPF Router ID confusion 数值会增加

答:这条错误,相信大家再熟悉不过了,ospf router-id 冲突,RFC 规定,ospf 的router-id 在整个AS 中唯一,而router-id 又起着防环的作用,关于ROUTER-ID 冲突,我一共总结出 三种情况,分别如下。

第一种:区域内router-id 冲突,这种情况大家遇到的最多(骨干区域与骨干区域,非骨干区 域与非骨干区域。区域内,)导致的后果是,OSPF 不能正常建立邻居,那么自然不能正常 交互LSA 信息咯。

第二种:区域间的route-id,这种冲突,必定是在多区域的情况下才会产生,不然怎么叫区 域间冲突呢。他导致的后果,路由时有时无,两个冲突的路由器学到的路由,在路由表里, 一下有,然后又消失了,然后又出现了。

第三种:虚连接router-id 冲突,这种情况最明显,导致的后果跟第一种情况差不多,虚连接 无法正常建立,(区域间冲突的一种)

Router-id 冲突,概念性的就这三种,当然,区域内,区域间,如果细分的话,有十几种, 遇到此问题时,整理下思路,OSPF 的ROUTER-ID 冲突相对来说是比较好定位与排除的。 25:在什么情况下。OSPF bad versio数值会增加。

答:ospf 的版本出错。或者说,ospf 版本字段损坏。解决办法,检查下OSPF 版本是否配置 正确。然后重启下OSPF 进程就可以了。

26:在什么情况下,OSPF bad area ID 数值会增加?

答:区域ID 配置错误,如果是在骨干区域与非骨干区域(区域零和非骨干区域冲突),那么 在骨干区域的路由器上,OSPF bad area ID 会增值,而在非骨干区域他显示的是虚连接增值。 OSPF bad virtual link,但如果都是非骨干区域呢,那么两边的路由器都是OSPF bad area ID 增值。

27:在什么情况下会OSPF bad virtual link数值升序,

答:OSPF 虚连接错误,只要是非骨干区域与骨干区域不连续,都会出现此错误,具体的, 分别如下,

第一:如果是非骨干区域并没有骨干区域,(例如,区域1-2 -3 这样) ,但在同一个网段中, 那么会出现OSPF bad area ID 升值,因为ospf 区域针对的是网段和接口,并不是针对路由器, 第二:OSPF 虚连接是建立在正常的OSPF 邻居之上的,所以,在虚连接DOWN 的情况下 先检查ospf 邻居是否正常,

第三:ospf 并不能跨区域建立虚连接,在上面的问题中,我已经描述过虚连接建立的过程, 如果是跨区域,那么ospf 的目的地址,固然确定不了,既然目的地址确定不了,那么报文 肯定不能正常发送。

28:在什么情况下OSPF bad authentication key数值会增加。

答:在这里有必要说下,MSR-20-21,所实现的OSPF 验证,如果一旦在区域内启用OSPF 验 证,那么接口就必须要与区域内使用同一种验证模式才能正常加密ospf 报文,如果接口跟 区域内不一致的话,(包括区域内启用MD5,而接口下使用的是simple,或者区域内启用验 证,接口下不启用,)他是不发送HELLO 报文的,因为区域内与接口不匹配或协商的字段 不一致,那么他的OSPF 报文会出错的,,就算发出去了也是不完整的。并且他在ospf 中 的error 不会提示任何代码出错的,(因为都没报文发出去,他那什么去检测出错),那么回 到我们本题中,ospf 验证方式有两种,一种是在接口下启用验证,一种是在ospf 区域内启 用,既然他必须严格要求区域与接口使用的是同一种验证模式(如MD5 或simple)那么此 字段升值,肯定是两边接口下的KEY 出错咯。

29:在什么情况下OSPF Neighbor state low 会升值?

答:此数值,会跟着链路的震荡,会依次升序,(如邻居UP,DOWN,或者链路不稳定,) 30:在什么情况下,OSPF interface down 会升值。

答:此数值,在使能ospf 之后,他的链路会进入到一个端口状态(比如,DR,或BDR,),如

果此链路不稳定,经常UP,DOWN。那么此数值就会根据UP,DOWN 的次数而升值此项。 31:在什么情况下, HELLO: Netmask mismatch 数值会升值。

答:ospf 在除点到点和虚连接的情况外,都必须严格匹配network mask 字段,这是验证一 个HELLO 是否合法,如果合法,就继续交互报文,建立邻居,反之,则丢弃报文,那么 此字段升值,肯定是两边接口的掩码不一致,

32:在什么情况下,HELLO: Dead timer mismatch 字段升值, 答:补充一下,验证hello 是否合法,分别如下,

第一:如果接受端口类型是广播型,或NBMA 型,那么所接受的端口中的NETWORD MASK 字段必须和接收端口的网络掩码一致,,如果端口类型为点到点,或虚连接,那么将忽略此 字段,

第二:所接受的hello 报文中的hellointerval 字段必须和接收端口的配置一致,

第三:所接收的HELLO 报文中routerdeadinterval 字段必须和接收端口的配置一致, 第四:所接收hello 报文中的OPTIONS 字段中的E-bit,必须和相关区域的配置一样。

那么再回到此代码,毋庸置疑,肯定是两边的router deadinterval 字段不一致,才会升值,(此 问题一般都是手动更改接口下的ospf router dead ) 33:在什么情况下HELLO: Neighbor unknown升值, 答:hello 包的邻居(Neighbor)字段匹配错误, 34:在什么情况下,DD: Unknown LSA type升值。 答:路由器在数据库同步时,收到未知的LSA 类型, 35:在什么情况下LS ACK: Bad ack升值。

答:OSPF 在大概几种情况下发送LSACK 信息,分别如下,

第一:OSPF 在刚确定建立邻接关系的时候,邻居状态到loading 的时候,收到对方发送的 LSU 报文后,回复LS ACK,邻居状态机并转换到FULL 状态,此LSACK 的作用是确保信 息传输的可靠性。并对以接受的LSA 进行确认。

第二:如果LSA 的LS 时限等于MaxAge,而且路由器的连接状态数据库中没有该

LSA 的实例,而且路由器的邻居都不处于Exchange 或Loading 状态,那么此时的路由器过 发送一个LSAck 包到发送的邻居来确认收到该LSA,或丢弃该LSA,并从LSU 包中取得下 一个(如果存在)

再回到我们这个问题中,RFC2328 规定,理洪泛之前,要对所接收到的LSAck 包进行很多 一致性检查。特别的,需要与特定的邻居相关联。如果所关联的邻居状态小于Exchange, 则丢弃该LSAck 包。

36:在什么情况下LS REQ: Empty request升值 答:

37:在什么情况下LS UPD: LSA checksum bad字段升值

答:顾名思义。在RFC2328 中,明确描述,对于每个包含在LSU 包中的LSA,进行下面的 步骤。

第一:确认LSA 的LS 校验和。如果校验和无效,丢弃该LSA,并从LSU 包中取得下一个 第二:检查LSA 的类型。如果LS 类型为未知,丢弃该LSA,并从LSU 包中取得下一个 那么根据以上的规则,再看此问题,可以很明显的看出来,LSU 在检查效验和,一但在此 步骤发生错误,那么OSPF 中的error 中的LS UPD: LSA checksum bad 升值。 38:在什么情况下LS UPD: Unknown LSA type 字段升值。 答:跟上个问题答案一样,不再讨论

39:OSPF 在什么情况下OSPF bad packet字段升值。

答:OSPF 非法报文。在上面的错误中。已经介绍了各种报文验证合法的错误。这里的非法。 指的是。此报文已经通过了OSPF 中的报文头验证。但包中的某些字段过长。导致ospf 进 程或路由器无法识别。

40:在什么情况下,OSPF bad checksum 升值 答:在RFC2328 中定义checksum 字段如下。

从OSPF 包头开始,除了64 位的验证域外,整个包的标准IP 校验和。该校验和作为 16 位1 补足校验和而计算包中除验证域外的所有16 位字。如果包的长度不满足16 位 字,就在校验和前加上一个字节的0 来补足。 校验和也被作为正确性验证的一部分

因为效验和也被作为正确性验证的一部分。所以。当效验和出错了。此字段也就跟着升值。 41:在什么情况下OSPF drop on unnumbered interface 字段升值。 答:某个地址借用接口上丢弃的OSPF 报文数。

42:在什么情况下OSPF bad authentication type升值

答:区域内验证类型不一致,导致项升值,区域验证一共有两种,一种是MD5 一种是simple, 此字段升值后,检查下区域内配置的验证模式,两端是否一样。 43:在什么情况下OSPF packet too small 升值 答:ospf 报文没有正常封装。或者封装的包太小。 44:在什么情况下OSPF transmit error 升值 答:传输出错的的OSPF 报文数

45:在什么情况下OSPF unknown neighbor升值

答:未知的OSPF 邻居,在广播网络环境下,当一个接口修改Dead 值的时候。由于DEAD 值必须要跟HelloInterval 必须相同。否则就会出错。但是修改了此值之后。首先在OSPF ERROR 中HELLO: Dead timer mismatch 此项升值,然而接下来,当网段内其他的路由器正 常建立邻居而泛洪LS ACK 的时候。此路由(修改了DEAD 值的路由器)收到了其他路由 器的一些报文。比如LSACK,那么这些报文对此OSPF(在接口上修改了DEAD)进程来 说,是未知的,所以,在这时候,此项就跟着升值了。 46:在什么情况下HELLO: Hello timer mismatch

答:顾名思义。HELLO 包的TIME 值不匹配。地球人都懂,不再讨论。 47:在什么情况下HELLO: Extern option mismatch升值

答:在上面的问题中(32 题)我已经描述过,OSPF 在检验一个HELLO 报文是否合法,其 检查的字段中有,E-bit,在ospf 特殊区域中比如(NSSA,stub)如果此E-BIT 不匹配。那 么ospf 中的ERROR 将会升值此项。

48:在什么情况下DD: MTU option mismatch升值

答:关于这个问题,我们切换到RFC2328 中接收到数据库描述包

如果DD 包中表示IP 包大小的接口MTU 域,大于该路由器接口所能接收的不分片大小 ,拒绝该DD 包。否则,如果邻居路由器的状态是: Down:

包应当被拒绝。 Attempt:

包应当被拒绝。 Init:

邻居状态机应当执行事件2-WayReceived。这导致立即变为状态2-Way 或状态 ExStart。如果新状态是ExStart,按照下面ExStart 情况的介绍,继续当前包的处 理。 2-Way:

包应当被忽略。DD 包仅为建立邻接而使用。 ExStart:

如果接收到的包满足下列一个条件,则邻居状态机需要执行NegotiationDone 事件 (这将使状态变为Exchange)。包的选项域应当被记录在邻居结构的选项域中,包 的序号应当是下一个要处理的号码(见下)。否则,忽略该包。

设定了初始(I)、更多(M)和主从(MS)选项位,包的其他部分为空,且邻居路 由器标识比自身路由器标识要大。这时,路由器作为从机/Slave。设定主从位为从 ,并将邻居数据结构中的邻居DD 序号设定为主机所提出的号码。

清除了初始(I)和主从(MS)选项位,且包中的DD 序号等于邻居数据结构中的DD 序号(标明为确认),而且邻居路由器标识比自身路由器标识要小。这时,路由器 作为主机/Master。 Exchange:

主机丢弃所收到的重复DD 包;从机收到重复的DD 包时,则应当重发前一个DD 包。否 则(不是重复包):

49:在什么情况下DD: Extern option mismatch升值

答:DD 报文的option 字段出错。根据RFC2328 中定义DD option 的概念如下

在交换DD 包时,路由器可以因为功能的不同,而选择不将特定的LSA 转发到邻 居。最后,路由器可以根据LSA 中列出的选项将其排除出路由表的计算,而将流量 转发到特定的路由器。

50:在什么情况下LS ACK: Unknown LSA type升值 答:含有未知类型LSA 的LSACK 报文数

51:在什么情况下LS REQ: Bad request 升值 答:请求错误LSA 的LSR 报文数

52:在什么情况下LS UPD: Received less recent LSA升值

答:含有不是最新的LSA 的LSU 报文数,大家都知道,OSPF 是用系列号和LS AGE 来区分 一条路由的新衰,当区域内有一台路由器重启时,那么他生成的LSA 信息已经泛洪到别的 路由器上去了(描述的是别的链路,他重启对本身这条LSA 信息不会导致任何不良反应。 换句话说是本路由器上的LOOK 上也有此路由。)。但是,但一台路由器重启过后。那么区 域其他路由器在泛洪此LSA 信息的时候。那么两台路由器此时的LSA 新旧就会发生冲突。 但对于别的路由器来说。泛洪的不是最新的LSA 所以。此时的ERROR 在这个时候升值此 项。