OSPF邻接关系不能建立的常见问题.docx
文本预览下载声明
OSPF 邻接关系不能建立的常见原因OSPF作为一种IGP协议,由于其开放性,所有厂家的设备都支持,不像EIGRP只支持思科网络设备,而RIP作为一种比较古老的协议,由于其对网络拓扑大小支持的局限和其协议自身设计的局限性,现网中已经很少能看到其影子了。OSPF协议被广泛应用于各种企业,集团,学校…等内部网络中,来实现内网的连通性。由于其广泛的应用性,因此对OSPF的排错能力成了对网络工程师技能的一种体现。OSPF协议作为一种链路状态协议,在交互数据包之前首先需要建立邻接关系。本文就几种影响OSPF邻接关系建立的情况做一一叙述。OSPF建立邻接关系之前首先要交互Hello报文,OSPF的Hello报文中包含很多字段,Hello报文中的某些字段匹配后,两台路由器才能建立起OSPF邻接关系。拓扑图:基本配置:R1:interface Loopback0 ip address 11.1.1.1 255.255.255.255!interface FastEthernet0/0 ip address 12.1.1.1 255.255.255.0!router ospf 110 router-id 11.1.1.1 network 11.1.1.1 0.0.0.0 area 0 network 12.1.1.1 0.0.0.0 area 0R2:interface Loopback0 ip address 22.2.2.2 255.255.255.255!interface FastEthernet0/0 ip address 12.1.1.2 255.255.255.0!router ospf 110 router-id 22.2.2.2network 12.1.1.2 0.0.0.0 area 0 network 22.2.2.2 0.0.0.0 area 0当把直连接口no shutdown,并且宣告进OSPF进程中后,默认情况下OSPF邻接关系就能够达到Full状态。(1)Hello间隔和Dead 间隔两端不一致默认情况下,OSPF的每种网络类型会对应相应的Hello Time和Dead Time。链路两端Hello Time如果不一致,OSPF的邻接关系建立就会受到影响。当我们改变的R1 f0/0接口的Hello-interval,对应的dead Time和Wait Time也会随之改变。并且一段时间后,两端的邻接关系从Full转成Down。Debug信息可以看到,两端Hello参数不一致导致邻接关系不能建立。(2)链路两端区域号码不一致OSPF是基于接口建立邻接关系的,因此链路两端接口需要宣告进入相同的OSPF区域中。如果区域号码不一致,会有以下报错信息。(3)特殊区域(Stub/Nssa)类型不匹配OSPF分为特殊区域和非特殊区域,如果链路两端特殊区域标示不一致,则OSPF的邻接关系也无法正常建立。注意:特殊区域不能是Area 0当我们把R1的f0/0接口宣告进入Area 1,并且定义Area 1为Stub区域之后,邻接关系受到影响。(4)认证类型或密码不一致OSPF支持多种认证方式,分为区域认证和链路认证,明文认证和密文认证。如果启用认证,则两端的认证类型和密钥必须匹配才行。当我们在R1上启用区域级密文认证之后。通过Debug信息可以看出,认证类型不匹配,OSPF认证分为3个级别,分别为type 0:不认证;type 1:明文认证;type 2:密文认证。在R2上配置认证信息,但是接口的认证密钥不一致,这时候邻接关系还是不能建立。通过Debug信息可以看出,认证密钥不匹配。(5)链路两端有一个接口被passive掉OSPF要想建立邻接关系首先必须要交互hello报文,如果一个接口被passive掉,那么就不能通过接口发送hello报文,因而邻接关系也就不能够建立。这样R2就收不到R1的hello报文,因而邻接关系也就不能够建立。(6)Hello包被ACL Deny掉可以发现,OSPF邻接会不断的翻滚。(7)Router-ID一致链路两端的路由器如果Router-ID一致,也会影响邻接关系的建立,因为Router-id是用来唯一标识一台运行OSPF的路由器的,还会用来标识某些LSA,因此链路两端运行OSPF的路由器,RID必须唯一。(8)链路两端MTU不一致OSPF在建立邻接关系的时候,到了exstart状态的时候,如果是在MA网络类型下,会进行DR/BDR的选举,交互的报文中会有一个MTU字段,假如链路两端MTU不一致,那么OSPF邻接关系会卡在exstrat状态。如果要忽略MTU对OSPF邻接关系建立的影响,可以在接口MTU值更小的一侧使用命令:ip ospf mtu-ignore 。(9)接口下OSPF网络类型不匹配链
显示全部