吃透 OSPF 路由计算:区域内 / 区域间 / 外部路由 + 1/2/3/4/5 类 LSA 全网详解
一、先搞懂:OSPF 路由计算三大场景
OSPF 把路由严格分成三类,计算逻辑、优先级、防环机制完全不同:
区域内路由(Intra Area):1/2 类 LSA 计算,优先级最高
区域间路由(Inter Area):3 类 LSA 计算,类似距离矢量
外部路由(ASE):4/5 类 LSA 计算,引入域外路由
整体选路优先级:
区域内 (1/2 类) > 区域 0 的 3 类 > 非骨干 3 类 > 外部 Type1 > 外部 Type2
二、核心基石:1/2/3/4/5 类 LSA 全解
LSA 是 OSPF 的 “信息载体”,不同 LSA 管不同事,谁产生、在哪泛洪、描述什么,必须死记。
1️⃣ Type 1 路由器 LSA(Router LSA)
产生者:每台 OSPF 路由器都会产生
泛洪范围:仅本区域,不能跨区域
作用:描述路由器自身直连链路拓扑 + 直连网段
关键字段:
Link Type:P2P/TransNet/StubNet/Virtual
Link ID:邻居 / 网段 / 伪节点标识
Data:接口 IP / 掩码
Metric:链路开销
Flag 位:
B=1 → 是 ABR
E=1 → 是 ASBR
V=1 → 存在虚链路

2️⃣ Type 2 网络 LSA(Network LSA)
产生者:MA 网络(广播 / NBMA)的DR
泛洪范围:仅本区域
作用:描述广播链路上的伪节点,列出所有与 DR 邻接的路由器
特点:
LS ID = DR 接口 IP(伪节点 Router ID) 伪节点到路由器开销为 0,路由器到伪节点带实际开销 同时描述拓扑 + 叶子网段 
3️⃣ Type 3 网络汇总 LSA(Summary LSA)
产生者:ABR(区域边界路由器)
泛洪范围:跨区域传递(骨干⇋非骨干)
作用:把区域内路由转换成区域间路由,只带路由信息,不带拓扑
计算规则:
开销 = 本地到 ABR 开销 + ABR 通告的开销
下一跳 = 本地到 ABR 的下一跳
防环:ABR 不会把 3 类 LSA 回注到源区域(水平分割)

4️⃣ Type 4 ASBR 汇总 LSA(ASBR Summary)
产生者:ASBR 所在区域的ABR
泛洪范围:整个 OSPF 域(除特殊区域)
作用:告诉其他区域路由器如何到达 ASBR
特点:LS ID = ASBR 的 Router ID

5️⃣ Type 5 AS 外部 LSA(AS External)
产生者:ASBR(自治系统边界路由器)
泛洪范围:整个 OSPF 域(Stub/Totally Stub/NSSA 除外)
作用:描述OSPF 域外路由(静态、BGP、其他 IGP 重分布)
关键参数:
E Type 1:总开销 = 内部开销 + 引入开销
E Type 2:仅看引入开销,忽略内部开销(默认)
FA 地址:优化外部路由转发,避免次优路径

三、场景 1:区域内路由计算(1+2 类 LSA)
1. 计算依据
点到点网络:只用1 类 LSA
广播 / NBMA 网络:1 类 + 2 类 LSA配合
纯末梢网段:1 类 LSA 的 StubType 描述
2. 计算流程
路由器用 LSDB 构建有向拓扑图
以自己为根,运行SPF 算法生成最短路径树
把 Stub 网段(叶子)挂到树上,生成区域内路由
3. 关键特点
纯链路状态算法,天生无环
拓扑先算,网段后加
开销累加接口 Cost(100M=1,1G=1,10M=10)
四、场景 2:区域间路由计算(3 类 LSA)
1. 核心逻辑
OSPF 区域间不传递拓扑,只传递路由,行为像距离矢量协议。
2. 计算公式
总开销 = 本机到 ABR 的开销 + ABR 到目标网段的开销
下一跳 = 本机到 ABR 的下一跳
3. ABR 与路由汇总
汇总只能在 ABR 做
只能汇总ABR 直连区域的路由
华为设备:汇总路由开销取明细最大 Cost
全部明细失效,汇总路由才消失
4. 防环机制(必背)
区域 0 为骨干,非骨干必须挂靠区域 0
ABR 不把 3 类 LSA 回注源区域
1 类路由优先于 3 类
区域 0 的 3 类优先于非骨干 3 类
ABR 仅在区域 0 无邻居时,才用非骨干 3 类
五、场景 3:外部路由计算(4+5 类 LSA)
1. 适用场景
把 OSPF 域外的路由引入域内:
静态路由
BGP 路由
其他厂商设备直连网段
2. 必备 LSA
5 类 LSA:外部路由本身
4 类 LSA:告诉非 ASBR 区域,怎么找 ASBR
3. 两种外部类型
Type 1(E1)
总开销 = 内部到 ASBR 开销 + 引入开销
适合需要精确选路的场景
优先级高于 E2
Type 2(E2,默认)
总开销 = 仅引入开销
内部路径不参与计算
适合简单分流、管理优先的场景
4. 选路规则
E1:总开销小优先
E2:引入开销小优先;相同则比较到 ASBR 的内部开销
同值可负载分担
六、易混点一网打尽
MA 网络掩码必须一致
掩码不同会导致路由表错误、下一跳异常、Ping 不通。
2. DD 报文 MTU 检测
华为 OSPFv2 默认不检测 MTU;开启ospf mtu-enable后,MTU 不一致会卡在 Exstart/Exchange。
3. LSA 序列号
线性序列号,从 0x80000001 开始,到 0x7FFFFFFF 后刷新,不会循环。
4. 虚链路(Vlink)
属于区域 0的逻辑链路
只能穿越1 个非骨干区域
用于修复不连续的区域 0
有环路风险,尽量不用
七、一张表总结 OSPF LSA 核心

八、结尾总结
OSPF 路由计算的本质,就是三类路由 + 五类 LSA的配合:
区域内靠1+2 类 LSA + SPF,稳、无环、精准
区域间靠3 类 LSA,简化拓扑、方便扩展
外部路由靠4+5 类 LSA,连接外网、灵活引入
只要把 LSA 的产生者、泛洪范围、计算规则记牢,OSPF 故障排查、选路优化、网络设计都会迎刃而解。