【组网图】
路由器B通过路由器A连接到internet,路由器B下联pc。
【故障描述】
路由器B下面的pc发现不能上网,ping不通路由器A的接口地址。从互联网上可以登陆到路由器A上。从路由器A上ping不通路由器B接口地址。
【处理过程】
远程登陆到路由器A上,建议采取以下步骤:
查看ARP表项,看是否有对端路由器的arp表项。
<WNMC-R4680> display arp
Type: S-Static D-Dynamic
IP Address MAC Address Type Vpn-instance Name Interface
210.45.*.* 00c0-4c39-52c2 D Eth0/0/1
61.191.*.* 0011-096f-931e D Eth0/0/0
61.191.*.* 00e0-8121-7914 D Eth0/0/0
61.191.*.* 0003-4731-1a0a D Eth0/0/0
61.191.*.* 00d0-b788-83f8 D Eth0/0/0
61.191.*.* 0005-5e4a-7f1e D Eth0/0/0
多次查看端口状态。
建议首先清空接口计数(reset counters interface GigabitEthernet 1/0/0)。转发问题查看接口信息是非常有用的。一定要多次查看,注意比较。
每次显示接口信息前请都显示一次时钟信息:
<WNMC-R4680>display clock
<WNMC-R4680>display interface GigabitEthernet 1/0/0
GigabitEthernet1/0/0 current state :UP
Line protocol current state :UP
Description : S6506R
The Maximum Transmit Unit is 1500, Hold timer is 10(sec)
Internet Address is 192.168.100.5/30
IP Sending Frames' Format is PKTFMT_ETHNT_2, Hardware address is 00e0-fc3e-058a
Media type is twisted pair, loopback not set, promiscuous mode not set
1000Mb/s, Full-duplex, link type is autonegotiation
Output flow-control is disabled, input flow-control is disabled
Output queue : (Urgent queuing : Size/Length/Discards) 0/50/0
Output queue : (Protocol queuing : Size/Length/Discards) 0/500/0
Output queue : (FIFO queuing : Size/Length/Discards) 0/75/0
Last clearing of counters: Never
Last 300 seconds input rate 0.00 bytes/sec, 0 bits/sec, 0.00 packets/sec
Last 300 seconds output rate 8.19 bytes/sec, 65 bits/sec, 0.10 packets/sec
Input: 1588753569 packets, 2627628937 bytes, 1588752978 buffers
1 broadcasts, 552568 multicasts, 0 pauses
58988 errors, 0 runts, 0 giants
0 crc, 0 align errors, 0 overruns
0 dribbles, 58988 drops, 0 no buffers
Output:1269789475 packets, 919070957 bytes, 1269789475 buffers
783 broadcasts, 95173 multicasts, 0 pauses
0 errors, 0 underruns, 0 collisions
发现端口up,排除物理故障(如端口down,建议检查网线及对端设备),发现端口有流量发出,但是没有流量进入,接口有收报文错误统计增加。端口队列无拥塞。如端口有大量其他错误报文一直增加,更换网线,用替换法排查是哪一方设备问题。
打开deb arp packet,ping对端路由器接口地址。
清空arp表项(reset arp dynamic),查看是否发出arp请求报文,及是否收到响应报文,报文的mac地址是否正确。此时请求地址是192.168.100.6:
报文格式如下,只是报文源目的地址需要变化一下。
ARP请求报文:
*0.88602280 WNMC-R4680 ARP/8/arp_send:Send an ARP Packet, operation : 1, sender_eth_addr : 00c0-4c39-52c2, sender_ip_addr : 210.45.50.1, target_eth_addr : 0000-0000-0000, target_ip_addr : 210.45.50.2
ARP响应报文:
*0.88602280 WNMC-R4680 ARP/8/arp_rcv:Receive an ARP Packet, operation : 2, sender_eth_addr : 00e0-fc2c-9707,sender_ip_addr : 210.45.50.2, target_eth_addr : 00c0-4c39-52c2, target_ip_addr : 210.45.50.1
如果没有发送arp请求报文,且路由器上也没有对端设备arp表项,请将相关信息收集提交产品接口人处理。
如果报文有发没有收,基本可以判断是对端设备问题,但是还要进一步判断底层是否发出arp报文,如果底层发出了arp请求报文就可以断定是对端设备问题,采取方法如下:
打开底层报文收发开关,ping对端路由器接口地址,查看是否有报文收发。
debugging physical(该命令是万能利器,如果在流量不大的情况下,基本上可以用一个调试命令就可以定位所有问题,只是看起来费劲一点而已)
大家根据说明可以简单判断报文是否正确。如果端口流量较大,请慎用该命令。
报文内容如下粗体部分,现做一简单说明:
开头14字节是以太网帧头:
00 C0 4C 39 52 C2 00 E0 FC 2C 97 07 08 00
红色为目的mac地址,蓝色为源mac地址,0800表示IP报文。如果是0806表示arp报文。
后20字节是IP报文头:
45 00 00 28 9C 85 40 00 7E 06 97 E1 D2 2D 32 02 D2 2D F2 0B
橙色是协议号,06是tcp,01是icmp,17是udp。红色为目的IP地址210.45.50.2,蓝色为源IP地址210.45.50.11。其他报文内容参考相关资料。
关于后续的tcp/udp等报文内容也请查看相关资料。
此时需要查看有无收发报文,报文的以太网mac地址,IP地址等是否正确。
<WNMC-R4680> debugging physical all interface GigabitEthernet 1/0/0
(Ethernet0/0/1)PHY/PKT:
Packet Output, Packet Len =54,Partial data as follows:
00 C0 4C 39 52 C2 00 E0 FC 2C 97 07 08 00 45 00
00 28 9C 85 40 00 7E 06 97 E1 D2 2D 32 02 D2 2D
F2 0B 34 2B 00 50 14 80 05 34 1C 19 42 3B 50 10
FF FF 3A E8 00 00
*0.89272730 WNMC-R4680 PHYD/8/debugging:
(Ethernet0/0/1)PHY/PKT:
Packet Input, Packet Len = 1514, Partial data as follows:
00 E0 FC 2C 97 07 00 C0 4C 39 52 C2 08 00 45 00
05 DC E2 F9 40 00 7B 06 60 BA D2 2D E0 0A D2 2D
32 02 06 DB 37 20 43 DB BD A8 AD E4 D9 1D 50 10
FD EF 24 E5 00 00 E7 DD 00 00 0A 00 47 1F 82 00
如果此时底层没有收发报文,或是路由器报文发送错误,请将相关信息收集后发给相关产品接口人处理。同时需要再收集以下信息:
<WNMC-R4680>display diagnostic-information
<WNMC-R4680>display cpu-usage
<WNMC-R4680>display memory
进入隐含模式,多次显示以下3种信息:
[WNMC-R4680-hidecmd]display clock
[WNMC-R4680-hidecmd]display task
[WNMC-R4680-hidecmd]display interface GigabitEthernet 1/0/0
进入hide模式,收集以下信息: /注,某些单板可能没有信息可以显示,比如AR46主控板上的2个以太口/
[4680-hidecmd]_ 3
Password: 8040
[4680-hide]tshow eth 3/0/0 bd
[4680-hide]tshow eth 3/0/0 macreg
[4680-hide]tshow eth 3/0/0 pcicfg
[4680-hide]tshow eth 3/0/0 phyreg
[4680-hide]tshow eth 3/0/0 statistics
5.在对端路由器上重复类似上述步骤。判断故障原因。
6.收集完上述相关信息后,可以尝试以下操作看能否恢复:
shut/undo shut端口
插拔网线
C.重启路由器
D.替换法将pc直接接到该端口看能否ping通路由器,如果不能基本可以判断模块损坏,建议先更换处理。
E.其他可以想到的方法,欢迎大家补充。
输出故障处理报告,进行总结。
如故障没有定位,请将以上信息收集整理后提交相关产品接口人处理。
附件:arp请求报文的结构:路由器上报文基本相同。大家可以用ethereal抓一下报文看看。
Arp应答报文:路由器上的报文格式基本相同