Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx

上传人:b****5 文档编号:7962774 上传时间:2023-01-27 格式:DOCX 页数:27 大小:76.09KB
下载 相关 举报
Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx_第1页
第1页 / 共27页
Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx_第2页
第2页 / 共27页
Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx_第3页
第3页 / 共27页
Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx_第4页
第4页 / 共27页
Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx

《Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx》由会员分享,可在线阅读,更多相关《Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx(27页珍藏版)》请在冰豆网上搜索。

Cisco IOS OSPF 邻居关系不能正常建立的原因和解决方法.docx

CiscoIOSOSPF邻居关系不能正常建立的原因和解决方法

OSPF邻居关系不能正常的原因和解决方法

1、接口上没有激活ospf

就是在network语句的时候没有匹配清楚,比如配置了错误的反掩码不对,在showipospfinterface的时候不会显示你希望激活的接口

使用showipospfinterface来验证

这时候的邻居表是空的

R2#showipospfneighbor

R2#

2、物理层或者是数据链路层协议down.

使用showipintbrief或者是showinttypenomber

会导致ospfpacket封装失败。

3、建立邻居的接口被passive掉

R2#showipospfinterfaceEthernet0

Ethernet0isup,lineprotocolisup

InternetAddress131.108.1.2/24,Area0

ProcessID1,RouterID131.108.1.2,NetworkTypeBROADCAST,Cost:

10

TransmitDelayis1sec,StateDR,Priority1

DesignatedRouter(ID)131.108.1.2,Interfaceaddress131.108.1.2

Nobackupdesignatedrouteronthisnetwork

Timerintervalsconfigured,Hello10,Dead40,Wait40,Retransmit5

NoHellos(Passiveinterface)

NeighborCountis0,Adjacentneighborcountis0

Suppresshellofor0neighbor(s)

4、OSPF的hello组播地址被ACLBlock

R1#

interfaceEthernet0

ipaddress131.108.1.1255.255.255.0

ipaccess-group100in

!

access-list100permittcpanyany

access-list100permitudpanyany

access-list101permitip131.108.1.00.0.0.255host224.0.0.5

R2#

interfaceEthernet0

ipaddress131.108.1.2255.255.255.0

ipaccess-group100in

!

access-list100permittcpanyany

access-list100permitudpanyany

access-list101permitip131.108.1.00.0.0.255host224.0.0.5

R2#debugippacket101detail

IPpacketdebuggingison(detailed)foraccesslist101

IP:

s=131.108.1.2(Ethernet0),d=224.0.0.5,len68,accessdenied,proto=89

这时候的邻居关系是INIT

R2#showipospfneighbor

NeighborIDPriStateDeadTimeAddressInterface

131.108.2.11INIT/-00:

00:

33131.108.1.1Ethernet0

R1#showaccess-list101

ExtendedIPaccesslist101

permitip131.108.1.00.0.0.3host224.0.0.5(8matches)

R1#debugippacket101detail

IPpacketdebuggingison(detailed)foraccesslist101

R1#

IP:

s=131.108.1.1(local),d=224.0.0.5(Ethernet0),len60,sendingbroad/multicast,proto=89

IP:

s=131.108.1.2(Ethernet0),d=224.0.0.5,len82,accessdenied,proto=89

IP:

s=131.108.1.1(local),d=224.0.0.5(Ethernet0),len60,sendingbroad/multicast,proto=89

IP:

s=131.108.1.2(Ethernet0),d=224.0.0.5,len82,accessdenied,proto=89

5、在broadcast链路上的子网掩码不匹配

6、Hello/dead间隔不匹配

7、认证方式或者是认证密码不匹配

使用debugipospfadj来查看,可以自己使用不同的情况来验证

8、两台路由器处于不同的AREA

R1#debugipospfadj

OSPFadjacencyeventsdebuggingison

R1#

OSPF:

Rcvpktfrom131.108.1.2,Ethernet0,area0.0.0.0

mismatcharea0.0.0.1intheheader

R2#showlog

%OSPF-4-ERRRCV:

Receivedinvalidpacket:

mismatchareaID,frombackboneareamustbe

virtual-linkbutnotfoundfrom131.108.1.1,Ethernet0

9、Stub/transit/NSSA区域类型不匹配,这个是常常不小心会被忘记的。

