常用路由器诊断命令和工具.docx

上传人:b****7 文档编号:8698256 上传时间:2023-02-01 格式:DOCX 页数:24 大小:76.57KB
下载 相关 举报
常用路由器诊断命令和工具.docx_第1页
第1页 / 共24页
常用路由器诊断命令和工具.docx_第2页
第2页 / 共24页
常用路由器诊断命令和工具.docx_第3页
第3页 / 共24页
常用路由器诊断命令和工具.docx_第4页
第4页 / 共24页
常用路由器诊断命令和工具.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

常用路由器诊断命令和工具.docx

《常用路由器诊断命令和工具.docx》由会员分享,可在线阅读,更多相关《常用路由器诊断命令和工具.docx(24页珍藏版)》请在冰豆网上搜索。

常用路由器诊断命令和工具.docx

常用路由器诊断命令和工具

3 常用诊断命令和工具

介绍了NE80E/40E提供的故障处理手段,包括ping命令、tracert命令、display命令、debugging命令、reset命令和日志功能。

∙3.1ping命令

介绍了Ping的原理、功能以及使用ping命令解决故障的实例。

∙3.2tracert命令

介绍了Tracert的原理、功能以及使用tracert命令解决故障的实例。

∙3.3display命令

介绍了display命令的功能和使用方法,包括正则表达式在display命令中的应用。

∙3.4debugging命令

介绍了debugging命令的功能和使用方法、与display命令的配合关系。

∙3.5reset命令

介绍了reset命令的功能和使用方法。

∙3.6日志功能

介绍了NE80E/40E的日志功能。

3.1 ping命令

介绍了Ping的原理、功能以及使用ping命令解决故障的实例。

∙3.1.1原理

∙3.1.2功能

∙3.1.3ping命令介绍

∙3.1.4使用ping命令进行故障处理

3.1.1 原理

“ping”这个词源于声纳定位操作,指来自声纳设备的脉冲信号。

ping命令的作用类似于发出一个短促的雷达波,通过收集回波来判断目标。

即,源站点向目的站点发ICMPEchoRequest报文,目的站点收到后回送ICMPEchoReply报文,以此检测两个节点间在IP层的可达性,检测网络层是否连通。

3.1.2 功能

ping命令用于检查IP网络连接及主机是否可达。

3.1.3 ping命令介绍

NE80E/40E平台的ping命令

本节介绍NE80E/40E平台的ping命令中几个常用参数。

ping[-asource-ip-address|-ccount|-spacketsize|-ttimeout]*host

∙-asource-ip-address:

设置发送ICMPEchoRequest报文的源IP地址。

∙-ccount:

设置发送ICMPEchoRequest报文的次数,缺省值为5。

∙-spacketsize:

设置发送ICMPEchoRequest报文的长度(不包括IP和ICMP报文头),以字节为单位,缺省值为56。

∙-ttimeout:

设置ping报文的超时时间,缺省值为2000ms。

说明:

NE80E/40E实现多种应用环境下的ping功能,例如,对私网报文的ping、对VRRP虚拟路由器的ping、对LSP的ping、对IPv6的ping等等。

对这些功能的详细介绍请参考《NE80E/40E配置指南》。

例如,向主机110.1.1.1发出2个8100字节的ping报文。

ping-c2-s8100110.1.1.1

PING110.1.1.1:

8100databytes,pressCTRL_Ctobreak

Replyfrom110.1.1.1:

bytes=8100Sequence=0ttl=123time=538ms

Replyfrom110.1.1.1:

bytes=8100Sequence=1ttl=123time=730ms

---110.1.1.1pingstatistics---

2packetstransmitted

2packetsreceived

0.00%packetloss

round-tripmin/avg/max=538/634/730ms

Windows平台的ping命令

本节介绍Windows平台的ping命令中几个常用参数。

ping[-nnumber|-t|-lnumber]*host

∙-nnumber:

