在OSPF
的广播类型网络和NBMA
类型网络中,如果网络中有n
台路由器,若任意两台路由器之间都要建立邻居关系,则需要建立n*(n-1)/2
个邻居关系,即当路由器很多时,则需要维护的邻接关系就很多,两两之间需要发送的报文也就很多,这会造成很多内容重复的报文在网络中传递,浪费了设备的带宽资源。
因此在广播和NBMA
类型网络中,OSPF
协议定义了指定路由器DR
【Designated Router
】,即所有其他路由器都只将各自链路状态信息发送给DR
,再由DR
以组播方式发送至所有路由器,大大减少OSPF
数据包的发送。
但是如果DR
由于某种故障而失效,此时网络中必须重新选举DR
,并同步链路状态信息,这需要较长较长时间。为了能缩短这个过程,OSPF
协议又定义了BDR
【Backup Designated Router
】的概念,作为DR
路由器的备份,当DR
路由器失效时,BDR
成为DR
,并再选择新的BDR
路由器。其他非DR/BDR
路由器都称为DR Other
路由器。
每一个含有至少两个路由器的广播类型网络或NBMA
类型网络都会选举一个DR
和BDR
。选举规则如下:
- 首先比较
DR
优先级,优先级高者成为DR
,次高成为BDR
- 如果优先级相等,则
Router-ID
高的成为DR
,次高的成为BDR
- 如果一台路由器的
DR
优先级为0
,则不参与选举
需要注意的是,DR
是在某个广播或者NBMA
网段内进行选举的,是针对路由器的接口而言的。某台路由器在一个接口上可能是DR
,在另一个接口上有可能是BDR
或DR Other
。
若DR、BDR
已选举完成,人为修改任何一台路由器的DR
优先级值为最大,也不会抢占成为新的DR
或BDR
,即OSPF
的DR/BDR
选举是非抢占的
实验目的
- 理解
OSPF
在哪种网络类型中会选举DR/BDR
- 掌握
OSPF DR/BDR
的选举规则 - 掌握如何更改设备接口上的
DR
优先级 - 理解
OSPF DR/BDR
选举的非抢占性
实验拓扑
实验步骤
-
按照如图所示进行基本配置
R1: <Huawei>sys [Huawei]undo info-center en [Huawei]sysname R1 [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ip address 172.16.1.1 24 [R1-GigabitEthernet0/0/0]int loopback 0 [R1-LoopBack0]ip address 1.1.1.1 32 R2: <Huawei>sys [Huawei]undo info-center en [Huawei]sysname R2 [R2]int g0/0/0 [R2-GigabitEthernet0/0/0]ip address 172.16.1.2 24 [R2-GigabitEthernet0/0/0]int loopback 0 [R2-LoopBack0]ip address 2.2.2.2 32 R3: <Huawei>sys [Huawei]undo info-center en [Huawei]sysname R3 [R3]int g0/0/0 [R3-GigabitEthernet0/0/0]ip address 172.16.1.3 24 [R3-GigabitEthernet0/0/0]int loopback 0 [R3-LoopBack0]ip address 3.3.3.3 32 R4: <Huawei>sys [Huawei]undo info-center en [Huawei]sysname R4 [R4]int g0/0/0 [R4-GigabitEthernet0/0/0]ip address 172.16.1.4 24 [R4-GigabitEthernet0/0/0]int loopback 0 [R4-LoopBack0]ip address 4.4.4.4 32
-
在四台路由器上执行基础
OSPF
网络配置,并将环回地址作为OSPF
私有Router-ID
,都运行在区域0
内R1: [R1]ospf router-id 1.1.1.1 [R1-ospf-1]area 0 [R1-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 <R1>reset ospf process //需要重启OSPF才会重新选举Router-ID R2: [R2]ospf router-id 2.2.2.2 [R2-ospf-1]area 0 [R2-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 <R2>reset ospf process R3: [R3]ospf router-id 3.3.3.3 [R3-ospf-1]area 0 [R3-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 <R3>reset ospf process R4: [R4]ospf router-id 4.4.4.4 [R4-ospf-1]area 0 [R4-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255 <R4>reset ospf process
查看
OSPF
邻居建立情况 -
查看默认情况下的
DR/BDR
状态原因是默认情况下,每台路由器上的
DR
优先级都为1
,此时通过Router-ID
的数值高低进行比较 -
在每台设备的相关接口上使用
ospf network-type p2mp
命令修改OSPF
的网络类型为点到多点R1: [R1]int g0/0/0 [R1-GigabitEthernet0/0/0]ospf network-type p2mp R2: [R2]int g0/0/0 [R2-GigabitEthernet0/0/0]ospf network-type p2mp R3: [R3]int g0/0/0 [R3-GigabitEthernet0/0/0]ospf network-type p2mp R4: [R4]int g0/0/0 [R4-GigabitEthernet0/0/0]ospf network-type p2mp
再次查看
R1
邻居情况说明在点到多点的网络类型中不选举
DR/BDR
,同样在点到点的网络中也是。 -
手动将
R1
设置为DR
,R2
为BDR
,并且阻止R4
参与DR
与BDR
的选举首先将刚刚设置的
OSPF
点到多点网络修改回广播型网络,接着修改R1
上g0/0/0
接口的优先级为100
,R2
为50
,R4
为0
,R3
保持默认不变R1: [R1-GigabitEthernet0/0/0]ospf network-type broadcast [R1-GigabitEthernet0/0/0]ospf dr-priority 100 R2: [R2-GigabitEthernet0/0/0]ospf network-type broadcast [R2-GigabitEthernet0/0/0]ospf dr-priority 50 R3: [R3-GigabitEthernet0/0/0]ospf network-type broadcast R4: [R4-GigabitEthernet0/0/0]ospf network-type broadcast [R4-GigabitEthernet0/0/0]ospf dr-priority 0
利用
reset ospf process
命令重启各路由器后再次查看DR/BDR
情况
本实验取自华为公司《HCNA网络技术实验指南》,此书对于新手学习计算机网络协议以及熟悉eNSP操作十分友好,强烈推荐!!!