一、Cisco(OSPF DR选举机制深度实验:从原理到配置的完整指南)251202

一、使用的软件

Cisco Packet Tracer 8.0

二、实验名称

OSPF DR/BDR选举与控制实验

三、实验设备

路由器:

五台 2911 Router(R1、R2、R3、R4、R5)

交换机:

一台2960-24T 交换机

四、实验要求

(注意:交换机为二层交换机,仅作为数据转发,无需配置)

1、配置5台路由器IP ;

2、网段为10.19.0.0/24;

3、标识各路由器的Router-ID;

4、通过更改R3接口优先级,把当前DR设置给R3(Router-ID:3.3.3.3);

5、通过更改R2接口优先级以及路由器的id标识,由2.2.2.2修改为6.6.6.6,将当前DR设置给R2。

五、端口连接概况

R1设备的 GigabitEthernet0/1 接口连接 2960-24T 交换机的 FastEthernet 0/1接口;

R2设备的 GigabitEthernet0/1 接口连接 2960-24T 交换机的 FastEthernet 0/2接口;

R3设备的 GigabitEthernet0/1 接口连接 2960-24T 交换机的 FastEthernet 0/3接口;

R4设备的 GigabitEthernet0/1 接口连接 2960-24T 交换机的 FastEthernet 0/4接口;

R5设备的 GigabitEthernet0/1 接口连接 2960-24T 交换机的 FastEthernet 0/5接口。

六、实验拓扑图

(各设备接口连接见 "端口连接概况"):

七、实验配置

(注意:保存配置用write memory)

R1:

Router>enable # 进入特权模式

Router#configure terminal # 进入全局配置模式

Router(config)#hostname R1 # 设置设备名称为R1

R1(config)#interface gigabitEthernet 0/1 # 进入接口

R1(config-if)#ip address 10.19.0.1 255.255.255.0 # 配置接口IP地址

R1(config-if)#no shutdown # 启用接口

R1(config-if)#exit # 退出接口配置模式

R1(config)#router ospf 1 # 启用OSPF进程1

R1(config-router)#router-id 1.1.1.1 # 设置路由器ID

R1(config-router)#network 10.19.0.0 0.0.0.255 area 0 # 宣告网络到区域0

R1(config-router)#exit # 退出OSPF配置模式

R1(config)#exit # 退出全局配置模式

R1#write memory # 保存配置

R2:

Router>enable # 进入特权模式

Router#configure terminal # 进入全局配置模式

Router(config)#hostname R2 # 设置设备名称为R2

R2(config)#interface gigabitEthernet 0/1 # 进入接口

R2(config-if)#ip address 10.19.0.2 255.255.255.0 # 配置接口IP地址

R2(config-if)#no shutdown # 启用接口

R2(config-if)#exit # 退出接口配置模式

R2(config)#router ospf 1 # 启用OSPF进程1

R2(config-router)#router-id 2.2.2.2 # 设置路由器ID

R2(config-router)#network 10.19.0.0 0.0.0.255 area 0 # 宣告网络到区域0

R2(config-router)#exit # 退出OSPF配置模式

R2(config)#exit # 退出全局配置模式

R2#write memory # 保存配置

R3:

Router>enable # 进入特权模式

Router#configure terminal # 进入全局配置模式

Router(config)#hostname R3 # 设置设备名称为R3

R3(config)#interface gigabitEthernet 0/1 # 进入接口

R3(config-if)#ip address 10.19.0.3 255.255.255.0 # 配置接口IP地址

R3(config-if)#no shutdown # 启用接口

R3(config-if)#exit # 退出接口配置模式

R3(config)#router ospf 1 # 启用OSPF进程1

R3(config-router)#router-id 3.3.3.3 # 设置路由器ID

R3(config-router)#network 10.19.0.0 0.0.0.255 area 0 # 宣告网络到区域0

R3(config-router)#exit # 退出OSPF配置模式