设置发送ICMPEchoRequest报文的次数,缺省值为5。

∙-t:

持续地ping,直到被人为中断,可以暂时中止ping命令并查看当前的统计结果,而则可以中断命令的执行。

∙-l:

设置ping报文所携带的数据部分的字节数。

例如,向主机110.2.1.1发出2个数据部分大小为3000字节的ping报文。

C:

\>ping-l3000-n2110.2.1.1

Pinging110.2.1.1with3000bytesofdata

Replyfrom110.2.1.1:

bytes=3000time=321msTTL=123

Replyfrom110.2.1.1:

bytes=3000time=297msTTL=123

Pingstatisticsfor110.2.1.1:

Packets:

Sent=2,Received=2,Lost=0(0%loss),

Approximateroundtriptimesinmilli-seconds:

Minimum=297ms,Maximum=321ms,Average=309ms

说明:

Windows平台ping命令其他参数的介绍请参考Windows在线帮助。

3.1.4 使用ping命令进行故障处理

案例一:

连通性问题还是性能问题

∙案例描述

工程师小L,在配置完一台路由器后执行ping命令检测链路是否通畅,发现5个报文都没有ping通。

检查双方的配置文件和路由表,没有找到错误原因。

重复执行了一遍相同的ping命令,这一次5个报文中有1个ping通了——原来是线路质量不好,存在比较严重的丢包。

小L又配置了一台路由器,执行ping命令访问Internet上某站点的IP地址,但没有ping通。

吸取上次教训,小L再一次ping了20个报文,仍旧没有响应。

小L断定是网络故障,但检查配置链路没有发现问题。

最后,小L采取逐段检测的方法对链路中的网关进行逐级测试,发现都可以ping通,但响应时间越来越长,最后一个网关的响应时间在1800ms左右。

会不会是由于超时而导致显示为ping不同呢?

小L将ping命令报文的超时时间改为4000ms,这次成功ping通了,所有报文响应时间都在2200ms左右。

∙建议和总结

真的是ping不通吗?

这个问题需要定位清楚,连通性问题和性能问题的关注点是不一样的,问题定位错误必然导致排错过程的周折。

ping命令缺省发送5个报文,超时时长是2000ms。

如果ping不通,建议用带参数-c和-t的ping命令再执行一遍,如:

ping-c20-t4000ip-address

即,连续发送20个报文,每个报文的超时时长为4000ms,这样就可以判断出到底是连通性问题还是性能问题。

案例二:

使用大包ping对端进行MTU不一致的故障处理

∙案例描述

一台使用NE80E/40E软件的NE路由器与其他厂商的路由器互连,并运行OSPF协议。

配置完毕后,一切正常,并在相当长的时间内运转稳定。

但两个月后,用户反馈网络中断。

∙采用以下方式对问题定位:

1.登录到两台路由器上,发现双方连接正常,可以相互ping通对端地址,但OSPF协议中断;

2.登录到NE路由器查看邻居状态,发现邻居状态机处于Exstart状态。

打开相应的调试开关查看报文信息,发现双方都可以收到Hello报文,但NE路由器发送DD报文后,一直没有收到对方回应的DD报文;

3.登录另一台路由器,打开相应的调试开关,发现对方收到NE路由器发送的DD报文后,发送了相应的DD报文进行回应。

因此,NE路由器没有收到对方发出的DD回应报文,但对方确实发出来了。

∙原因分析

4.双方能够接收到Hello报文,说明链路通畅,多播报文收发也没有问题。

5.推断可能是对方发送的DD报文有错误,导致NE路由器拒绝接受,但查看相应的信息,并没有报告接收到错误的DD报文。

6.仔细查看某厂商路由器的调试信息发现这个DD报文很大有2000多字节。

会不会是由于报文太大导致的问题呢?

试着ping了一个2000字节的报文,结果不通。

那么故障原因很可能是--由于双方的MTU不一致导致大包不通。

∙处理过程:

