OSPF的网络类型:NBMA和P2MP

一、NBMA和P2MP

****NBMA:****‌非广播多路访问(NBMA)网络‌是OSPF协议中为适应特定广域网环境而设计的一种网络类型,主要应用于帧中继、ATM、X.25等不支持广播和组播的网络。其核心特点如下:

  1. ‌连接方式‌

NBMA网络允许多台路由器连接到同一个逻辑网络段,形成‌多点可达‌的拓扑结构,但各设备之间通过‌虚电路(VC)‌ 实现点对点通信,而非真正的广播介质 。

这种网络要求在逻辑上实现‌全连通(Full Mesh)‌,即任意两台路由器之间必须有直接的虚电路连接,否则需采用P2MP等替代方案 。

  1. ‌DR/BDR选举‌

‌需要选举DR和BDR‌。

尽管NBMA网络不具备广播能力,但OSPF仍将其视为多路访问网络,因此必须选举‌指定路由器(DR)‌ 和‌备份指定路由器(BDR)‌,以减少邻接关系数量、优化LSA泛洪效率 。

选举依据接口优先级和Router ID,优先级最高者为DR,次高者为BDR;优先级为0则不参与选举 。

为确保中心节点(如总部路由器)当选DR,通常会手动设置较高优先级 。

  1. ‌邻居发现‌

‌必须手动配置邻居‌。

由于网络不支持组播,OSPF无法通过组播地址 ‌224.0.0.5‌ 自动发现邻居

  1. ‌LSA泛洪‌

LSA(链路状态通告)的泛洪由‌DR统一管理‌。

当网络拓扑发生变化时,所有路由器将更新信息发送给DR和BDR(使用组播地址 ‌224.0.0.6‌),再由DR向所有其他路由器(DROther)泛洪更新(使用 ‌224.0.0.5‌) 。

DROther之间‌不建立邻接关系‌,仅与DR/BDR建立邻接,从而将邻接关系数量从O(n²)降至O(n),显著降低协议开销 。

5.链路开销(Cost)

由于NBMA网络多用于广域网,链路带宽通常较低,因此‌Cost值较高‌,影响最短路径计算 。

****P2MP:****点到多点(Point-to-Multipoint, P2MP)‌ 是OSPF协议中一种特殊的网络类型,主要用于解决‌非全连通的非广播网络‌(如帧中继、ATM)中的路由通信问题。它不是任何链路层协议的默认类型,必须通过‌手动配置‌将其他网络类型(通常是NBMA)强制更改为P2MP 。

1.无需全连通拓扑‌

与标准NBMA要求全互联不同,P2MP适用于‌星型或部分网状拓扑‌,允许某些远程节点之间没有直接虚电路连接。两台无法直连的路由器可通过中心节点中转实现路由交换 。

2.‌无DR/BDR选举‌

P2MP网络‌不选举指定路由器(DR)和备份指定路由器(BDR)‌,所有邻居之间均可建立完全邻接关系(Full Adjacency),简化了配置与管理 。

3.‌邻居自动发现(组播)‌

Hello报文以组播地址 ‌224.0.0.5‌ 发送,默认Hello间隔为30秒,Dead间隔为120秒。在支持组播的环境中,邻居可自动发现,‌无需手动配置neighbor命令‌ 。

若网络不支持组播,则需使用"P2MP非广播"变体并手动指定邻居。

4.‌路由学习方式‌

中心节点向所有远程节点发送路由更新,远程节点仅从中心节点学习路由,彼此之间不直接交换LSA。这种设计模拟了Hub-and-Spoke结构的行为逻辑 。

5.‌报文传输机制‌

Hello报文:‌组播‌(224.0.0.5)

DD、LSR、LSU、LSAck报文:‌单播‌发送

6.LSA 泛洪

每台路由器都和所有对端节点建立 Full 邻接。

LSU 报文直接发送给各个邻居,不需要 DR 统一转发。

因为没有广播,LSA 只能逐个发送到各个节点。

7.链路开销

开销根据接口带宽计算,和 P2P 类似。

