
华为路由器配置动态协议OSPF,首要条件是必须建立邻居关系,才能建立邻接,从而在路由器之间正确运行该协议。
如果没有建立邻居关系,可以使用display ospf error查看邻居故障的原因,然后使用display current-configuration查看配置,进行修改,再验证。
常见故障及排错方法
1、拓扑
2、链路两端OSPF区域配置不一致
1、基础配置。
R1
<Huawei>sys
[Huawei]sys R1
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 172。
[R1-GigabitEthernet0/0/0]int loopback0
[R1-LoopBack0]ip address 11。
R2
<Huawei>sys
[Huawei]sys R2
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ip address 172。
[R2-GigabitEthernet0/0/0]int loopback0
[R2-LoopBack0]ip address 22。
2、配置OSPF。
R1
[R1]ospf 1 rout
[R1]ospf 1 router-id 11。
[R1-ospf-1]area 1
1]network 172, [R1-ospf-1-area-0。
1]network 11, [R1-ospf-1-area-0。
R2
<R2>sys
[R2]ospf 1 r
[R2]ospf 1 router-id 22。
[R2-ospf-1]area 2
2]network 172, [R2-ospf-1-area-0。
[R2-ospf-1-area-0,2]network 22。
R1
查看邻居关系
<R1>dis ospf peer
由上图知悉,没有R1和R2没有建立邻居关系
4、查找原因。
用下列命令查看
<R1>dis ospf error
由上图发现,其他的general数值都是0,只有Bad area id是28,所有是area id故障。
在R1上
用<R1>dis current-configuration
命令查看
由上图知悉
Area 的数值是1
在R上
用<R2>dis current-configuration
命令查看
Area 的数值是2
5、解决办法。
R1和R2的Area数值都统一为1。
修改R2上的Area数值为1
在R2上
删除area 2区域
[R2]ospf 1
[R2-ospf-1]area 2
2]undo network 22, [R2-ospf-1-area-0。
2]undo network 172, [R2-ospf-1-area-0。
[R2-ospf-1]undo area 2
配置为area 1区域
[R2-ospf-1]area 1
[R2-ospf-1-area-0,1]network 22。
[R2-ospf-1-area-0,1]network 172。
6、修改配置后验证。
<R1>dis ospf peer brief
由上图知悉,R1和R2的邻居关系建立完成。
3、ospf验证模式不一致
1、基础配置。
验证是在接口下配置
R1的g0/0/0接口下配置
验证模式为simple
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ospf authentication-mode simple cipher 123456
R2的g0/0/0接口下配置
验证模式为md5
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
2、配置验证。
查看R1和R2的邻居关系
<R1>dis ospf peer
由上图可知,R1和R2并没有建立邻居关系
3、查找原因。
<R1>dis ospf error
由上图知悉,R1上的认证类型有错误。
4、解决办法。
修改R1的验证模式为md5,与R2相同。
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
5、修改配置后验证。
在R1上
<R1>dis ospf peer brief
由上图知悉,R1上的邻居建立完成。
4、一端启用了静默接口配置( silent-interface )
在OSPF协议中使用了该命令后,OSPF协议的更新就不会被silent接口发送出去。
但是被silent的接口依然可以接受其他设备发来的更新,只是将网段宣告,该端口不收发hello包,不建立邻居关系,从而节省设备的性能。
1、基础配置。
在R1上配置
把g0/0/0配置为静默端口
[R1]ospf 1
[R1-ospf-1]silent-interface g0/0/0
2、配置验证。
在R2上查看邻居关系
<R2>dis ospf peer brief
由上图可知,R2上邻居关系消失。
3、查找原因。
<R2>dis ospf error
4、解决办法。
去掉R1上的g0/0/0端口的静默配置
在R1上配置
[R1]ospf 1
[R1-ospf-1]undo silent-interface g0/0/0
5、修改配置后验证。
在R2上
<R2>dis ospf peer brief
由上图知悉,R2和R1的邻居关系已经建立。
5、验证密码不一致
1、基础配置。
在R1上配置
<R1>sys
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
在R2上配置
<R2>sys
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 654321
2、配置验证。
在R2上查看邻居关系
<R2>dis ospf peer brief
由上图可知,R1和R2没有建立邻居关系
3、查找原因。
<R2>dis ospf error
由上图知悉,是验证出错,导致无法建立邻居关系。
在R2上抓包查看如下
<R2>dis ospf error packet
由上图知悉,也是验证错误。
由于验证密码是md5加密,所以用dis cu查看不到具体的密码数值
在R2上查看
4、解决办法。
修改R2的验证密码为123456,与R1相同
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456
5、修改后验证。
在R2上查看邻居关系
<R2>dis ospf peer brief
由上图知悉,R1和R2的邻居关系已经建立起来。
6、两端的hello间隔时间或者dead间隔时间不匹配
一般hello时间和dead时间是4倍的关系,修改hello时间,dead时间随之改变,修改dead时间,hello时间不会变。
1、基础配置。
我们先看R1上ospf的hello时间
<R1>dis ospf int g0/0/0
由上图知悉,R1的hello时间是10秒,dead时间40秒。
再看R2上的hello时间
<R2>dis ospf int g0/0/0
由上图知悉,R2的hello时间是30秒,dead时间120秒。
R1和R2的hello时间不一致
2、配置验证。
在R1上查看没有建立起来的邻居关系
<R1>dis ospf peer brief
3、查看原因。
在R1上抓包查看
<R1>dis ospf error packet
由上图知悉,是hello时间不匹配
用<R2>dis ospf error
命令查看,也可以发现是hello时间的问题。
4、解决办法。
把R2的hello时间改为10秒,和R1的hello时间一致,
[R2]int g0/0/0
[R2-GigabitEthernet0/0/0]ospf timer hello 10
5、修改配置后验证。
<R2>dis ospf int g0/0/0
由上图知悉,hello时间已经修改,并且dead时间也自动改变,变为与hello时间是4倍关系。
在R2上查看邻居关系
<R2>dis ospf peer brief
由上图知悉,邻居关系已经建立完成。
7、网络掩码不匹配
这样测错误信息一般出现在广播型网络中。
1、基础配置。
在R1上配置
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 172。
在R2上配置
[R1-GigabitEthernet0/0/0]ip address 172。
2、配置验证。
在R2上查看
[R2]dis ospf peer brief
由上图知悉,R1和R2没有建立邻居关系。
3、查看原因。
在R2上查看
[R2]dis ospf error packet
用[R2]dis ospf error
查看
4、解决办法。
修改R1上的网络掩码和R2相同,都是255。
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]ip address 172。
5、修改后验证。
<R2>dis ospf peer brief
由上图可知,R1和R2建立了邻居关系。
8、故障描述---缺少区域内路由
1、基础配置。
在R1上配置
[R1]ospf 1 router-id 11。
[R1-ospf-1]area 1
在R2上配置
[R2]ospf 1 router-id 22。
[R2-ospf-1]area 1
2、配置验证。
<R1>dis ospf peer brief
由上图知悉,R1和R2的邻居关系没有建立。
测试直连是否可达。
<R1>ping 172。
由上图知悉,直连是通的,说明基本配置没有问题。
3、查看原因。
<R1>dis current-configuration
由上图知悉,在ospf的配置中,没有宣告域内路由。
4、解决办法。
分别在R1和R2上宣告路由
在R1上配置
[R1]ospf 1
[R1-ospf-1]area 1
1]network 172, [R1-ospf-1-area-0。
1]network 11, [R1-ospf-1-area-0。
在R2上配置
[R2]ospf
[R2-ospf-1]area 1
[R2-ospf-1-area-0,1]network 22。
1]network 172, [R2-ospf-1-area-0。
5、修改后验证。
在R2上查看
<R2>dis ospf peer brief
由上图知悉,R1和R2的邻居关系建立起来了。
9、Router ID冲突
1、基础配置。
在R1上配置
[R1]ospf 1 router-id 22。
[R1-ospf-1]area 1
[R1-ospf-1-area-0,1]net 172。
[R1-ospf-1-area-0,1]network 11。
在R2上配置
[R2]ospf 1 router-id 22。
[R2-ospf-1]area 1
[R2-ospf-1-area-0,1]network 172。
1]network 22, [R2-ospf-1-area-0。
2、配置验证。
在R1上查看配置
<R1>dis ospf peer brief
由上图知悉,R1没有ospf邻居关系
3、查看原因。
在R1上查看
<R1>dis ospf error
由上图知悉,General为41的Router id confusion异常。
用<R1>dis current-configuration查看
R1上的Router-id值为22。
在R2上查看
<R2>dis current-configuration
R1上的Router-id值为22。
说明R1和R2的Router-id值重复。
4、解决办法。
修改R1上的Router-id值为11,1,与R2上的Router-id值22,1不同,并且重新启动ospf 1进程。
[R1]ospf 1 router-id 11。
<R1>reset ospf 1 process
Warning: The OSPF process will be reset, Continue, [Y/N]:y。
<R1>
5、修改后验证。
<R1>dis ospf peer br
此时,发现OSPF邻居关系建立起来了。
有些不同厂商的路由器运行ospf协议的时候,可能mtu值不同,而华为设备默认不检测mtu值,但是可以开启检测,这种情况,可以检查mtu值是否相同,华为设备是否开启mtu值的检测功能,从而保持两端设备的mtu值相同。









