OSPF在点到点网络下邻居的建立过程
来源:网络收集 点击: 时间:2024-07-22请先按照拓扑进行环境搭建,并在两台设备间的线路上开启Wireshark进行抓包,注意选择HDLC协议。

首先,我们需要对两台路由器做基本的配置设置。下图是在R1上进行的接口配置和路由配置。

下图是在R2上进行的接口配置和路由配置。

邻居的建立是非常快的,其实现在两台设备的OSPF邻居表中,已经是FULL状态了;同时,我们也发现Wireshark已经抓取到大量的数据报文了,这些就是邻居建立过程中产生的报文信息。



为了方便信息,我们打开Wireshark报文统计功能:点击statistics—Flow Graph——点击OK。就能看到整个邻居建立过程的报文统计图。
下面我们开始对这些报文进行分析。



路由器收到对方发来的hello包时,会在邻居表内将对方置为init状态。Hello包都发送到组播地址,并在OSPF报头中携带发送者的Router ID信息。


在将邻居的状态变为init后,路由器在之后发送的Hello报文中,会在Active Neighbour字段中添加上邻居的RID信息。
那么如果路由器收到一个Hello报文,且该Hello包内的OSPF Hello Packet报文中的Active Neighbor字段,携带有自己的RID信息时,该路由器会将邻居状态置为2way。


当路由器将邻居置为2way状态后,便开始发送DBD报文信息。路由器会发送空的数据库描述数据包,通过MS字段进行主/从选举。
当路由器收到DBD状态信息时,该路由器就会将邻居状态转换成Exstart状态。


路由器一旦收到邻居发来的数据库描述数据包,就会将对方状态转换到Exchange状态。

当路由器收到对方发来的DBD报文后,它将发送一个响应的DBD报文,通过双方首次DBD报文交换,主从选出。MS=0为从、MS=1为主。注意,在为选出主/从之前,路由器发送的第一个DBD,都讲自己设成主。

同时,该数据包将会传送该路由器的的链路状态摘要列表的LSA头部。其中携带路由目录信息。

当邻居路由器收到上述携带LSA头部的DBD报文时,其会发送一个包含相同序列号的确认数据包。这个过程将一直延续,直到路由器收到最后一个LSA摘要DBD包,且其中的M位置为0时,代表Exchange过程已经完成。

如果此时路由器的链路状态请求列表中还存在LSA条目(即本路由器没有,邻居链路状态摘要列表中存在的路由条目),路由器将会把邻居状态改为Loading状态。

在Loading状态时,邻居双方会依照各自的链路状态请求列表发送LSR—收到LSU发送LSA来进行LSA的更新。当路由器收到最后一个数据库描述报文时,该路由器就会把邻居状态改为Full状态。
当双方的邻居表内的邻居状态都置为Full状态时,则双方已建立完全邻接关系,OSPF邻居建立成功。


因为邻居建立过程是很快的,正常情况下,我们在邻居表中只能看到FULL状态。
在广播网络中,我们能看到2Way状态
当邻居建立不成功时,我们可以看到邻居表中的邻居路由器会停滞在某一状态中
在搭建网络环境的时候,注意路由器链路的选择,如果你选择的接口是FastEthernet接口,则意味着你的OSPF接口网络类型是个广播网络
网络动态路由OSPF邻居建立点到点网络版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_985458.html