3.24上午 补
为什么要选DR和BDR?
为了避免路由器之间建立完全邻接关系而引起的大量开销,OSPF 要求在多路访问
的网络中选举一个DR,每个路由器都与之建立邻接关系。选举DR 的同时也选举出一个BDR,
在DR 失效的时候,BDR 担负起DR 的职责,而且所有其它路由器只与DR 和BDR 建立邻接关系;
每30分钟泛洪一次;
泛洪过程:交换机根据收到数据帧中的源MAC地址建立该地址同交换机端口的映射,并将其写 入MAC地址表中。交换机将数据帧中的目的MAC地址同已建立的MAC地址表进行比较,以决定由哪个端口进行转发。如数据帧中的目的MAC地址不在MAC地址表中,则向所有端口转发。
DR和BDR的选举是根据优先级来确定的,优先级越大约有可能成为DR,如果优先级相同,那么就根据route-id的大小来选举,越大越有可能成为DR。 首先,所有路由器向外发送hello包的时候,每个路由器都认为自己是DR,这个时候的状态为init,当达到2-way状态时,已经是邻居关系,这个时候在你给我发的数据包中我能看见我自己的信息。这个时候谁的优先级大谁是DR,如果优先级相同就比较route-id。 如果主从关系确定后,一个新加入的路由器比DR优先级大,那么原有的DR还是DR.只有当DR挂掉后,原有的bdr会向外发送其优先级route-id和其他路由器对比,如果该BDR优先级高,那么继任DR的工作。 这里有一点需要明确:优先级都为0的时候,不能参与主从选举。drther都是优先级为0. drther和dr通讯的组播地址是:224.0.0.6. 其余的都是224.0.0.6.
Router A notifies all OSPF DRs on 224.0.0.6组播地址
DR notifies other on 224.0.0.5