OSPF DR/BDR怎么选取,今天和大家聊下这个话题。
先选取BDR,后选取DR
这个知识点是很多小伙伴特别容易搞错的!很多人认为,BDR属于DR的备份设备,肯定是要在DR选取完成以后,才会选取BDR的。
其实不是,BDR是早于DR先选取的!
BDR先选
DR/BDR的选取过程如下:
· 在一个LAN上,先根据优先级和Router ID选取一个BDR;
· 如果LAN上此时没有DR,则BDR会转化为DR;
· 在LAN上,重新选取BDR。
其它的路由器(DR Other)需要和BDR建立邻接关系
DR负责在一个LAN上通告LSA信息,所有的路由器都要和DR形成邻接关系,那么和BDR是否要形成邻接关系呢?
答案是肯定的!
· BDR首先会和DR形成邻接关系;
· 其它的路由器(DR Other)也要和BDR形成邻接关系。
这样做是有原因的,当DR出故障以后,BDR会成为新的DR。如果DR other不和BDR形成邻接关系,网络的流量就会中断时间很长,因为建立邻居关系是要花一定时间的,在这段时间内,网络的流量是不通的!
DR other和BDR形成邻接关系,当BDR切换为DR时,只需要发送LSA,向DR other告知新的DR即可,LSDB的内容基本上不变。所以能够节省时间,让BDR真正的起到备份的作用。
优先级为0的OSPF路由器不参与DR、BDR的选取
如果把一台路由器的某个接口的OSPF优先级修改为0,则这台路由器在这个LAN上,就不会参与DR/BDR的选取了。
DR优先级为0
通过这个配置,也可以控制DR、BDR的选取!如果想让某台路由器永远都是一个LAN上的DR,则可以将其它的路由器的DR优先级都配置为0。
控制DR选取
DR、BDR是终身制,不能被抢占的
这一知识点也是比较奇怪的,我们上面说了DR/BDR是选取出来的,理论上在一个LAN上,应该是优先级最大的路由器被选取为DR的。
但在很多场景中,小伙伴看到的并不是优先级最大的路由器作为DR,因为DR/BDR的选取是不能被抢占的。
只要某台路由器在一个LAN上,已经被选取为DR,则它会一直是DR!只有等它重启或者关机了,才会重新选取,也就是说DR/BDR是终身制的。
这样做主要是为了网络的稳定,在真实网络中,稳定是压倒一切的。即使某种技术最新,某个设备性能最强,但是如果影响到稳定,就不会被优先选择!
所以想要让某个路由器永远作为DR,则只能其它路由器的优先级修改为0。
如果你想了解OSPF更多技术内容,可以参与到我们项目的实践中。