OSPF邻居建立不成功的原因介绍1、检查邻居两端的接口物理和协议状态是否UP状态是否稳定接口是否有丢包两边互ping大包是否能通。若物理接口不Up或是不稳定有振荡现象请排查物理链路和链路层协议确保物理和协议状态都是Up并且接口无错误计数。可以通过ping测试长ping测试是否存在丢包现象ping大包1500字节以上测试是否存在大包不通的现象。2、检查链路两端OSPF进程的Router ID是否一致。分别在链路两端的设备上执行命令display ospf 1 brief查看OSPF进程的Router ID。Router ID要保证全网唯一否则会导致邻居不能正常建立、路由信息不正确的问题。建议在设备上单独为每个OSPF进程配置全网唯一的Router ID。修改OSPF进程的Router ID之后必须在用户视图下执行命令reset ospf 1 process后新配置的Router ID才会生效。3、检查链路两端OSPF区域ID是否一致。分别在链路两端的设备上执行命令display ospf 1 brief查看OSPF的区域ID。4、检查链接两端OSPF接口的网络类型是否一致。分别在链路两端的设备上执行命令display ospf 1 interface查看OSPF接口的接口类型。一般情况下链路两端的OSPF接口的网络类型必须一致否则双方无法建立起邻居关系。本设备接口配置的网络类型为P2P或P2MP时会检查收到的Hello报文的DR和Router Priority字段。如果两个字段都不是0会认为对端配置不正确并丢弃该报文此时两设备无法建邻居否则正常处理可能导致当对端接口配置的网络类型不是P2P或P2MP时例如广播网也能建邻居但无法正确计算路由。5、检查链路两端OSPF接口的IP地址的掩码是否一致。一般情况下链路两端的OSPF接口的IP地址的掩码必须一致否则双方不能正常建立OSPF邻居关系。但在P2MP网络中可以通过在运行OSPF协议的接口视图下配置命令ospf p2mp-mask-ignore来使设备忽略对网络掩码的检查从而正常建立OSPF邻居关系。6、检查链路两端OSPF接口的IP地址所在网段是否包含在区域内配置的network内。执行命令display current-configuration configuration ospf查看OSPF进程的配置。满足下面两个条件OSPF协议才能在接口上运行•接口的IP地址掩码长度≥network命令中的掩码长度。OSPF使用反掩码例如0.0.0.255表示掩码长度24位。•接口的主IP地址必须在network命令指定的网段范围之内。7、检查链路两端OSPF接口的DR优先级是否非零。分别在链路两端的设备上执行命令display ospf 1 interface查看OSPF接口的DR优先级。对于广播和NBMA类型网络链路中至少要有一个OSPF接口的DR优先级不为0这样才能正常选举出DR。否则两边的邻居状态只能达到2-Way。如果链路两端OSPF接口的DR优先级都为0请在运行OSPF协议的接口视图下执行命令ospf dr-priority 1修改OSPF接口的DR优先级以保证至少有一个接口的DR优先级不为0。8、检查链路两端OSPF接口发送Hello报文的时间间隔是否一致。分别在链路两端的设备上执行命令display ospf 1 interface查看OSPF接口发送Hello报文的时间间隔。如果链路两端OSPF接口发送Hello报文时间间隔不一致可能会导致邻居建立不成功。如果不一致请在运行OSPF协议的接口视图下执行命令ospf timer hello 5修改接口发送Hello报文的时间间隔使得链路两端保持一致。