实战案例:园区两栋楼的OSPF路由器,邻居咋建立不起来啊?莫慌,两招教你搞定

某大型园区网络,内部划分多个区域,使用 OSPF 协议进行路由通信。近期,园区内部A、B楼栋网络通信
首页 新闻资讯 行业资讯 实战案例:园区两栋楼的OSPF路由器,邻居咋建立不起来啊?莫慌,两招教你搞定

本期分享的案例是园区网的相关问题。


问题背景

某大型园区网络,内部划分多个区域,使用 OSPF 协议进行路由通信。近期,园区内部A、B楼栋网络通信出现异常,无法正常互访。网络管理员发现,A、B栋局点的某为路由器之间OSPF邻居关系未能成功建立,导致路由信息无法正常交换,进而影响了网络的连通性。

523572054cc29c027df00563c93af7de9306ce.webp

基本拓扑连接如下:

e35470893bdc95f17d049573f51eaed268dd7d.webp


排障思路

“邻居”和“邻接”这两个概念在OSPF中很重要:

  • OSPF路由器首先要建立的是“邻居关系”,这个过程是由Hello报文交互完成的;

  • 邻居过程走完后,OSPF路由器最终会成为Full状态的“邻接关系”,邻接路由器的LSDB(链路状态数据库)路由信息是一致的。

本例是OSPF邻接无法正常建立,如下:

f5baf7199ab97e1aa198773430db8778a5490b.webp

说明是Hello报文交互出现了问题,所以我们重点诊断Hello报文交互进行诊断即可,主要有硬件链路、软件分析等2个层面。


基础排查

第一步、物理链路检查

首先查看路由器之间的物理连接线路,确认网线、光纤等连接正常,无松动、损坏迹象。同时,检查端口状态,发现端口均已正常UP,排除了物理链路层面的问题。

第二步、检查连通性

物理链路检查无问题,下一步需要进入路由CLI界面,通过ping测试两端设备的连通性,这里进入R1路由的CLI界面ping对端接口:

4568051586a227af2af062cfd6e7228d3c00de.webp

可以看到,基本是无丢包和延时的,连通性正常。

第三步、确认影响邻居建立的要素

常见的影响OSPF邻居建立的因素主要有如下几种:

  • router-id冲突

  • 未将接口网段宣告进OSPF

  • 接口类型不一致

  • 接口掩码不一致

  • 接口MTU值不一致

  • Hello Interval(Hello间隔)不一致

  • Router Dead Interval(路由失效间隔)不一致

  • 认证类型不一致或认证密码错误

为确认各个影响因素,这边我提供2种方法供大家参考。


分析影响OSPF建邻居的因素

方法一:比对路由器配置文件结合OSPF诊断模块(需设备支持)定位根因

本例中使用的是华为设备,可通过如下命令查看配置信息:

[R1]display current-configuration

然后比对OSPF相关配置项:

a9f7036349e17a415ee446401c360a308ef2c9.webp

可以看到一处错误:R1、R2互联接口掩码不一致,R1是10.0.1.1/24而R2是10.0.1.2/25,这是导致OSPF无法建立邻居之一。

由于认证类型是cipher密文显示,无法判断两认证密钥是否一致,所以还需要根据OSPF诊断模块判断,在R1或R2上输入命令:

[R1]display ospf error

显示如下:

31c4c0b359c4c3bcf6d64973fc83ca153fb7da.webp

可以从回显看到2处错误:

  • 错误原因1:对端发的Hello包中认证密钥与本端不一致,这个通过密文的配置信息看不出来的;

  • 错误原因2:对端发来的Hello中接口掩码与本段不一致,这个在上述中通过配置信息已经明确。

所以通过查看路由配置和OSPF诊断信息可以定位问题原因,但OSPF诊断模块并非所有设备都支持,不支持的设备可通过方法二尝试定位解决。

方法二:对比R1、R2的OSPF报文字段定位根因(通用)

抓取R1和R2之间的链路报文:

87d446883ce8c4ae3c71078182de9ef9df5109.webp

比对R1和R2发出来的OSPF Hello报文:

b3f08cb6555be4204372587247c827d4ff5af0.webp

很显性的就能看到“掩码不一致”和“认证密码不一致”两处错误,这种方法适用于任何设备和场景,不依赖于设备诊断工具,我个人比较倾向该方法,同时还可以进一步学习协议。



解决方案

修正接口子网掩码:将R2的G0/0/0接口掩码修正10.0.1.2/24

统一认证密码:两端认证密码统一为huawei12

a5a11c817bbf8c1f9e2966370f23dd5caf4e95.webp

经过上述操作,相关路由器之间的 OSPF 邻居关系成功建立,路由信息开始正常交换,园区内各区域之间的网络通信恢复正常。