一次客户这里某业务地市的网络故障,地区业务中断。该业务主要运行的是ospf协议,主要使用华为的AR系列路由器,全省的业务使用骨干区域area0。
后来登录该地市路由器,检查ospf邻居状态,都是full的邻接关系,参与ospf进程的接口的类型都是广播型。后来查询日志,发现mpu持续丢包,而且发现有router id冲突的告警,如下所示:

ospf的router id冲突的解决_第1张图片

问题现象

现网中时常会出现OSPF Router ID配置冲突的问题。由于Router ID是标识OSPF设备的重要依据,一旦冲突会导致OSPF的LSA频繁的老化和产生,进而导致网络不稳定。当Router ID冲突时通常会出现如下现象:
− CPU占用高,其中ROUT任务占用很高;
− 有路由振荡发生。

检查思路

OSPF域内路由器的router id冲突导致LSA频繁抖动震荡。同一区域相隔的设备配置相同的router id,不会影响邻接关系的建立,但是如果冲突的设备注入相同前缀的5类LSA,会导致路由表中的这些前缀的路由抖动。在配置OSPF时一定要保证router id在一个AS域中唯一。
1.通过display ospf lsdb命令查看ospf设备的lsdb。发现区域内的设备5类LSA age频繁更新,初步判断为可能会出现几种可能:接口Up、Down;邻居状态变化;OSPF注入的路由发生变化;router id冲突。
2.通过display interface 命令查看接口是否出现频繁up down。经排除次可能性排除。
3.在ASBR路由器上通过display  current-configuration 查看注入的路由发现,注入的路由时静态指定的黑洞路由(下一跳指向null接口),结果发现OSPF区域内的两个ASBR路由器注入了相同的黑洞路由,虽然注入相同的路由,不会导致5类LSA的age时间抖动,除非LSA中的通告者ID一样,并且路由前缀相同才会出现LSA抖动。
4.通过display ospf interface命令在所有OSPF区域内的设备上,查看ospf设备的router id。结果发现OSPF区域内的两台ASBR路由器的router id一致。

解决办法

通过ospf 1 router id x.x.x.x命令,更改冲突设备的ospf router id。(更改router id不会立即生效,需求重启进程)
在用户视图模式通过reset ospf x process命令,重启ospf 进程。
通过 display ospf interface 验证router id是否更改成功