接口之间是点到点逻辑,没有广播域开销。

二、实验目的及步骤

实验目的:

  1. 控制OSPF DR的选举

  2. 修改OSPF的网络类型

实验步骤:

  1. 帧中继设备的配置

  2. 设备重命名以及IP地址的配置

  3. 运行OSPF

  4. 实验调试

1).在R1上查看OSPF的邻接关系//

R1display ospf peer brief

2).查看R1的OSPF的接口状态//

R1display ospf interface s1/0/0

3).配置单播建立邻居

peer 10.1.1.2

4).配置R1为DR,不选择BDR

ospf dr-priority 0

5).在R1上查看OSPF的邻接关系//

display ospf peer brief

6).删除(3)(4)的配置,并配置网络类型

为P2MP并查看OSPF的邻居关系状态

三、实验拓扑

四、实验配置及调试分析

1.帧中继设备的配置

2.IP及OSPF配置

R1:

R1int s1/0/0

R1-Serial1/0/0link-protocol fr //二层封装协议为FR

R1-Serial1/0/0fr map ip 10.1.1.2 102 broadcast //去10.1.1.2打上102的标记然后广播

R1-Serial1/0/0fr map ip 10.1.1.3 103 broadcast

R1-Serial1/0/0ip add 10.1.1.1 24

R1int LoopBack 0

R1-LoopBack0ip add 1.1.1.1 24

R1ospf router-id 1.1.1.1

R1-ospf-1area 0

R1-ospf-1-area-0.0.0.0network 10.1.1.0 0.0.0.255

R1-ospf-1-area-0.0.0.0network 1.1.1.0 0.0.0.255

R2:

R2int s1/0/0

R2-Serial1/0/0link-protocol fr

R2-Serial1/0/0fr map ip 10.1.1.1 201 broadcast

R2-Serial1/0/0ip add 10.1.1.2 24

R2int LoopBack 0

R2-LoopBack0ip add 2.2.2.2 24

R2ospf router-id 2.2.2.2

R2-ospf-1area 0

R2-ospf-1-area-0.0.0.0network 10.1.1.0 0.0.0.255

R2-ospf-1-area-0.0.0.0network 2.2.2.0 0.0.0.255

R3:

R3int s1/0/0

R3-Serial1/0/0link-protocol fr

R3-Serial1/0/0fr map ip 10.1.1.1 301 broadcast

R3-Serial1/0/0ip add 10.1.1.3 24

R3int LoopBack 0

R3-LoopBack0ip add 3.3.3.3 24

R3ospf router-id 3.3.3.3

R3-ospf-1area 0

R3-ospf-1-area-0.0.0.0network 10.1.1.0 0.0.0.255

R3-ospf-1-area-0.0.0.0network 3.3.3.0 0.0.0.255

在R1上查看ospf的邻接状态

输出中无任何邻居条目,说明当前 R1 未建立任何 OSPF 邻居关系。

查看R1的OSPF的接口状态

这是路由器 Serial1/0/0 接口的 OSPF 状态信息

  1. 基础信息

OSPF 进程:进程 1,Router ID 1.1.1.1

接口 IP:10.1.1.1

接口类型:NBMA(Non-Broadcast Multi-Access,非广播多点接入)

接口状态:DR(Designated Router,指定路由器)

Cost(开销):48(由接口带宽计算得出)

MTU:1500 字节

  1. DR/BDR 选举

Priority(优先级):1(默认值,范围 0--255)

DR(指定路由器):10.1.1.1(本路由器自身)

BDR(备份指定路由器):0.0.0.0(未选举出 BDR,说明当前网段仅本台路由器参与选举,或对端未完成选举流程)

  1. 定时器配置(NBMA 特有)

Hello 间隔:30 秒(NBMA 网络默认值,区别于 Broadcast/P2P 的 10 秒)

Dead 间隔:120 秒(Hello 间隔的 4 倍,符合 OSPF 规范)

Poll 间隔:120 秒(NBMA 特有,用于向静默邻居发送 Hello 报文)

Retransmit 间隔:5 秒

