关键词:OSPF、Type5 LSA、AS-External、ASBR、外部路由、重分发、E1 E2
第61篇:Type5 AS-External LSA 的外部路由注入
一、引言
Type 5 AS-External LSA 是 OSPF 将外部路由(非 OSPF 来源的路由)引入 OSPF 域的核心机制。当 OSPF 路由器通过重分发(Redistribution)将静态路由、直连路由、BGP 路由或其他 IGP 路由引入 OSPF 时,这些路由被封装为 Type 5 LSA 并向整个 OSPF 域泛洪。
Type 5 LSA 由 ASBR(AS Boundary Router,自治系统边界路由器)产生,泛洪范围覆盖整个 OSPF 域(Stub 和 NSSA 区域除外)。理解 Type 5 LSA 的生成、传播和选路规则,是进行 OSPF 与外部路由协议对接的基础。
二、核心概念
2.1 ASBR 的角色
ASBR 是将外部路由引入 OSPF 域的路由器,其核心特征:
| 特征 | 说明 |
|---|---|
| 定义 | 执行重分发操作的路由器 |
| 产生 LSA | Type 5 AS-External LSA |
| 位置 | 可以是网络中的任何路由器(不一定在 AS 边界) |
| 发现机制 | 通过 Type 4 ASBR-Summary LSA 通告位置 |
2.2 外部路由的两种类型
Type 5 LSA 将外部路由分为两种类型,影响 OSPF 内部的路径选择:
| 类型 | Cost 计算方式 | 适用场景 |
|---|---|---|
| Type 1 (E1) | 外部 Cost + 到达 ASBR 的内部 Cost | 需要考虑到达 ASBR 的距离 |
| Type 2 (E2) | 仅使用外部 Cost(默认) | 所有 ASBR 到达外部网络的代价相同 |
Type 1 vs Type 2 示例:
假设有两台 ASBR,都以相同的外部 Cost 10 引入同一条外部路由 172.16.0.0/16: - R1 到达 ASBR1 的内部 Cost 为 5 - R1 到达 ASBR2 的内部 Cost 为 20
| 类型 | R1 选择路径 | 总 Cost |
|---|---|---|
| E2(默认) | 随机选择(Cost 相同) | 10 |
| E1 | 通过 ASBR1 | 10 + 5 = 15 |
2.3 Type 5 LSA 的结构
Type 5 LSA 头部之后携带以下字段:
字段 长度(字节) 说明
─────────────────────────────────────────
Network Mask 4 外部网络掩码
Metric 4 外部路由开销
P-bit 1bit 是否传播到AS外部
Type 2bits E1或E2
Forwarding Addr 4 转发地址(FA)
External Router ID 4 产生该LSA的ASBR的Router ID
三、技术细节
3.1 Forwarding Address(FA)字段
FA 字段是 Type 5 LSA 中一个关键但容易被忽视的字段:
FA = 0.0.0.0(默认): - 流量先到达 ASBR,再由 ASBR 转发到外部网络 - 需要 Type 4 LSA 通告 ASBR 的位置
FA ≠ 0.0.0.0: - 流量直接发往 FA 地址,绕过 ASBR - 不需要 Type 4 LSA - FA 地址必须在 OSPF 域内可达
FA 非零的条件(华为设备): 1. ASBR 上执行重分发的接口的网络类型为 P2P 或 Virtual Link 2. 或者 ASBR 上执行重分发的接口的 IP 地址为 0.0.0.0 3. 或者手动配置强制设置 FA

3.2 Type 5 LSA 的泛洪过程

3.3 外部路由的选路优先级
OSPF 路由的优先级顺序:
| 优先级 | 路由类型 | 说明 |
|---|---|---|
| 1 | Intra-Area (O) | 区域内路由 |
| 2 | Inter-Area (O_*) | 区域间路由(Type 3) |
| 3 | Type 1 External (O_E1) | E1 外部路由 |
| 4 | Type 2 External (O_E2) | E2 外部路由 |
3.4 Type 4 LSA 的协同
当 Type 5 LSA 的 FA 为 0.0.0.0 时,其他区域的路由器需要通过 Type 4 LSA 找到到达 ASBR 的路径:
- ABR 产生 Type 4 LSA,描述 ASBR 的 Router ID 和到达 ASBR 的 Cost
- Type 4 LSA 泛洪到除 Stub 外的所有区域
- 路由器将 Type 5 的外部路由与 Type 4 的 ASBR 路径关联
- 最终路径 = 到达 ASBR 的路径 + ASBR 到外部网络的路径
四、实战配置/案例分析
4.1 外部路由重分发配置
# 重分发静态路由到OSPF
ospf 1
import-route static cost 10 type e2
# 重分发BGP路由到OSPF
ospf 1
import-route bgp cost 20 type e1
# 重分发直连路由到OSPF(带路由策略过滤)
ospf 1
import-route direct route-policy EXTERNAL
# 配置路由策略
route-policy EXTERNAL permit node 10
if-ip-address prefix-list EXTERNAL_NET
apply cost 10
apply route-type external 2
# 查看Type 5 LSA
display ospf lsdb as-external
display ospf lsdb as-external self-originate
4.2 案例分析:E1 与 E2 的选路差异
拓扑:

场景一(E2): - 两条外部路由的 Cost 均为 10 - R1 选择 Router ID 较大的 ASBR 对应的路由
场景二(E1): - ASBR1 路径:10 + 5 = 15 - ASBR2 路径:10 + 20 = 30 - R1 选择通过 ASBR1 的路径(Cost 15)
4.3 案例分析:Type 5 LSA 未泛洪到 Stub 区域
故障:Stub 区域内的路由器无法学习到外部路由 172.16.0.0/16。
排查:
[R_Stub] display ospf lsdb as-external
# 返回空,Stub区域不接收Type 5 LSA
[R_Stub] display ip routing-table protocol ospf
# 只能看到默认路由O*_* 0.0.0.0/0指向ABR
解释:这是 Stub 区域的正常行为。Stub 区域内的路由器通过 ABR 注入的默认路由(Type 3)到达外部网络,ABR 上有完整的外部路由表负责转发。
五、总结
| 要点 | 说明 |
|---|---|
| Type 5 产生者 | ASBR(执行重分发的路由器) |
| 泛洪范围 | 整个 AS(Stub/NSSA 除外) |
| E1 路由 | Cost = 外部Cost + 到达ASBR的Cost |
| E2 路由 | Cost = 外部Cost(默认) |
| FA 字段 | 非零时流量绕过ASBR直达下一跳 |
| Type 4 配合 | 通告ASBR位置,FA=0时必需 |
| 路由优先级 | 区域内 > 区域间 > E1 > E2 |
思考
- 在什么场景下应该选择 E1 类型而非默认的 E2 类型?E1 与 E2 的选择对选路结果有什么影响?
- Type 5 LSA 的 Forwarding Address 设置为非零值的条件是什么?FA 非零有什么优势和风险?
- 为什么 Stub 区域不接收 Type 5 LSA?如果 Stub 区域内需要访问外部网络,流量路径是怎样的?
下篇预告:第62篇:Type4 ASBR-Summary LSA 的作用