OSPF 单区域实验:邻居为什么起不来,应该从哪里查?
通过 OSPF 单区域配置,理解 Router ID、区域、网络宣告、邻居状态和常见不匹配问题。
OSPF 是企业网络里非常常见的动态路由协议。相比静态路由,它能自动学习拓扑变化,适合多路由器、多网段的网络环境。
学习 OSPF 时,第一目标不是记住所有 LSA 类型,而是先把邻居关系建立起来,并看懂路由是否进入路由表。
基础配置
ospf 1 router-id 1.1.1.1
area 0
network 10.0.12.0 0.0.0.3
network 192.168.10.0 0.0.0.255
华为 VRP 中 network 后面使用反掩码。很多初学者会把普通掩码直接写进去,导致接口没有被正确宣告。
邻居状态
display ospf peer
display ospf interface
邻居状态长期停留在 Init、2-Way 或 ExStart,都说明协议交互存在问题。不同状态对应的问题不同,不能只用“OSPF 不通”概括。
常见原因
OSPF 邻居起不来,常见原因包括:区域号不一致、Hello/Dead 时间不一致、认证不一致、接口网络类型不一致、两端 IP 不在同一网段、Router ID 冲突。
实验时可以故意制造这些错误,再观察 display ospf peer 的变化。这样比只做成功实验更有价值。
路由验证
邻居建立后,还要确认路由是否学习成功。
display ip routing-table protocol ospf
如果邻居正常但没有目标网段路由,通常要检查网络宣告是否覆盖了业务接口,或者对端是否确实把该网段发布进 OSPF。
学习建议
OSPF 的学习要分层:先邻居,再 LSDB,再路由表。不要一上来就陷入复杂理论,先建立“配置、验证、定位”的闭环。
实验目标
OSPF 单区域实验建议用三台路由器构成三角形或线性拓扑。初学阶段可以先用线性拓扑,目标是让每台路由器都能自动学习远端网段。
PC1 -- R1 -- R2 -- R3 -- PC2
所有路由器都加入 Area 0,互联链路和业务网段通过 OSPF 发布。
配置前准备
配置 OSPF 前,先确认互联接口 IP 地址已经配置正确,相邻路由器之间可以互相 ping 通。OSPF 邻居依赖底层三层可达,如果直连接口都不通,协议不可能正常建立。
Router ID 建议手工指定,避免设备自动选择导致排障困难。
ospf 1 router-id 2.2.2.2
邻居状态怎么读
Full 通常表示邻居关系正常。广播网络中,部分邻居可能停留在 2-Way,这并不一定异常,要结合 DR/BDR 角色判断。
如果卡在 Init,说明本端收到了对端 Hello,但对端 Hello 中没有看到本端 Router ID。常见原因是单向连通或参数不一致。
如果卡在 ExStart 或 Exchange,要关注 MTU、Router ID 冲突、网络类型等问题。
验收标准
完成实验后要检查三层结果,而不是只看 OSPF 配置:
display ospf peer能看到预期邻居。display ospf interface中接口区域正确。display ip routing-table protocol ospf能看到远端业务网段。- 业务网段之间能够互通。
- 断开一条链路后,路由能按预期收敛。
生产视角
生产网络里,OSPF 还要考虑区域规划、路由汇总、认证、被动接口和路由引入。HCIA 阶段先把单区域邻居和路由学习掌握牢,再进入多区域和复杂策略会更稳。
参考资料
- 华为 HCIA-Datacom V1.0 实验手册
- RFC 2328: OSPF Version 2