R1#debugipospfadj

OSPFadjacencyeventsdebuggingison

R1#

OSPF:

Rcvhellofrom131.108.0.1area1fromEthernet0131.108.1.2

OSPF:

Hellofrom131.108.1.2withmismatchedStub/Transitareaoptionbit

R1#debugipospfadj

OSPFadjacencyeventsdebuggingison

R1#

OSPF:

Rcvhellofrom131.108.0.1area1fromEthernet0131.108.1.2

OSPF:

Hellofrom131.108.1.2withmismatchedNSSAoptionbit

10、使用secondaryIP来建立OSPFadjacency

R2#

interfaceFastEthernet0/0

ipaddress131.108.1.2255.255.255.0secondary

ipaddress131.108.4.2255.255.255.0

R1#

interfaceEthernet0

ipaddress131.108.1.1255.255.255.0

R2#debugipospfadj

OSPFadjacencyeventsdebuggingison

R2#

OSPF:

Rcvpktfrom131.108.1.1,FastEthernet0/0,area0.0.0.1:

srcnotonthesamenetwork

11、OSPF网络类型不匹配(P-TO-P和P-TO-M网络类型在hello时间间隔相同的情况下可以建立full关系,但是会缺少一条路由,可以做一下相关使用验证

12、NBMA(FrameRelay,X.25,SMDS,andsoon)网络类型上没有手动指定neighborip地址

邻居一直都是ATTEMPT状态

13、在Router两边的frame-relaymap/dialermap语句声明中缺少了broadcast参数

14、全连接的fr网络中的一条pvc失效:

此时如果ospf配置成broadcast方式的话,将导致整个网络的崩溃,推荐将ospf配置成point-to-multipoint方式。

15、接口两边的MTU不匹配

在ciscoios12.0.3中加入了对mtu的检测,而低于这个版本的ios会忽略mtu检测,需要查看router的iosversion,

debugipospfadj的结果是发现有大量的dbd重传,出现loading的原因就是一边的router需要对mtu进行检测,而一边忽略。

R2#debugipospfadj

OSPFadjacencyeventsdebuggingison

R2#

OSPF:

Retransmittingrequestto131.108.2.1onSerial0

OSPF:

Databaserequestto131.108.2.1

OSPF:

sentLSREQpacketto131.108.1.1,length12

OSPF:

Retransmittingrequestto131.108.2.1onSerial0

解决方法是接口命令:

mtu4470

而不是:

ipmtu4470

这时候的状态是loading。

R2#showipospfneighbor

NeighborIDPriStateDeadTimeAddressInterface

131.108.2.11LOADING/-00:

00:

37131.108.1.1Serial0

还有一种mtu不匹配的情况是邻居关系是EXSTART,因为两边的mtu都需要检测,而mtu大小又不匹配.

R2#showipospfneighbor

NeighborIDPriStateDeadTimeAddressInterface

131.108.2.11EXSTART/-00:

00:

33131.108.1.1Serial0

R1#debugipospfadj

OSPF:

RetransmittingDBDto131.108.1.2onSerial0.1

OSPF:

SendDBDto131.108.1.2onSerial0.1seq0x1E55opt0x2flag0x7len32

OSPF:

RcvDBDfrom131.108.1.2onSerial0.1seq0x22ABopt0x2flag0x7len32mtu1500stateEXSTART

OSPF:

Nbr131.108.1.2haslargerinterfaceMTU

16、在broadcast网络上需要选举dr,而这时候两边的优先级又都是0

17、在AsynchronousInterfaces上的OSPF邻居关系

R1#

interfaceAsync1

descriptionASYNCLINETOR2

ipaddress131.108.1.1255.255.255.0

encapsulationppp

asyncmodededicated

dialerin-band

dialermapip131.108.1.2nameRouter2broadcast

dialer-group1

pppauthenticationchap

R2#

interfaceAsync1

descriptionASYNCLINETOR1

ipaddress131.108.1.2255.255.255.0

encapsulationppp

asyncmodededicated

dialerin-band

dialermapip131.108.1.1nameRouter2broadcast

dialer-group1

pppauthenticationchap

解决方法是在两个使用asyncdefaultrouting或者asyndynamicrouting接口命令

18、两个路由器的Routerid相同,ospf的master和slave关系不能确定

R2#debugipospfadj

OSPF:

RetransmittingDBDto131.108.2.1onSerial0

OSPF:

SendDBDto131.108.2.1onSerial0seq0x793opt0x2flag0x7len32

OSPF:

RcvDBDfrom131.108.2.1onSerial0seq0x25F7opt0x2flag0x7len32mtu0state

EXSTART

OSPF:

FirstDBDandwearenotSLAVE

19、因为router接口的物理问题而导致的ospfpacketchecksum错误,接着就重传的问题。

R2#showlog

%OSPF-4-ERRRCV:

Receivedinvalidpacket:

BadChecksumfrom131.108.1.1,Serial0

%OSPF-4-ERRRCV:

Receivedinvalidpacket:

BadChecksumfrom131.108.1.1,Serial0

R2#debugipospfadj

OSPFadjacencyeventsdebuggingison

R2#

OSPF:

Retransmittingrequestto131.108.2.1onSerial0

OSPF:

Databaserequestto131.108.2.1

OSPF:

sentLSREQpacketto131.108.1.1,length12

OSPF:

Retransmittingrequestto131.108.2.1onSerial0

20、更改网络状态以后发送单播信息包的信息包。

更改网络类型类型在所有路由器到点对多现在RTR-B收到为本身注定的仅这样保证OSPF路由器在PRI、BR点。

这更改OSPF工作情况在双向信息包并且RTR-C收到为本身注定I或者拨号程序接口将形成邻接。

  更改网络类型,输入以下配置命令,结束每条线路通过按Enter。

我们将更改RTR-B例如

  RTR-B#confterm

  RTR-B(config)#intbri0

  RTR-B(config-if)#ipospfnetworkpoint-to-multipoint

 RTR-B(config-if)#end

现在如果我们查看show命令为RTR-B,我们能验证网络类型点对多点并且状态是充分的

19、需要注意的是,如果有一端的接口是多接口,而另一端是子接口,那么需要将两边都修改为broadcast接口。

ROUTE1(config)#interfaceserial1  

ROUTE1(config-if)#noipospfnetworkbroadcast

20、输出显示出ROUTER1的Serial1接口是个unnumbered接口,使用Loopback0的地址,而ROUTER2的Serial1/1则配置有IP地址。

要解决这个问题,可以将两边路由器都楝配为unnumbered的,或者为两连路由器的接口都配置上IP地址。

在这个例子中我们把Router1的serial1口配置上IP地址。

  

showipospfneighbor命令查看邻状态的输出,现分别阐述如下:

  

  一、stat=init

  

  stat=init意味着本地路由器收到了邻居路由器发过来的hello包,但邻居路由器未收到本地路由器发出的hello包,故障诊断目的就是为了解决为什么邻居路由器会收不到hello包。

  

  几种可能性与解决办法如下:

  

  1、配置了ACL,需要在邻居路由器上检查是否在接口上配置了ACL,如果配置了ACL先把ACL取掉,如果此时故障解决,那么就是ACL的问题,需要对ACL进行修改。

可以通过showipint命令检查是否设置了ACL。

  

  2、使用showipospfint检查是否在接中上配置了ospf认证,如果配置了ospf认证,得确认认证类型与认证密码在所有的邻居路由器的相关接口上一致。

  

  3、检查电缆连接是否正确,如果两台路由器是通过交换机连接的,检查交换机上的配置是否正确。

  

  4、特殊地,对于NBMA网络如frame-relay,在使用了map声明的场合,记得在map声明的后面加上一个broadcast关键字。

  

  二、stat=exstart或stat=exchange

  

  停留在在这两个状态下,一般是mtu或其它第二层因素所导致的问题。

解决办法如下:

  

  1、检查相邻的几个路由器对应接口的MTU是否一致,要求所有的相邻路由器对应接口的MTU值设置成一样。

  

  2、使用大包ping对端路由器的接口IP地址,如果不通的话,说明第二层有问题,碰到这种情况,只有开case才能解决问题了。

  

  3、如果ospf在pri/bri的点对多点接口上配置,需要在接中上使用ipospfnetworkpoint-to-multipoint将该接口上的OSPF配置成点对多点状态

  

  4、最后,还是不要忘记了检查ACL。

  

  三、stat=loading

  

  邻接出现loading状态意味着可能有被破坏的包,一般情况下应该过一会儿就能恢复到full状态,如果出现了“ospf-4-badlsatype”错误信息的话,请参见OSPF故障诊断一文。

  

  四、stat=2way

  

  2way的状态一般出现在邻居之间通过以太网这种广播式网络进行连接的情况下。

首先应检查是否和DR和BDR建立起了全邻接关系。

做为OSPF的一个习惯,router只会和DR/BDR建立全邻接关系,和其它路由器之间就会停留在2way状态。

  

  使用showipospfint检查是否所有的邻接路由器的ospfpriority都设置为0了,如果所有的ospfpriority都设置为0了,将不可能先进选举出DR和BDR,你需要将ospfpriority设置为1。

  

  五、输出中看不到stat。

  

  如果命令的输出中看不到stat的相关值,那么就证明连接有问题或ACL配置不当。

解决办法如下:

  

  1、使用showint命令,确认intisup,lineprotocolisup.如果没正确,证明链路有问题。

  

  2、使用ping命令检查能否ping通邻居路由器的接口。

  

  3、如果能ping通。

需要使用showipospfint检查是否所有的邻居路由器的对应接口上的ospf是不是都enable了,检查是否设置成了passive接口(在ospfpassive接口上不会发送hello包)。

  

  4、最后,还是不要忘记了检查ACL的配置。

在路由表里看不到OSPF路由信息的故障现象的处理方法

  

  在路由表里看不到ospf的路由信息分为这几种情况:

所有ospf路由都看不到、只是外部路由信息看不到、仅汇总路由信息看不到、仅NSSA路由信息看不到。

对于最后一种情况,一般是直接开case,向ciscotac中心求助。

下面分别对前三种故障现象做详细的阐述。

  

  一、所有的路由信息都看不到

  

  出现这种情况时,应该进行的检查任务如下:

  

  1、使用showipospfneighbor命令,检查路由器是否与邻居(点对点链路)或DR建立起了全邻接关系,详细的检查办法请参见OSPF邻接状态一文。

  

  2、对于帧中继网络,需要在点对多点子接口上使用ipospfnetworkpoint-to-multipoint将该子接口配置为ospf的点对多点网络,或者将点对多点子接口转化为点对点子接口。

  

  3、在有冗余串行连接的网络中需要特别注意物理接口未被交换。

在以下几种情况中,会在数据库中有路由信息,但这些路由信息并不会在路由表中出现:

  

  l网络类型不匹配:

OSPF:

hello间隔broadcast/点到点:

10/40秒,nonbroadcast/点到多点:

30/120秒。

因为hello间隔不一样,将无法通告路由更新。

解决办法是使用一个链路上两端的网络类型匹配。

  

  l地址不匹配:

有邻居间有两条串行链路连接时,有可能会因为串口线插错了,导致网络地址不匹配,解决办法是交换串口电缆。

  

  l点对点链路的一端网络地址或子网掩码错误:

如一端是10.1.1.1/24,一端是10.2.2.2/24,应更正为一致。

  

  l一端配置为unnumbered,另一端配置为numbered:

这种情况也会出问题,应该都配置成unnumbered或都配置成numbered。

  

  l全连接的fr网络中的一条pvc失效:

此时如果ospf配置成broadcast方式的话,将导致整个网络的崩溃,推荐将ospf配置成point-to-multipoint方式。

  

  l无法通过外部路由进程得到转地址的路由。

  

  l分发表(distributelist)禁止了路由信息的更新:

合理配置distributelist.

  

  更为详细的分析,可以参见OSPF故障排除实例分析一文

  

  二、仅外部路由信息(其它路由进程产生的路由信息)看不到

  

  出现这种情况进应用使用命令showipospfdataextx.x.x.x命令检查OSPF数据库中是否有外部的LSA存在。

需要注意以下几点:

  

  1、在存根(stub)区域中不允许出现外部路由。

  

  2、在redistribution命令中需要写出subnets关键字。

  

  3、转发地址必须在内部或区域内路由表中。

转发地址不能是0.0.0.0

  

  三、仅汇总路由信息丢失(其它area的路由信息)

  

  小心检查area0的配置是否正确,area0是否连续。

Are

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1