DR和BDR简介

DR(Designated Router):指定路由器。
BDR(Backup Designated Router):备份指定路由器。
DR Other路由器:除了DR和BDR之外的路由器都称为 DR Other 路由器。

        DR与BDR只存在于MA【多路访问】网络(广播类型网络和NBMA类型网络),以太网就是MA型网络,本文以以太网为例进行讲解。

为什么要选举指定路由器

        为优化MA网络中OSPF邻接关系,OSPF指定了三种OSPF路由器身份,DR【Designated Router】指定路由器、BDR【Backup Designated Router】备用指定路由器和DR Other路由器。只允许DR、BDR与其他(DRother)OSPF路由器建立邻接关系,双方保持在full状态;DRother之间建立邻居关系,双方停滞在2-way状态。

        选举DR和BDR是为减少邻接关系带来的低效率和LSA泛洪问题。如,网络中有n台路由器,如果任意两台路由器之间都要建立邻接关系,则需要建立nx(n-1)/2个邻接关系,所以当路由器很多时,则需要建立和维护的邻接关系就很多,两两之间需要发送的报文也就很多,这会造成很多内容重复的报文在网络中传递,浪费了设备的带宽资源。如果选举了DR和BDR,建立2x(n-2)+1个邻接关系即可,大大减少了邻接关系。因此在广播和NBMA类型网络中,OSPF协议定义了指定路由器。

为什么要选举备份指定路由器

        BDR会监控DR的状态,并在当前DR发生故障时接替其角色。如果DR故障而失效,此时网络中必须重新选举DR,并同步链路状态信息,这需要较长的时间。为了能够缩短这个过程,OSPF协议定义了BDR,作为 DR路由器的备份,当 DR路由器失效时,BDR成为DR,并再选择新的 BDR 路由器。

DR和BDR选举规则

        每一个含有至少两个路由器的广播类型网络或NBMA类型网络都会选举一个DR和BDR。选举规则如下:

  1. 首先比较OSPF路由器DR优先级,优先级最高者为 DR,次高的为 BDR。如果优先级相等,则 Router-ID数值高的为 DR,次高的为 BDR。
  2. 若DR、BDR已经选举完毕,人为修改任何一台路由器的 DR优先级值为最大,也不会抢占成为新的DR或BDR,即OSPF的DR、BDR选举是非抢占的。
  3. 如果一台路由器的DR优先级为0,则不参与选举。默认情况下,每台路由器的DR优先级为1。

        注:DR和BDR选举是在某个广播或者NBMA网段内二层网络中进行的,所以DR、BDR和DR Other只是相对于OSPF路由器接口来说的,因为多台路由器不会在同一局域网。如某台路由器在一个接口上可能是 DR,在另一个接口上有可能是BDR,或者是 DR Other。


示例配置

示例配置要求

        每台路由器都运行OSPF协议,所有路由器都在area 0区域内。由于R1、R2和R3路由器通过广播网络互连,OSPF会选举DR和BDR。通过配置使性能好的R1为DR,性能次之的R2为BDR,性能最差的R3不参与DR和BDR选举,实现对网络优化。

网络拓扑图

测试验证

        1.按照R1、R2、R3和R4顺序进行配置各路由器,保证网络互联互通。

2.验证OSPF的DR、BDR选举是非抢占性的

        在R1、R2、R3和R4顺序进行配置各路由器情况下(配置各路由器有一定的时间间隔,即,不是R1、R2和R3路由器同时竞选DR;R3和R4路由器同时竞选DR),查看DR和BDR选举情况。


        上图说明在192.168.1.0//24网段的局域网内,DR为R1,BDR为R2,因为在配置完R1后DR已经指定为R1,配置完R2后BDR已经指定为R2,即便OSPF网络后面配置了R3,也不会自动修改DR和BDR,证明了OSPF的DR、BDR选举是非抢占性的。 

3.DR和BDR是如何选举产生的

        同时重启R1、R2和R3路由器ospf进程,或者重启R1、R2和R3路由器,再查看DR和BDR选举情况。

        同时重启R1、R2和R3路由器ospf进程,或者重启R1、R2和R3路由器后,3台路由器优先级默认都为1,按照 Router-ID数值最高的R3(0.0.0.3)为 DR,次高的R2(0.0.0.2)为 BDR。

        注:上图还说明,R1、R2和R3路由器有同网段端口才参与了选举DR和BDR;R3和R4路由器有同网段端口才参与了选举DR和BDR。

修改R1、R2和R3路由器0/0/0端口DR优先级分别为100、50和0后,查看DR和BDR选举情况。

 
        OSPF的DR、BDR选举是非抢占性的,需要同时重启R1、R2和R3路由器ospf进程,或者重启R1、R2和R3路由器,让R1、R2和R3路由器参与DR选举。同时重启R1、R2和R3路由器ospf进程后再查看DR和BDR选举情况。

 

         同时重启R1、R2和R3路由器ospf进程,或者重启R1、R2和R3路由器后,优先按照路由器0/0/0端口DR优先级最高的R1(100)为 DR,次高的R2(50)为 BDR。

4.修改192.168.1.0/24网段(2层网络)类型为p2p网络,验证是否有DR和BDR?

 

 

        上图说明修改192.168.1.0/24网段(2层网络)类型为p2p网络后,R1、R2和R3路由器没有选举DR和BDR,192.168.11.0/24网段(2层网络)类型为广播网络(以太网),R4和R3路由器选举了DR和BDR。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