R3(config)#exit # 退出全局配置模式

R3#write memory # 保存配置

R4:

Router>enable # 进入特权模式

Router#configure terminal # 进入全局配置模式

Router(config)#hostname R4 # 设置设备名称为R4

R4(config)#interface gigabitEthernet 0/1 # 进入接口

R4(config-if)#ip address 10.19.0.4 255.255.255.0 # 配置接口IP地址

R4(config-if)#no shutdown # 启用接口

R4(config-if)#exit # 退出接口配置模式

R4(config)#router ospf 1 # 启用OSPF进程1

R4(config-router)#router-id 4.4.4.4 # 设置路由器ID

R4(config-router)#network 10.19.0.0 0.0.0.255 area 0 # 宣告网络到区域0

R4(config-router)#exit # 退出OSPF配置模式

R4(config)#exit # 退出全局配置模式

R4#write memory # 保存配置

R5:

Router>enable # 进入特权模式

Router#configure terminal # 进入全局配置模式

Router(config)#hostname R5 # 设置设备名称为R5

R5(config)#interface gigabitEthernet 0/1 # 进入接口

R5(config-if)#ip address 10.19.0.5 255.255.255.0 # 配置接口IP地址

R5(config-if)#no shutdown # 启用接口

R5(config-if)#exit # 退出接口配置模式

R5(config)#router ospf 1 # 启用OSPF进程1

R5(config-router)#router-id 5.5.5.5 # 设置路由器ID

R5(config-router)#network 10.19.0.0 0.0.0.255 area 0 # 宣告网络到区域0

R5(config-router)#exit # 退出OSPF配置模式

R5(config)#exit # 退出全局配置模式

R5#write memory # 保存配置

# 通过更改R3接口的优先级为10,把当前DR设置给R3(router-id:3.3.3.3)(接口默认优先级为1,值越大越优先)

R3:

R3(config)#interface gigabitEthernet 0/1 # 进入接口
R3(config-if)#ip ospf priority 10 # 设置OSPF接口优先级为10(用于DR/BDR选举)

R3(config-if)#exit # 退出接口配置模式

R3(config)#exit # 退出全局配置模式

R3#clear ip ospf process # 重置OSPF进程(使优先级更改生效)
Reset ALL OSPF processes? [no]: yes # 确认重置所有OSPF进程

R3#write memory # 保存配置

# 通过更改R2接口的优先级为10,以及更改当前的Router-ID,把当前DR设置为R2(接口默认优先级为1,值越大越优先)

R2(config)#interface gigabitEthernet 0/1 # 进入接口配置模式
R2(config-if)#ip ospf priority 10 # 设置OSPF接口优先级为10

R2(config-if)#exit # 退出接口配置模式

R2(config)#router ospf 1 # 进入OSPF进程1配置模式
R2(config-router)#router-id 6.6.6.6 # 修改路由器Router-ID为6.6.6.6

R2(config-router)#end # 直接退回到特权模式

R2#clear ip ospf process # 重置OSPF进程(使优先级和路由器ID更改生效)
Reset ALL OSPF processes? [no]: yes # 确认重置所有OSPF进程

R2#write memory # 保存配置

八、实验结果

1、通过修改R3接口的优先级后,使用 show ip ospf neighbor 在各路由器上查看邻居路由器的DR选举状况。

R1:

R2:

R3:

R4:

R5:

2、通过修改R2接口的优先级与R3相同再修改R2的Router-ID为6.6.6.6,使DR选举为R2,使用 show ip ospf neighbor 在各路由器上查看邻居路由器的DR选举状况。

R1:

R2:

R3:

R4:

R5:

九、实验结论

1、DR选举机制验证成功:

通过调整接口优先级与路由器ID,可以控制OSPF在多接入网络中的DR选举结果。

2、优先级优先于Router-ID:

