使用 OSPF 连接更多网络
OSPF 的直觉:交换地图,再各自算路
本课问题:OSPF 路由器怎样在没有中心控制器时得出一致路径? 学完你能:区分邻居、LSDB 和路由表,并画出信息流。
前置知识
- 静态路由什么时候开始难以维护
课堂开场
本课问题:OSPF 路由器怎样在没有中心控制器时得出一致路径?
学完结果:区分邻居、LSDB 和路由表,并画出信息流。
预计时间:25 分钟。前置课:静态路由什么时候开始难以维护。
范围控制:本课不背报文类型和 LSA 编号。
02基础知识讲解
总部和分支没有中心控制器,却需要对 Area 0 的拓扑得到一致认识并各自计算到业务网段的路径。
本课最小拓扑或状态图:HQ-Core ─ R1 ─ Branch-R1(Area 0);每台设备:Neighbor → LSDB → SPF → RIB
直觉解释:邻居先确认能互相交换地图,大家同步同一区域地图,再各自在本机用同一规则算路线;地图不是最终导航表。
正式定义:OSPF 是链路状态内部网关协议:邻居泛洪链路状态信息形成区域 LSDB,各路由器运行 SPF 计算,并把优选结果提交到路由表。
判断依据:每台路由器根据相同地图独立计算最短路径。
| 重点 | 你要理解 | 判断依据 |
|---|---|---|
| 重点 1 | 邻居关系让相连路由器交换链路状态。 | 先在邻居表确认 R1 Full,再在 LSDB 找到分支前缀的发布者,最后在 OSPF 路由表确认下一跳。 |
| 重点 2 | LSDB 是区域内的网络地图,不等同于最终路由表。 | LSDB 中由 .2 发布到 10.20.0.0/24 的链路信息,证明地图里确有该前缀。 |
| 重点 3 | 每台路由器根据相同地图独立计算最短路径。 | 没有邻居时停在接口和邻接参数,不查业务路由。 |
03正确理解与常见误解
正确示例:先在邻居表确认 R1 Full,再在 LSDB 找到分支前缀的发布者,最后在 OSPF 路由表确认下一跳。
错误示例:把邻居 Full 当作业务路由已经存在,或把 LSDB 中的一条 LSA 直接当成全局路由表条目。
- 术语与判断:邻居关系让相连路由器交换链路状态。
- 术语与判断:LSDB 是区域内的网络地图,不等同于最终路由表。
- 术语与判断:每台路由器根据相同地图独立计算最短路径。
04老师演示
演示环境:设备 SW1,华为 S5735-L24T4X-A,VRP V200R022C00SPC500,当前提示符 <SW1>,隔离课程网络。教师准备执行只读命令:
- 前检
核对 SW1、目标对象、当前状态、带外路径和变更前业务基线。 - 只读核验(查看 OSPF 邻居状态)
display ospf peer brief汇总显示邻居 Router ID、地址、状态和接口。 - 只读核验(查看 OSPF 邻居状态)
display ospf peer查看邻居计时器、区域和详细邻接信息。 - 只读核验(查看 OSPF 邻居状态)
display ospf peer brief确认预期邻居均为 Full,并与拓扑和接口规划一致。 - 只读核验(查看 OSPF 链路状态数据库)
display ospf lsdb第 1 步:在目标设备上执行并核对命令作用范围。 - 只读核验(查看 OSPF 链路状态数据库)
display ospf routing读取实际状态或计数器,确认“确认前缀是否进入 LSDB 并识别对应 LSA 类型和发布者”已经满足。 - 只读核验(查看 OSPF 学习路由与下一跳)
display ospf routing第 1 步:在目标设备上执行并核对命令作用范围。 - 只读核验(查看 OSPF 学习路由与下一跳)
display ip routing-table protocol ospf读取实际状态或计数器,确认“确认 LSDB 中的前缀已计算并安装到全局路由表”已经满足。
安全说明:命令来自“查看 OSPF 邻居状态”华为实现,用于华为使用 display ospf peer brief 快速查看进程中的邻居状态。 执行前已确认当前设备、版本、视图、影响对象、停止条件和输出脱敏范围。
脱敏真实输出:
<SW1>display ospf peer brief Peer 10.255.0.2 Address 10.0.0.2 State Full Area 0.0.0.0 LSDB Area 0.0.0.0: Router 10.255.0.2 advertises link to 10.20.0.0/24 10.20.0.0/24 OSPF Cost 20 NextHop 10.0.0.2 GE0/0/48
异常输出:
Peer 10.255.0.2 State Full, but LSDB has no 10.20.0.0/24 advertisement Global routing table lookup 10.20.0.10: Route not found 差异说明:邻居 Full 但 LSDB 没有目标前缀,所以全局表找不到路由是合理结果;下一步在发布端检查该网段是否被 OSPF 正确通告。 此时不能套用正常结论;先保存采集时间,再执行“查看 OSPF 链路状态数据库”对应的最小只读检查。
05逐行读懂输出
结论:当前输出可以支持“区分邻居、LSDB 和路由表,并画出信息流。”中的基础判断,但仍要完成跟做任务和业务验收,不能把单份输出当作全部证明。
- 第 1 行“Peer 10.255.0.2 Address 10.0.0.2 State Full Area 0.0.0.0”:Peer 状态 Full 且在 Area 0,证明两台设备已完成该区域邻接。
- 第 2 行“LSDB Area 0.0.0.0: Router 10.255.0.2 advertises link to 10.20.0.0/24”:LSDB 中由 .2 发布到 10.20.0.0/24 的链路信息,证明地图里确有该前缀。
- 第 3 行“10.20.0.0/24 OSPF Cost 20 NextHop 10.0.0.2 GE0/0/48”:OSPF 路由表给出前缀、Cost、下一跳和出接口,证明 SPF 已选出实际转发路径。
06学员跟做
起始状态:使用隔离课程环境,SW1 当前配置保持阶段基线,学员已登录但尚未执行本课检查。目标状态:区分邻居、LSDB 和路由表,并画出信息流。
操作步骤:①在图上标出邻居交换信息的链路;②分别写出邻居表、LSDB、OSPF 路由表回答的问题;③执行三条只读命令,用同一前缀串起发布者、Cost 和下一跳;④遮住路由表,根据 LSDB 先预测路径,再核对结果;⑤进入“引导:读取 OSPF 邻居状态”独立完成相同目标。
成功标准:输出与规划一致,立即闯关全部目标通过,并能用自己的话说明三个重点。失败检查顺序:①没有邻居时停在接口和邻接参数,不查业务路由;②邻居 Full 但 LSDB 无前缀时检查发布范围和被动接口语义;③LSDB 有前缀但 RIB 无路由时检查 SPF、策略和更优路由来源。
- 保存教师演示命令和本次学员输出,文件名含设备、日期和课次。
- 步骤标题只提示检查对象,不复制最终答案。
- 失败时一次只验证一个假设,不连续粘贴未知命令。
07安全、验证与回滚
本课以只读观察为主。只读命令仍可能暴露资产信息,保存输出前要替换序列号、真实公网地址、账号和其他敏感字段;任何清表、重启、删除或配置动作都不属于本课。
验证必须同时回答:配置或输入是否正确、设备状态是否符合预期、真实任务“区分邻居、LSDB 和路由表,并画出信息流。”是否完成。
08本课关联资源
按顺序完成:先看命令 → 立即闯关 → 可选加练 → 案例步骤 → 返回本页复盘。
- 必学命令:查看 OSPF 邻居状态打开资源 →目标:核对本课涉及的华为主线命令及四厂商差异|完成标准:能解释用途、视图、版本范围、验证和回滚。
- 必学命令:查看 OSPF 链路状态数据库打开资源 →目标:核对本课涉及的华为主线命令及四厂商差异|完成标准:能解释用途、视图、版本范围、验证和回滚。
- 必学命令:查看 OSPF 学习路由与下一跳打开资源 →目标:核对本课涉及的华为主线命令及四厂商差异|完成标准:能解释用途、视图、版本范围、验证和回滚。
- 立即闯关:引导:读取 OSPF 邻居状态打开资源 →目标:独立完成“区分邻居、LSDB 和路由表,并画出信息流。”对应的最小任务|完成标准:规则引擎全部目标通过并保存关键输出。
09自测一:概念判断
先判断对错,再写出为什么。
- 判断 1:以下做法是正确的——把邻居 Full 当作业务路由已经存在,或把 LSDB 中的一条 LSA 直接当成全局路由表条目。
- 判断 2:以下做法是正确的——先在邻居表确认 R1 Full,再在 LSDB 找到分支前缀的发布者,最后在 OSPF 路由表确认下一跳。
10自测二:输出解读
重新阅读老师演示的第 2 行输出:它能直接证明什么?还不能证明“区分邻居、LSDB 和路由表,并画出信息流。”中的哪一部分?请写出下一条最小验证证据。
11自测三:小型操作
在隔离环境或纸面拓扑中完成:区分邻居、LSDB 和路由表,并画出信息流。 保存关键输出,按“现象—证据—结论—下一步”写四行记录;不得复制本页最终结论。
答案与复盘
13下一课
下一课:Router ID、接口、区域:建立邻居前要一致什么。你已经能“区分邻居、LSDB 和路由表,并画出信息流。”,下一课将用这项能力继续回答“两端 IP 可达,为什么仍可能无法成为 OSPF 邻居?”。