一、NBMA和P2MP
****NBMA:****非广播多路访问(NBMA)网络是OSPF协议中为适应特定广域网环境而设计的一种网络类型,主要应用于帧中继、ATM、X.25等不支持广播和组播的网络。其核心特点如下:
- 连接方式
NBMA网络允许多台路由器连接到同一个逻辑网络段,形成多点可达的拓扑结构,但各设备之间通过虚电路(VC) 实现点对点通信,而非真正的广播介质 。
这种网络要求在逻辑上实现全连通(Full Mesh),即任意两台路由器之间必须有直接的虚电路连接,否则需采用P2MP等替代方案 。
- DR/BDR选举
需要选举DR和BDR。
尽管NBMA网络不具备广播能力,但OSPF仍将其视为多路访问网络,因此必须选举指定路由器(DR) 和备份指定路由器(BDR),以减少邻接关系数量、优化LSA泛洪效率 。
选举依据接口优先级和Router ID,优先级最高者为DR,次高者为BDR;优先级为0则不参与选举 。
为确保中心节点(如总部路由器)当选DR,通常会手动设置较高优先级 。
- 邻居发现
必须手动配置邻居。
由于网络不支持组播,OSPF无法通过组播地址 224.0.0.5 自动发现邻居
- 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 类似。
接口之间是点到点逻辑,没有广播域开销。
二、实验目的及步骤
实验目的:
-
控制OSPF DR的选举
-
修改OSPF的网络类型
实验步骤:
-
帧中继设备的配置
-
设备重命名以及IP地址的配置
-
运行OSPF
-
实验调试
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 状态信息
- 基础信息
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 字节
- DR/BDR 选举
Priority(优先级):1(默认值,范围 0--255)
DR(指定路由器):10.1.1.1(本路由器自身)
BDR(备份指定路由器):0.0.0.0(未选举出 BDR,说明当前网段仅本台路由器参与选举,或对端未完成选举流程)
- 定时器配置(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 状态信息:
- 基础信息
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)
- 核心特征:无 DR/BDR 选举
输出中无 Priority、DR、BDR 相关字段,这是 P2MP 网络类型的标志性特征:
不进行 DR/BDR 选举
所有路由器之间直接建立 Full 邻接关系
避免了广播 / 非广播网络中的选举开销与复杂度
- 定时器配置
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 部署、避免选举的场景 |