检查配置,发现对方路由器的MTU设置为4000多而NE路由器的MTU设置为1500,于是修改对端路由器的MTU为1500。

故障处理。

那么为什么工程初期没有问题呢?

这是因为前期DD报文长度小于1500字节,而后来网络扩容导致路由信息过多使DD报文的长度超过了1500字节。

∙建议和总结:

缺省情况下,ping命令发送的报文大小是56个字节,所以显示的ping通信息只是表示56字节的报文可以通而并不一定表示其他大小的报文仍旧可以通。

所以,应当善于使用ping的其他参数来进行故障处理。

案例三:

A能ping通B,B就一定能ping通A吗

∙现象描述

图3-1 ping案例组网图

在RouterA上配置一条指向100.2.2.2/16的静态路由。

[RouterA]iproute-static100.2.2.2255.255.0.0100.1.1.2

在RouterA上ping路由器RouterB的以太网接口地址100.2.2.2,可以ping通;但在RouterB上ping路由器RouterA的以太网接口地址100.3.3.3,却无法ping通。

∙原因分析

1.在RouterB上执行displayiprouting-table命令,发现没有到100.3.0.0/16的路由,所以RouterB上ping不通RouterA的以太网接口100.3.3.3。

2.但是为何在RouterA上可以ping通100.2.2.2呢?

同样是没有回程路由呀?

3.打开路由器上的IP报文调试开关,发现从RouterA上发出的ICMP报文的源地址填写的是100.1.1.1而不是100.3.3.3,由于两台路由器的POS接口处于同一网段,所以,响应报文可以顺利到达RouterA。

∙建议和总结

在不考虑防火墙前提下,A能够ping通B则B一定能够ping通A,这句话的对错取决于A和B是指主机还是指路由器。

4.如果是指两台主机,上面的描述就是正确的。

5.如果是指两台路由器,上面的描述就不应正确。

这是因为,路由器通常会有多个IP地址。

当从一台路由器上执行ping命令时,ICMPEcho报文的源地址选择哪一个呢?

实际情况是,路由器选择发出报文的接口的IP地址。

6.在考虑配置NAT的前提下,即使是两台主机,公网主机ping不通私网主机。

3.2 tracert命令

介绍了Tracert的原理、功能以及使用tracert命令解决故障的实例。

∙3.2.1原理

∙3.2.2功能

∙3.2.3tracert命令介绍

∙3.2.4使用tracert命令进行故障处理

3.2.1 原理

“tracert”的全称是traceroute,用于探测报文在源节点到目的节点之间所经过的路径。

tracert利用IP报文的TTL域每经过一个路由器转发后减一,当TTL=0时向源节点报告TTL超时这个特性实现。

1.首先发送一个TTL为1的UDP报文,因此第一跳发送回一个ICMP错误消息,明此数据报不能被发送;

2.之后再发送一个TTL为2的报文,在第二跳返回TTL超时,这个过程不断进行,直到到达目的地;

3.在目的地,由于数据报中使用了无效的端口号(缺省为33434),目的主机会返回一个ICMP目的地不可达消息,该tracert操作结束。

在上述过程中,tracert记录下每一个ICMPTTL超时消息的源地址,从而获得报文到达目的地所经过的网关的IP地址。

3.2.2 功能

tracert命令用于测试报文从发送主机到目的地所经过的网关,主要用于检查网络连接是否可达,以及初步定位网络发生故障的位置。

3.2.3 tracert命令介绍

NE80E/40E平台的tracert命令

本节介绍NE80E/40E平台的tracert命令中几个常用参数。

tracert[-asource-ip-address|-ffirst-TTL|-mmax-TTL|-pport|-qnqueries|-wtimeout]*host

∙-asource-ip-address:

设置tracert报文的IP地址。

∙-ffirst-TTL:

设置初始TTL。

∙-mmax-TTL:

设置最大TTL。

∙-pport:

