OSPF建立邻居关系

在接口上启用OSPF时,路由器必须确定链路上是否还有另一个OSPF邻居。为此,路由器会在所有启用了OSPF的接口中发送包含其路由器ID的Hello数据包。Hello数据包发送到保留的所有OSPF路由器IPv4多播地址224.0.0.5。仅OSPFv2路由器将处理这些数据包。OSPF进程使用OSPF路由器ID来唯一标识OSPF区域中的每个路由器。路由器ID是一个32位数字,格式类似于IPv4地址,并且分配给OSPF对等方以唯一地标识路由器。

当相邻的启用OSPF的路由器接收到的Hello数据包的路由器ID不在其邻居列表中时,接收路由器将尝试与发起方路由器建立邻接关系。

1、Down到Init状态

启用OSPFv2时,启用的以太网g0/0接口将从Down状态转换为Init状态。R1开始从所有启用OSPF的接口发送Hello数据包,以发现与之建立邻接关系的OSPF邻居。

ospf令居建立 ospf建立邻居关系命令_ospf


Init状态

R2从R1接收Hello数据包,并将R1路由器ID添加到其邻居列表。然后,R2将Hello数据包发送到R1。该数据包在同一接口的邻居列表中包含R2路由器ID和R1路由器ID。

ospf令居建立 ospf建立邻居关系命令_OSPF_02


3、Two-Way状态

R1接收Hello,并将R2路由器ID添加到其OSPF邻居列表中。它还在Hello数据包的邻居列表中注意到其自己的路由器ID。当路由器收到邻居列表中列出的带有路由器ID的Hello数据包时,该路由器将从初始化状态转换为双向状态。

在双向状态下执行的操作取决于相邻路由器之间的互连类型,如下所示:

  • 如果两个相邻邻居通过点对点链接互连,则它们会立即从双向状态转换为ExStart状态。
  • 如果路由器通过通用以太网互连,则必须选择指定的路由器DR和BDR。

    选举DR和BDR
    由于R1和R2通过以太网互连,因此将进行DR和BDR选举。如图所示,R2成为DR,R1成为BDR。此过程仅在诸如以太网LAN的多路访问网络上发生。
    不断交换Hello数据包以维护路由器信息。