Hello 数据包
OSPFv3使用两个组播地址发送各种数据包。一个是FF02::5,代表所有运行OSPF协议的路由器都应该处理的数据包;另一个是FF02::6,代表DR和BDR路由器应该处理的数据包。
Hello数据包使用的地址是FF02::5。Hello数据包定期在所有运行了OSPF的接口上发送,用来建立和维护邻居关系。连接在同一条链路上的路由器必须对某些参数协商一致才能形成邻居关系。这些参数包含在Hello数据包中。Hello数据包中也包含用来选举DR/BDR的参数。Hello数据包的结构如图4-3所示。
图 4-3 Hello 数据包结构
Hello数据包中个字段的含义如下:
Interface ID -- 接口标志符。路由器的每一个接口都有一个唯一的标志符。
Router priority -- 路由器优先级。路由器根据该值选举DR/BDR。
Options -- 该24比特字段出现在Hello包、DDP和某些LSA中,OSPF路由器使用该字段实现某些与其他路由器通信的能力(详见RFC2740)。
Hello interval -- 发送Hello包的周期时间。
Router dead interval -- 邻居路由器认为该路由器的失效时间。
Designated router ID -- DR路由器的ID。
Backup designated router ID -- BDR路由器的ID。
Neighbors ID -- 邻居列表。每个邻居ID占4字节。