ospf邻居建立过程
1.
hello报文的作用
邻居发现:自动发现邻居路由器。
邻居建立:完成Hello报文中的参数协商,建立邻居关系。
邻居保持:通过Keepalive机制,检测邻居运行状态。
hello报文的发送时间,根据链路的不同为10s和30s,用于周期性更新
hello报文还有一个deadtime为老化时间,这个时间必须是hello时间的4倍,如果不是则不能建立邻居关系。
可以看到图中的RTA对RTB发送hello报文,此时报文内的neighbor为null,用于发现邻居,当RTB收到这条报文时,RTB的状态为init。
RTB与RTA发送neighbor为null的用于发现邻居的hello时是同步的,当RTB收到hello后,会根据数据包中的源地址了解到RTA是自己的邻居,于是发送新的hello报文用于建立邻居关系,此时报文的neighbor为RTA的RouterID,当RTA收到这条报文时从init进入2way状态,同时RTA也会发送neighbor为RTB的RouterID的hello报文,当RTB收到时从init进入到2way状态。
那么OSPF是怎么发现邻居的呢,因为不知道对方的IP地址所以肯定不可以采用单播的形式,它使用的是组播的形式发送hello报文,目的地址发送的224.0.0.5,对于NBMA网络,也就是不支持组播的网络ospf需要手动指定邻居的ip地址。