Transmit Delay:1 秒

配置单播建立邻居

R1:

R1ospf

R1-ospf-1peer 10.1.1.2 //和10.1.1.2单播建立邻居

R1-ospf-1peer 10.1.1.3

R2:

R2ospf

R2-ospf-1peer 10.1.1.1

R3:

R3ospf

R3-ospf-1peer 10.1.1.1

配置R1为DR,不选择BDR

R2:

R2int s1/0/0

R2-Serial1/0/0ospf dr-priority 0

R3:

R3int s1/0/0

R3-Serial1/0/0ospf dr-priority 0

在R1上查看邻接关系

R1dis ospf peer brief

可以看到R2、R3都成了R1邻居

接下来将NBMA改为P2MP

将刚才建立的邻居删除

R1:

R1ospf

R1-ospf-1undo peer 10.1.1.2

R1-ospf-1undo peer 10.1.1.3

R2:

R2ospf

R2-ospf-1undo peer 10.1.1.1

R3:

R3ospf

R3-ospf-1undo peer 10.1.1.1

确认是否删除,再查看一次R1的邻接关系

R1dis ospf peer brief

可以看到输出中无任何邻居条目,说明当前 R1 未建立任何 OSPF 邻居关系。

接下来将网络的类型改为P2MP

R1:

R1int s1/0/0

R1-Serial1/0/0ospf network-type p2mp //将网络类型改成p2mp

R2:

R2int s1/0/0

R2-Serial1/0/0ospf network-type p2mp

R3:

R3int s1/0/0

R3-Serial1/0/0ospf network-type p2mp

查看OSPF的邻接关系

R1display ospf peer br

这是路由器 Serial1/0/0 接口的 OSPF 状态信息:

  1. 基础信息

OSPF 进程:进程 1,Router ID 1.1.1.1

接口 IP:10.1.1.1

接口类型:P2MP(Point-to-Multipoint,点到多点)

接口状态:P-2-P(点到点状态,体现 P2MP 无 DR/BDR 的特征)

Cost(开销):48(由接口带宽计算得出,通常对应低速串行链路)

MTU:1500 字节(标准以太网 MTU)

  1. 核心特征:无 DR/BDR 选举

输出中无 Priority、DR、BDR 相关字段,这是 P2MP 网络类型的标志性特征:

不进行 DR/BDR 选举

所有路由器之间直接建立 Full 邻接关系

避免了广播 / 非广播网络中的选举开销与复杂度

  1. 定时器配置

Hello 间隔:30 秒(P2MP 网络默认值,也可手动修改为 10 秒)

Dead 间隔:120 秒(Hello 间隔的 4 倍,符合 OSPF 规范)

Poll 间隔:120 秒(用于向长时间未响应的邻居发送 Hello 报文)

Retransmit 间隔:5 秒(LSU 报文重传间隔)

Transmit Delay:1 秒(LSA 传输延迟,用于计算老化时间)

查看R1、R2、R3的lsdb

三台路由器的 LSDB 条目完全一致,仅 R1 自身 LSA 序列号为 80000006(略高于其他设备的 80000005),说明 R1 刚更新过自身链路信息,全网 LSDB 已完成同步。

Age 字段:各 LSA 的老化时间(Age)均在 11~54 秒之间,属于正常范围,未达到最大老化时间(3600 秒)。

Len 字段:R1 的 LSA 长度为 72,其他为 60,与序列号更新对应,属于正常的 LSA 内容差异。

查看R1所有激活ospf的接口信息

接口一:LoopBack0(环回接口)

接口 IP:1.1.1.1

OSPF 网络类型:P2P(点到点)

说明:LoopBack 接口在 OSPF 中默认被视为 Type 1 (Router) LSA,且网络类型固定为 P2P,不进行 DR/BDR 选举。

Cost(开销):0

说明:环回口的 Cost 默认为 0,用于发布路由器 ID,确保在全网路由中可达。

MTU:1500

定时器:

Hello:10 秒

Dead:40 秒

其他:Poll/Retransmit/Transmit Delay 均为标准值。

