news 2026/6/10 14:04:55

OSPF的DR/BDR是怎么选出来的?抓包实战带你看清选举全过程与Router ID的作用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
OSPF的DR/BDR是怎么选出来的?抓包实战带你看清选举全过程与Router ID的作用

在复杂的网络世界中,如何让成百上千台设备自动学习到通往所有网段的最佳路径?这离不开动态路由协议这位幕后指挥官。而OSPF作为其中应用最广泛的内网路由之王,以其快速收敛、无环计算等优点备受青睐。

在之前ADVPN的Full-Mesh组网案例中(ADVPN:Full-Mesh模型组网实验),我们就介绍过OSPF的简单配置。但是,我们还没有专门介绍过OSPF的配置,今天,我们就通过在HCL模拟器上搭建一个多区域网络,亲手配置OSPF,揭开其邻居建立、DR选举、路由传递的神秘面纱,看它们如何默契协作,实现网络的天下大同。

实验组网如下所示,所有设备均运行OSPF协议,路由器使用MSR36,交换机使用S6850,不同设备之间划分为不同区域,实现将整个自治系统划分为3个区域。

这个场景可以模拟一般的企业场景,S6850作为核心交换机,可能存在较多的VLAN接口虚地址,并作为对应网段的网关;而MSR36作为区域边界路由器ABR,用于转发区域之间的路由。

首先,我们完成基础网络的接口IP地址配置。

RT1

#interface LoopBack0 ip address 10.1.1.1 255.255.255.255#interface GigabitEthernet0/0 ip address 10.12.1.1 255.255.255.0#interface GigabitEthernet0/1 ip address 10.13.1.1 255.255.255.0

RT2

#interface LoopBack0 ip address 10.2.2.2 255.255.255.255#interface GigabitEthernet0/0 ip address 10.12.1.2 255.255.255.0#interface GigabitEthernet0/1 ip address 10.24.1.2 255.255.255.0

SW3

#interface LoopBack0 ip address 10.3.3.3 255.255.255.255#interface Vlan-interface1 ip address 10.13.1.3 255.255.255.0#interface Vlan-interface2 ip address 10.2.1.1 255.255.255.0#interface Vlan-interface3 ip address 10.3.1.1 255.255.255.0#interface Vlan-interface4 ip address 10.4.1.1 255.255.255.0#interface Vlan-interface5 ip address 10.5.1.1 255.255.255.0#interface GigabitEthernet1/0/1 port link-mode bridge port link-type trunk port trunk permit vlan all

SW4

#interface LoopBack0 ip address 10.4.4.4 255.255.255.255#interface Vlan-interface1 ip address 10.24.1.4 255.255.255.0#interface Vlan-interface6 ip address 10.6.1.1 255.255.255.0#interface Vlan-interface7 ip address 10.7.1.1 255.255.255.0#interface Vlan-interface8 ip address 10.8.1.1 255.255.255.0#interface Vlan-interface9 ip address 10.9.1.1 255.255.255.0#interface GigabitEthernet1/0/1 port link-mode bridge port link-type trunk port trunk permit vlan all

接下来,我们开始配置OSPF,也很简单,只要指定OSPF的路由器ID,再创建对应的区域,最后使用network命令将路由宣告出去就可以了。

首先,介绍一下路由器ID(Router ID),路由器ID用来在一个自治系统中唯一地标识一台路由器,一台路由器如果要运行OSPF协议,就必须存在路由器ID。路由器ID一般有三种获取方式:手工指定、自动获取或者使用全局路由器ID。

我们先用RT1演示一下全局路由器ID的用法,也就是在系统视图下使用router id命令进行配置。

# router id 10.1.1.1#ospf 1 area 0.0.0.0 network 10.12.1.0 0.0.0.255 area 0.0.0.1 network 10.13.1.0 0.0.0.255

可以看到,现在RT1的OSPF进程的路由器ID就是我们配置的全局Router ID 10.1.1.1了。

然后,我们用RT2介绍一下手工指定路由器ID的用法,也就是在创建OSPF进程时,后面跟着使用router-id参数指定路由器ID。