在DR选举中,接口优先级最高的路由器优先成为DR,优先级相同时才比较Router-ID。

3、Router-ID的作用:

当优先级相同时,Router-ID较大的路由器成为DR。

4、配置生效方式:

修改优先级或Router-ID后,需使用clear ip ospf process命令重启OSPF进程,才能使新配置生效,无需重启设备。

5、实验结果符合预期:

第一阶段:

R3优先级提升至10,成为DR。

第二阶段(模拟优先级相同情况,实际上可直接修改R2路由接口优先级为最大):

R2优先级提升至10,且Router-ID改为6.6.6.6(大于3.3.3.3),成功取代R3成为DR。

十、实验总结

DR选举机制(同网段内):

(1)默认情况:

1、 默认优先级为1,优先级为0表示不参与选举,值越大越优先。

(2)选举顺序:

1、优先级最高者成为DR(最高优先级无视Router-ID和接口IP地址);

2、优先级相同,则比较Router-ID,越大越优先(最大Router-ID无视

接口IP地址数值);

3、优先级相同,若未配置Router-ID,则比较接口IP地址(数值越大越优先)。

(3)重新选举DR:

使用clear ip ospf process命令:

可重启OSPF进程使新配置生效,无需重启设备,避免业务中断。

十一、技术总结:
优点:
1、减少网络泛洪:

DR/BDR机制有效减少了OSPF在广播网络中的LSA泛洪,优化了网络性能。

2、可控性强:

通过优先级和Router-ID可灵活控制DR选举,适应不同网络设计需求。

3、动态适应:

支持动态重新选举,适应网络拓扑变化。

实际使用场景与注意事项:
1、适用场景:

多台路由器连接在同一广播域(如通过交换机互联);

需要指定某台性能较好或位置较中心的路由器作为DR

2、注意事项:

(1)DR选举仅在接口启用OSPF时进行,后续除非重启进程或拓扑变化,否则不会重新选举;

(2)优先级设置为0可使路由器不参与选举,适用于纯客户端场景;

(3)修改Router-ID后必须重启OSPF进程才能生效;

(4)在真实网络 中,不建议频繁修改DR ,可能导致路由震荡;

(5)若DR故障BDR会自动接替无需手动干预

(6)建议在规划阶段就确定好DR/BDR,避免后期频繁调整。

3、是否过时?
并不过时:

DR/BDR机制仍是OSPF在广播网络中的标准行为,尤其在传统企业网络和实验室环境中广泛应用。

现代替代方案:

在大型或复杂网络中,可采用点对点链路、OSPFv3、或使用SDN/Overlay技术减少对DR的依赖。

4、何时使用?

当网络中存在多台路由器共享同一广播域时;

当需要控制LSA泛洪路径、优化收敛性能时;

在模拟实验或教学环境中,用于理解OSPF邻居关系与选举机制。

相关推荐
YongCheng_Liang1 小时前
从零开始:Nginx 服务器安装、配置与实战使用完全指南
运维·服务器·nginx
码农101号1 小时前
Linux - redis下载以及基础使用
linux·运维·redis
闲人编程1 小时前
TCP/UDP网络编程实战
服务器·网络·tcp/ip·udp·客户端·codecapsule
星释1 小时前
Rust 练习册 103:维吉尼亚密码与安全通信
网络·安全·rust
深圳佛手1 小时前
Consul热更新的原理与实现
java·linux·网络
linux修理工1 小时前
vagrant ansible 配置
linux·运维·服务器·数据库·centos
绯雨千叶1 小时前
修改Docker镜像和容器的默认存储目录(迁移原有数据)
运维·docker·容器
DX_水位流量监测1 小时前
管网液位计的技术特性与工程应用解析
大数据·网络·人工智能·信息可视化·架构
RisunJan1 小时前
Linux命令-free命令(查看系统内存(RAM)和交换空间(Swap)使用情况)
linux·运维·服务器