ASBR 本机上,import-route direct生成了 Type-5 外部 LSA,会发给其他路由器;但在本机 OSPF 路由表(display ospf routing)看不到这条外部 OSPF 路由,因为本机同前缀已经有 直连路由(Pre=0),优先级远高于 OSPF 外部路由(O_ASE Pre=150),SPF 计算出来也不会优选、不会放进 OSPF 路由表。
其他路由器是可以学到这条 O_ASE 外部路由的,只有 ASBR 自己看不到。
原理拆解(华为 VRP)
-
优先级对比
- Direct 直连:Pre 0(最高)
- OSPF 内部 O:Pre 10
- OSPF 外部 O_ASE:Pre 150 同一个网段,本机接口 UP,直连路由永远优先。OSPF 就算算出外部路由,不会优选,不会写入 display ospf routing。
-
LSA 仍然存在! 执行:
display ospf lsdb ase你一定能看到引入直连生成的 5 类 LSA ,LSA 会泛洪给邻居,邻居路由器
display ospf routing就能看到 O_ASE 路由。 LSA 生成 ≠ 本机 OSPF 路由表优选安装
几个常见原因
-
接口被 network 宣告进 OSPF 了 如果这个直连网段同时用 network 宣告进 OSPF:
- 属于 OSPF 内部路由(O),不是外部 O_ASE;
import-route direct不会重复引入这个网段。 → 所以这条网段不会作为外部路由出现。
口诀:被 network 宣告的接口,不会被 import-route direct 重分布
- 属于 OSPF 内部路由(O),不是外部 O_ASE;
-
filter-policy export 过滤 OSPF 进程下
filter-policy export可以阻止引入的路由生成 Type5 LSA。如果配了,LSDB 里也没有 ASE LSA,全网都学不到。 filter-policy import:只控制本机是否把 OSPF 路由放进 IP 路由表,不阻止 LSA 泛洪 -
接口 Down 接口物理 / 协议 Down,没有直连路由,自然无法被 import-route 引入。
验证命令顺序(排错)
#1. 看有没有生成5类外部LSA(最重要)
display ospf lsdb ase
#2. 查看OSPF路由表(ASBR本机大概率看不到O_ASE)
display ospf routing
#3. 查看IP全局路由表,看直连
display ip routing-table
#4. 查看OSPF进程配置,检查过滤策略
display ospf 1 this
区分两个表
- LSDB 链路状态数据库:存 LSA(ASBR 引入成功就有 Type5),全网同步
- OSPF 路由表 display ospf routing :SPF 计算后优选成功的路由条目
- IP 全局路由表 display ip routing-table:最终转发用的表,按协议优先级选
结论总结
import-route direct 作用:把本机直连网段生成 5 类 LSA 发给别人 。 对 ASBR 自己:同网段直连优先级更高,不会优选这条 OSPF 外部路由,所以 display ospf routing 看不到;邻居设备能正常看到 O_ASE 外部路由。