接口二:Serial1/0/0(串行接口)

接口 IP:10.1.1.1

OSPF 网络类型:P2MP(点到多点)

核心特征:无 DR/BDR 选举,所有邻居直接建立 Full 邻接。

Cost(开销):48

计算逻辑:通常由链路带宽(如 64kbps 等低速链路)根据公式 Cost = 10^8 / 带宽 计算得出。

MTU:1500

定时器(P2MP 特有):

Hello:30 秒(P2MP 网络默认 Hello 间隔,继承自 NBMA 特性)

Dead:120 秒(Hello 的 4 倍)

Poll:120 秒

Retransmit:5 秒

Transmit Delay:1 秒

接口类型验证:

R1 上配置了两种接口:用于标识自身的 LoopBack0 (P2P) 和用于连接邻居的 Serial1/0/0 (P2MP)。

P2MP 网络状态:

接口 Type: P2MP 且状态为 P-2-P,确认 OSPF 已正确识别该接口为点到多点类型,且无需选举 DR/BDR。

结论

R1 的 OSPF 接口配置完整且规范。

LoopBack0:作为路由器标识,已正常宣告。

Serial1/0/0:已正确切换为 P2MP 模式,准备好与对端建立自动发现、无 DR 选举的邻接关系。

五、总结

|-----------|-----------------------------------|----------------------------|
| 对比项 | NBMA(Non-Broadcast Multi-Access) | P2MP(Point-to-Multipoint) |
| 网络本质 | 原生非广播多点接入(如帧中继、ATM) | 将非广播链路逻辑化为 "点到多点" |
| DR/BDR 选举 | ✅ 必须选举,和 Broadcast 一致 | ❌ 不选举,无 DR/BDR 概念 |
| 邻居发现 | ❌ 无法自动发现,必须手动配置 ospf peer x.x.x.x | ✅ 自动发现,通过组播 224.0.0.5 发现邻居 |
| Hello 间隔 | 默认 30 秒 | 默认 30 秒(可手动改为 10 秒) |
| 邻接关系 | 仅与 DR/BDR 建立 Full 邻接 | 与所有邻居直接建立 Full 邻接 |
| LSA 泛洪 | 由 DR 统一向组播泛洪,减少流量 | 逐个向所有邻居发送 LSU,无 DR 转发 |
| 配置复杂度 | 高,需手动指定邻居 | 低,自动发现,无需额外配置 |
| 适用场景 | 严格遵循 NBMA 原生特性的场景 | 希望简化 NBMA 部署、避免选举的场景 |

相关推荐
稳联技术老娜7 小时前
DeviceNet主站怎么连接西门子PLC,Profinet网关配置手册(那智机器人)
服务器·网络·数据库
志栋智能9 小时前
AI驱动无代码:降低巡检超自动化的门槛
大数据·运维·网络·人工智能·自动化
专业机床数据采集9 小时前
C# 精雕数控 数据采集 Demo|实时读取精雕机床坐标、主轴、负载、加工工时全量参数
网络·网络协议·tcp/ip·mes·精雕数控数据采集
AOwhisky9 小时前
Ceph系列第六期:Ceph 文件系统(CephFS)精讲
linux·运维·网络·笔记·ceph
我爱C编程9 小时前
基于ECC簇内分组密钥管理算法的无线传感器网络matlab性能仿真
网络·matlab·ecc·密钥管理·无线传感器网络·簇内分组
Sagittarius_A*11 小时前
H3CSE 高性能园区网:园区网安全体系详解
网络·计算机网络·安全·h3cse
安全检测中13 小时前
探讨一个OSPF中NSSA类型的问题
网络
luj_176813 小时前
R语言生态优势与学习曲线分析
c语言·开发语言·网络·经验分享·算法
库拉大叔14 小时前
GPT-5.5 新手快速上手与实战指南
网络·人工智能·gpt
AI科技星14 小时前
万有引力G与真空介电常数ε0全维度完整关系式汇编(基于v=c螺旋时空理论)
c语言·开发语言·前端·javascript·网络·汇编·electron