参考网上教程成功搭建了OSPF网络,但是不仅主机之间无法ping通,路由器之间也无法ping通(注意是ping不通而不是不能ping,ping不通表示你发送的数据包到不了目的地,不能ping表示没网你就发不了数据包,更别提能不能到达目的地了),拓扑环境如下图:

ospf配置lsa OSPF配置后ping不通pc_路由表

 

 

   目前的情况如下:

ospf配置lsa OSPF配置后ping不通pc_ospf配置lsa_02

  可以看出,从192.168.10.1一直发送数据包,但每一个数据包都显示Destination host unreachable(目标主机不可达),关于这种问题,笔者先进行了大量的百度,看了很多技术博客都没有解决我这个“疑难杂症”,只能自己分析......

  首先,数据包的转发前提是接口得开着,所以我先查看了一下我的接口是否都已自动激活,结果发现有的接口果然是关着的(看Status和Protocol为up是开启状态,down是关闭状态):

ospf配置lsa OSPF配置后ping不通pc_配置信息_03

 

   这是我之前配置的一个路由器,我的配置信息为:

int f0/1
ip add 192.168.60.1 255.255.255.0
int f0/0
ip add 192.168.50.2 255.255.255.0
no shut
int lo 1
ip add 3.3.3.3 255.255.255.255
no shut
ex
router ospf 1
network 192.168.60.0 0.0.0.255 area 1
network 192.168.50.0 0.0.0.255 area 2

  按理来说,no shut就是把所有的接口激活了,但根据实际情况来看,需要对每个接口使用一次no shut,不能对全部的接口一次性使用no shut,这样它只会自动开启最后一个接口。

int f0/1
ip add 192.168.60.1 255.255.255.0
no shut
int f0/0
ip add 192.168.50.2 255.255.255.0
no shut
int lo 1
ip add 3.3.3.3 255.255.255.255
no shut
ex
router ospf 1
network 192.168.60.0 0.0.0.255 area 1
network 192.168.50.0 0.0.0.255 area 2

  天真的我以为把所有接口开启后就解决问题了,可还是不行,还是老问题,然后就注意到配置信息里面貌似并没有默认路由,只是指定了该路由器对应接口的ip以及所处的ospf网络,既没有指定路径,又没有默认路由,那么数据包肯定不知道该怎么传输了,所以就先尝试着指定默认路由,结果发现可以ping通一部分了,配置默认路由命令(以R1为例,其余路由器以此类推):

ip route 192.168.30.0 255.255.255.0 192.168.20.2
ip route 192.168.50.0 255.255.255.0 192.168.60.2
ip route 192.168.40.0 255.255.255.0 192.168.30.2

  比如,第一条命令说的是,如果R1想要访问到30网段的话,要通过192.168.20.2访问到R2。经过这三条命令,至少R1现在可以对整个网络进行全局访问了,然后更新配置信息:

int f0/0
ip add 192.168.20.1 255.255.255.0
no shut
int f0/1
ip add 192.168.60.1 255.255.255.0
no shut
int f1/0
ip add 192.168.10.1 255.255.255.0
no shut
ip route 192.168.30.0 255.255.255.0 192.168.20.2
ip route 192.168.50.0 255.255.255.0 192.168.60.2
ip route 192.168.40.0 255.255.255.0 192.168.30.2
no shut
int lo 0
ip add 1.1.1.1 255.255.255.255
no shut
ex
router ospf 1
network 192.168.10.0 0.0.0.255 area 1
network 192.168.60.0 0.0.0.255 area 1
network 192.168.20.0 0.0.0.255 area 1

  最后,在R1中查看路由表会发现,R1已经收敛(各个网段都可以访问到):

ospf配置lsa OSPF配置后ping不通pc_ospf配置lsa_04

 

   根据以上操作可以对其余路由器进行修改配置,但需要注意的是,配置链路要进行双向配置,也就是说光R1能访问30网段是不够的,R4也要能访问R1所在的网段,二者皆备才可以真正的ping通,最后的效果,此时才可以ping通了(也可以通过wireshark抓包看效果):

ospf配置lsa OSPF配置后ping不通pc_路由表_05

 

   最后,辛辛苦苦配置完一定要保存好,免得不小心关了,一夜回到解放前......(笔者就重复配了两次......)