设置的主机的端口号,一般无须更改此选项。

∙-qnqueries:

设置每次发送的探测数据包的个数。

∙-wtimeout:

设置报文的超时时间,单位是秒。

∙host:

目的主机的IP地址。

例如,查看去往目的主机100.1.1.1所经过的网关。

tracert100.1.1.1

tracerouteto100.1.1.1(100.1.1.1)30hopsmax,40bytespacket

1100.10.10.114ms5ms5ms

2100.10.2.3010ms5ms5ms

3100.10.3.2110ms5ms5ms

4100.20.1.17175ms160ms145ms

5110.1.27.32185ms210ms260ms

6100.1.1.1230ms185ms220ms

说明:

NE80E/40E实现多种应用环境下的tracert功能,例如,对私网地址的tracert、对LSP的tracert、对IPv6的tracert等等。

对这些功能的详细介绍请参考《NE80E/40E配置指南》。

Windows平台的tracert命令

在Windows平台上,tracert命令的格式如下:

tracert[-d|-hmax-TTL|-jhost-list|-wtimeout]*host

∙-d:

不解析主机名;

∙-hmax-TTL:

设置最大TTL。

∙-jhost-list:

设置松散源地址路由列表。

∙-wtimeout:

设置UDP报文的超时时间。

例如,查看去往目的主机100.1.1.1所经过的前两个网关。

C:

\>tracert-h2100.1.1.1

Tracingrouteto100.1.1.1overamaximumof2hops:

13ms2ms2ms100.10.10.1

25ms3ms2ms100.10.20.2

Tracecomplete.

3.2.4 使用tracert命令进行故障处理

案例一:

使用tracert命令定位不当的网络配置点

∙现象描述

图3-2 tracert命令定位故障组网图一

在图3-2中,RouterB和RouterC同属于一个运行RIPv2协议的网络,主机100.4.0.2访问数据库服务器100.5.0.2,用户反映访问速度慢。

∙相关信息显示

登录到RouterC,使用带参数的ping远端服务器100.5.0.2,显示如下:

ping-c10-s4000-t6000100.5.0.2

PING100.5.0.2:

4000databytes,pressCTRL_Ctobreak

Replyfrom100.5.0.2:

bytes=4000Sequence=0ttl=249time=552ms

Replyfrom100.5.0.2:

bytes=4000Sequence=1ttl=249time=5733ms

Replyfrom100.5.0.2:

bytes=4000Sequence=2ttl=249time=552ms

Replyfrom100.5.0.2:

bytes=4000Sequence=3ttl=249time=5714ms

Replyfrom100.5.0.2:

bytes=4000Sequence=4ttl=249time=552ms

Replyfrom100.5.0.2:

bytes=4000Sequence=5ttl=249time=5711ms

Replyfrom100.5.0.2:

bytes=4000Sequence=6ttl=249time=552ms

Replyfrom100.5.0.2:

bytes=4000Sequence=7ttl=249time=5709ms

Replyfrom100.5.0.2:

bytes=4000Sequence=8ttl=249time=552ms

Replyfrom100.5.0.2:

bytes=4000Sequence=9ttl=249time=5710ms

∙原因分析

1.上面的ping显示出一个规律:

偶数报文返回的时长是奇数报文的10倍还多。

初步推断,奇数报文和偶数报文采用了不同的路径传输。

2.使用tracert命令来追踪路径。

在RouterC上,tracert远端RouterA的以太网接口100.5.0.1。

tracert-q8100.5.0.1

tracerouteto100.5.0.1(100.5.0.1)30hopsmax,40bytespacket

1100.4.0.16ms4ms4ms4ms4ms4ms4ms4ms

......

5100.3.0.220ms16ms15ms16ms16ms16ms16ms16ms

6100.5.0.130ms278ms25ms279ms25ms278ms25ms277ms

