一、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邻居关系与选举机制。

相关推荐
七夜zippoe3 小时前
CANN Runtime任务描述序列化与持久化源码深度解码
大数据·运维·服务器·cann
盟接之桥3 小时前
盟接之桥说制造:引流品 × 利润品,全球电商平台高效产品组合策略(供讨论)
大数据·linux·服务器·网络·人工智能·制造
会员源码网3 小时前
理财源码开发:单语言深耕还是多语言融合?看完这篇不踩坑
网络·个人开发
米羊1214 小时前
已有安全措施确认(上)
大数据·网络
Fcy6484 小时前
Linux下 进程(一)(冯诺依曼体系、操作系统、进程基本概念与基本操作)
linux·运维·服务器·进程
袁袁袁袁满4 小时前
Linux怎么查看最新下载的文件
linux·运维·服务器
代码游侠5 小时前
学习笔记——设备树基础
linux·运维·开发语言·单片机·算法
Harvey9035 小时前
通过 Helm 部署 Nginx 应用的完整标准化步骤
linux·运维·nginx·k8s
ManThink Technology5 小时前
如何使用EBHelper 简化EdgeBus的代码编写?
java·前端·网络
珠海西格电力科技6 小时前
微电网能量平衡理论的实现条件在不同场景下有哪些差异?
运维·服务器·网络·人工智能·云计算·智慧城市