#ospf 1 router-id 10.2.2.2 area 0.0.0.0 network 10.12.1.0 0.0.0.255 area 0.0.0.1 network 10.24.1.0 0.0.0.255

可以看到,现在RT2的OSPF进程的路由器ID就是我们手工指定的Router ID 10.2.2.2了。

同时,可以看到RT1和RT2之间的OSPF邻居关系也建立成功了,同时RT选举成了DR(Designated Router,指定路由器)角色。DR的主要功能之一就是生成2类LSA(Network LSA),描述本网段所有路由器的链路状态,在其始发的区域内传播。

与此同时,RT1也被选举成了BDR(Backup Designated Router,备份指定路由器)角色。

DR、BDR是由同一网段中所有的路由器根据路由器优先级和Router ID通过Hello报文选举出来的。默认情况下,所有路由器的优先级都是1,那接下来就是比较Router ID了,因为RT2的Router ID大于RT1,于是RT2选举成了DR,RT选举成了BDR。当然,当DR失效的时候,BDR就会成为新的DR。

从报文交互来看,当RT2的OSPF进程启动之后,立马响应RT1的hello报文,并进入协商过程。

同时,RT1和RT2也是ABR(Area Border Router,区域边界路由器),生成3类LSA(Network Summary LSA),描述区域内网段的路由(10.24.1.0和10.13.1.0/24),并通告给其他区域。

从RT2上查看路由表,可以发现,现在RT2上已经有到RT1下联网段的路由了,路由协议显示为O_INTER,表示为OSPF自制系统的内部路由,优先级为10。

接下来,我们试一下SW3的自动获取Router ID,其实也就是不通过在系统视图下或进程中配置Router ID,直接进行配置。

#ospf 1 area 0.0.0.1 network 10.2.1.0 0.0.0.255 network 10.3.1.0 0.0.0.255 network 10.4.1.0 0.0.0.255 network 10.5.1.0 0.0.0.255 network 10.13.1.0 0.0.0.255

可以看到,SW3自动获取的Router ID就是10.3.3.3,这是因为,OSPF进程启动时,将选取第一个运行该进程的接口的主IPv4地址作为Router ID,这也是为什么我们配置Loopback接口的原因,因为如果存在配置IP地址的Loopback接口,则选择Loopback接口地址中最大的作为Router ID;而如果没有配置IP地址的Loopback接口,则从其他接口的IP地址中,不考虑接口的up/down状态,选择一个最大的IP地址作为Router ID。

还有最后的一台SW4,我们用手工指定路由器ID的方法,配置一下。

#ospf 1 router-id 10.4.4.4 area 0.0.0.1 network 10.6.1.0 0.0.0.255 network 10.7.1.0 0.0.0.255 network 10.8.1.0 0.0.0.255 network 10.9.1.0 0.0.0.255 network 10.24.1.0 0.0.0.255

如果在创建OSPF进程的时候没有指定Router ID,则缺省使用全局Router ID。建议用户在创建OSPF进程的时候手工指定Router ID,或者选择自动获取Router ID。

在SW4上查看OSPF路由,可以看到其他设备宣告的所有路由都学习到了。

Cost就是到达目的地址网段的开销,本地通告的路由开销为1,到RT2和RT1互联网段的开销为2,到RT1和SW3互联网段的开销为3,到SW3网段的开销为4。按照路由类型来看,本地网段的路由类型为Stub,本地互联网段的路由类型为Transit,其余网段的路由类型均为Inter。而发布路由器则只有本设备和RT2,看不到其他设备。

同样的,我们看一下RT1的OSPF信息,可以看到,由于RT1的Router ID全场最小,所以在两个邻居关系中,角色都是BDR。

而RT2则由于Router ID大小居中,则既是DR角色,又是BDR角色。

不过,在创建OSPF进程的时候,无论使用哪种方式指定Router ID,都必须保证自治系统中任意两台路由器的Router ID都不相同,通常的做法是将路由器的ID配置为与该路由器某个接口的IP地址一致即可。

通过这次亲手实践,我们不仅学会了OSPF的基础配置命令,更重要的是深刻理解了其背后的工作机制。从Router ID的指定,到邻居建立与DR选举,再到LSA的传播与路由计算,OSPF展现了一个高效、自洽的分布式系统的魅力。理解它,是迈向高级网络工程师的必经之路。