从上面的显示可以看到,直至100.3.0.2,UDP探测报文的返回时长都基本一致,而到100.5.0.1时,则发生明显变化,出现奇数报文时长短,偶数报文时长长的现象。

据此判断,问题发生在RouterB和RouterA之间。

3.询问该段网络的管理员,得知RouterB和RouterA之间有一主一备两条串行链路,主链路带宽为155Mbit/s(POS2/0/0之间),备份链路为2Mbit/s(Serial3/0/0之间)。

两路由器间配置了如下的静态路由。

配置RouterB:

iproute-static100.5.0.0255.255.0.0100.1.0.2

iproute-static100.5.0.0255.255.0.0100.2.0.2

配置RouterA:

iproute-static0.0.0.00.0.0.0100.1.0.1

iproute-static0.0.0.00.0.0.0100.2.0.1

由于配置时没有指定静态路由的优先级,两条路由项的优先级都采用了缺省值60。

因此,两条路由同时出现在路由表中,实现的是负载分担,而不是备份。

∙处理过程

确定了故障原因后,有两种处理方法可以解决此问题:

4.继续使用静态路由,更改优先级

RouterB的主链路使用缺省优先级60,备份链路优先级改为100:

[RouterB]iproute-static100.5.0.0255.255.0.0100.1.0.2

[RouterB]iproute-static100.5.0.0255.255.0.0100.2.0.2100

RouterA进行类似更改:

[RouterA]iproute-static0.0.0.00.0.0.0100.1.0.1

[RouterA]iproute-static0.0.0.00.0.0.0100.2.0.1100

这样,只有当主链路发生故障时,备份链路的路由项才会出现在路由表中。

5.在两路由器上运行动态路由协议,如IS-IS、OSPF等,但不要运行RIP(因为RIP仅以hop作为Metric)

o建议和总结

本案例展示了如何通过ping命令和tracert命令的配合,定位网络问题的故障点。

在规模较大的网络中,维护人员可能无法沿路径逐个排查,这种情况下,迅速定位出发生问题的线路或路由器非常重要。

案例二:

使用tracert命令发现路由环路

∙现象描述

图3-3 tracert命令定位故障组网图二

如图3-3,三台路由器均配置静态路由,配置完成后,登录到RouterA上ping主机100.4.0.2,不能ping通。

∙相关信息显示

ping-c6-t5000100.4.0.2

PING100.4.0.2:

56databytes,pressCTRL_Ctobreak

Requesttimeout

Requesttimeout

Requesttimeout

Requesttimeout

Requesttimeout

Requesttimeout

tracert100.4.0.2

tracerouteto100.4.0.2(100.4.0.2)30hopsmax,40bytespacket

1100.1.0.17ms5ms5ms

2100.1.0.27ms6ms6ms

?

?

29100.1.0.125ms25ms16ms

30100.1.0.218ms17ms17ms

∙原因分析

从tracert命令的输出信息可以发现,RouterA和RouterB间产生了路由环路。

由于是配置的是静态路由,推断RouterA或RouterB的静态路由配置错误。

o检查RouterA的配置,配置的是缺省静态路由,没有错误:

iproute-static0.0.0.00.0.0.0100.1.0.1

o检查RouterB的配置,发现配置的到100.4.0.0网络的静态路由如下:

iproute-static100.4.0.0255.255.0.0100.1.0.2

o下一跳配置的是100.1.0.2,而不是100.3.0.1。

正是这一错误的配置导致了路由环路的产生。

∙处理过程

修改RouterB的配置:

[RouterB]undoiproute-static100.4.0.0255.255.0.0100.1.0.2

[RouterB]iproute-static100.4.0.0255.255.0.0100.3.0.1

∙建议和总结

使用tracert命令,很容易发现路由环路等问题。

当路由器A认为路由器B知道到达目的地的路径,而路由器B认为路由器A知道目的地时,路由环路就发生了。

使用ping命令只能知道接收端的

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

当前位置:首页 > 高等教育 > 农学

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

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