news 2026/5/21 8:04:42

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/5/18 14:29:46

为什么顶级政务部门都在悄悄部署Open-AutoGLM?(内部技术白皮书流出)

第一章:Open-AutoGLM在政务场景中的战略定位Open-AutoGLM作为新一代开源自动化生成语言模型,正逐步成为政务智能化转型的核心支撑技术。其在政策解读、公文生成、智能问答与跨部门协同等关键场景中展现出强大的适应性与扩展能力,为构建高效、…

作者头像 李华
网站建设 2026/5/20 19:48:02

公积金提取太慢?Open-AutoGLM智能引擎提速9倍,你试过了吗?

第一章:公积金提取太慢?Open-AutoGLM智能引擎提速9倍,你试过了吗?在传统政务系统中,公积金提取流程常因人工审核、多级审批和数据孤岛问题导致处理周期长达7天以上。Open-AutoGLM 是一款基于大模型自动化决策的智能引擎…

作者头像 李华
网站建设 2026/5/19 17:29:48

计算机毕业设计springboot基于微信小程序的校园招聘系统 基于微信小程序的校园招聘管理系统设计与实现 SpringBoot框架下微信小程序校园招聘系统开发与应用

计算机毕业设计springboot基于微信小程序的校园招聘系统t71ls9 (配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着数字化技术的飞速发展,校园招聘管理逐渐从传统的线…

作者头像 李华
网站建设 2026/5/20 21:14:29

揭秘Open-AutoGLM校园服务引擎:如何实现99.9%可用性的智能调度?

第一章:Open-AutoGLM校园服务引擎概述Open-AutoGLM 是一款专为高校场景设计的智能服务引擎,融合了大语言模型(LLM)能力与自动化流程控制机制,旨在提升校园管理效率、优化师生服务体验。该引擎基于 GLM 架构进行深度定制…

作者头像 李华
网站建设 2026/5/20 21:00:08

好写作AI:你的论文为什么越改越差?当心陷入“AI修改陷阱”

你有没有经历过这样的绝望循环?收到修改意见后,你让AI“让这段表述更学术”——它照做了。但接着,导师又说“理论深度不够”,你再次求助AI“加强理论深度”——它又生成一版。几轮下来,那段文字变得臃肿、矛盾&#xf…

作者头像 李华
网站建设 2026/5/20 20:07:38

家政O2O新蓝海:Open-AutoGLM智能调度系统的5大核心优势

第一章:Open-AutoGLM 家政服务下单Open-AutoGLM 是一个基于大语言模型的自动化任务调度系统,专为家政服务场景设计。它通过自然语言理解与意图识别,将用户请求自动转化为可执行的服务订单,并调度相应资源完成上门服务。服务请求解…

作者头像 李华