你在配置OSPF时还遇到过哪些有趣的现象或坑呢?欢迎在评论区分享!

***推荐阅读***

无需公网IPv4!手把手教你配置基于IPv6的WireGuard安全隧道

基于IPv6配置openVPN实战:告别双栈难题,一步打通IPv6隧道!

openVPN进阶技巧:如何实现从服务端反向访问客户端内网?

告别命令行复杂的证书管理!可视化OpenVPN证书管理系统实战,一键发证、过期提醒全搞定

OpenVPN管理竟能如此简单?实时监控、固定IP、强制下线,运维效率翻倍

揭秘运营商级域名策略路由:用dnsmasq与ipset实现同一IP三条不同网络路径的流量调度

服务器端口不对外开放怎么办?用SSH“秒建”加密隧道,安全访问内部服务

RDP授权119天不够用?给你的Windows Server来个“永久”授权

从不可用到10分钟,再到10秒!我优化了AI手机操作,实现流畅运行

256台H100服务器的RoCEv2无损与全互联算力网络建设方案

256台H100服务器算力中心的带外管理网络建设方案

2048卡H100算力中心100G无阻塞存储网建设方案

2048卡H100算力中心400G:380G无阻塞业务网建设方案

2048卡H100算力中心HPE Alletra 4140存储集群部署手册

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/9 23:39:15

你还在用Excel排号?Open-AutoGLM让校园服务预约效率提升300%!

第一章:你还在用Excel排号?Open-AutoGLM让校园服务预约效率提升300%!告别手动排号,自动化预约成为现实 在高校中,学生事务办理、实验室使用、心理咨询等服务长期依赖Excel表格进行人工预约管理。这种方式不仅容易出现重…

作者头像 李华
网站建设 2026/6/10 9:02:23

【每日算法】LeetCode238. 除自身以外数组的乘积

对前端开发者而言,学习算法绝非为了“炫技”。它是你从“页面构建者”迈向“复杂系统设计者”的关键阶梯。它将你的编码能力从“实现功能”提升到“设计优雅、高效解决方案”的层面。从现在开始,每天投入一小段时间,结合前端场景去理解和练习…

作者头像 李华
网站建设 2026/6/10 11:18:26

【紧急通知】Open-AutoGLM全国服务网点锐减:如何在48小时内成功预约?

第一章:Open-AutoGLM 维修服务预约Open-AutoGLM 是一款基于大语言模型驱动的智能汽车维修服务平台,专为车主提供高效、精准的维修预约服务。系统通过自然语言理解技术解析用户需求,自动匹配最近的维修站点并完成预约流程。服务接入方式 平台支…

作者头像 李华
网站建设 2026/6/10 15:42:30

如何在72小时内完成Open-AutoGLM对接上线?一线工程师亲述避坑指南

第一章:Open-AutoGLM美甲服务预约项目概述Open-AutoGLM 是一个基于大语言模型驱动的智能美甲服务预约系统,旨在通过自然语言交互实现高效、个性化的用户服务体验。系统融合了对话理解、意图识别与自动化排程技术,使用户可通过语音或文本方式完…

作者头像 李华
网站建设 2026/6/10 12:22:07

【独家揭秘】头部娱乐集团为何选择Open-AutoGLM作为核心预订引擎?

第一章:Open-AutoGLM KTV 预订引擎的崛起背景随着智能服务与自然语言处理技术的深度融合,传统娱乐行业的数字化转型迎来了关键突破。KTV 作为大众休闲消费的重要场景,长期受限于人工预订效率低、系统响应慢、用户体验割裂等问题。Open-AutoGL…

作者头像 李华
网站建设 2026/6/10 15:39:44

FCKEditor支持Word图片转存保留原尺寸和分辨率

吉林码农的"文档导入插件大冒险":从FCKEditor到全能粘贴王的逆袭之路 第一章:客户爸爸的"核弹级"需求 "老王啊,我们新闻编辑器要加个功能,能直接导入Word/Excel/PPT/PDF,还要保留所有样式和公…

作者头像 李华