网络测试和故障诊断.docx
《网络测试和故障诊断.docx》由会员分享,可在线阅读,更多相关《网络测试和故障诊断.docx(14页珍藏版)》请在冰豆网上搜索。
网络测试和故障诊断
第二十六章网络测试和故障诊断
本章主要描述如何使用迈普路由器网络测试工具,在出现故障时该如何诊断。
本章主要内容:
●网络测试工具
●如何诊断网络故障
26.1网络测试工具
路由器在命令行状态下提供了四类测试工具,本节分别介绍如何使用这四种工具。
本节主要内容:
●ping命令——测试网络连通性及目标的可达性
●traceroute命令——测试数据包的路由信息
●netstat命令——查看各个网络接口的状态及详细的统计信息
●show命令——查看系统统计信息、系统状态
26.1.1ping命令——测试网络连通性及目标的可达性
ping主要用于检查网络连接状况及主机是否可达,当前ping工具只支持IP协议。
ping命令可以运行在普通用户模式或特权用户模式下,其语法分别如下:
普通用户模式下:
router>ping?
命令
描述
>
设置ping的目的主机名或目的地址
选择VPN路由表项
特权用户模式下:
router#ping?
命令
描述
>
设置ping的目的主机名或目的地址
选择VPN路由表项
注:
1.在ping的过程中,可以用Ctrl+Shift+6组合键来停止。
2.命令执行结果输出包括:
对每一个输出报文的响应情况,如果超时以后还没有收到响应报文,则输出.,否则输出!
;
最后的统计信息,包括发送报文数、接收报文数、响应报文百分比和响应时间最小、平均和最大值。
用户在执行ping后,交互地输入可选参数即可。
下面以特权用户模式下的两种情形为例说明其参数及其含义。
【情形1】
这种情形下,ping命令不带扩展命令选项,其格式如下:
router#ping
选项
描述
TargetIPaddress:
192.168.8.1
目的地址
Repeatcount[5]:
20
重复发送ICMP请求报文的个数
Datagramsize[76]:
1000
指定ICMP请求报文的大小(1000byte)
Timeoutinseconds[2]:
1
允许时延(此时延过后未收到回答即视为丢包)
Extendedcommands[no]:
n
扩展命令?
Sweeprangeofsizes[no]:
n
是否指定ICMP请求报文大小的范围
【输出结果】
Presskey(ctrl+shift+6)interruptit.
Sending20,1000-byteICMPEchosto192.168.8.1,timeoutis1seconds:
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
Successrateis100%(20/20).Round-tripmin/avg/max=0/12/16ms
【情形2】
当用户选择扩展命令选项后,可以设置源路由、记录时戳、显示详细信息等选项,其格式如下:
router#ping
选项
描述
TargetIPaddress:
128.255.255.1
Repeatcount[5]:
1930
Datagramsize[76]:
1000
Timeoutinseconds[2]:
1
Extendedcommands[no]:
y
Sourceaddressorinterface:
128.255.255.223
Typeofservice[0]:
1
SetDFbitinIPheader?
[no]:
y
IP层是否允许对ICMP报文分段
Validatereplydata?
[no]:
y
是否对收到的ICMP响应报文的数据进行检查
Datapattern[abcd]:
asdf
选项指定ICMP请求报文中的数据值
Loose,Strict,Record,Timestamp,Verbose[none]:
L
指定宽松的源站选路/严格的源站选路/记录路由/时间戳
Sourceroute:
128.255.255.223128.255.255.1
Loose,Strict,Record,Timestamp,Verbose[LV]:
r
Numberofhops[6]:
3
指定跳数
Loose,Strict,Record,Timestamp,Verbose[LVR]:
t
Numberofhops[2]:
2
Loose,Strict,Record,Timestamp,Verbose[LVRT]:
v
Loose,Strict,Record,Timestamp,Verbose[LRT]:
Sweeprangeofsizes[no]:
y
是否指定ICMP请求报文大小的范围
Sweepminsize[76]:
最小值
Sweepmaxsize[18024]:
2000
最大值
Sweepinterval[1]:
10
相邻两个ICMP报文大小增长的间隔
【输出结果】
Presskey(ctrl+shift+6)interruptit.
Sending1930,[74..2000]-byteICMPEchosto128.255.255.1,timeoutis1seconds:
PackethasIPoptions:
Totaloptionbytes=40.
Loosesourceroute:
128.255.255.223128.255.255.1
Recordroutenumber:
3
Recordtimestampnumber:
2
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
!
........
Successrateis64%(1235/1930).Round-tripmin/avg/max=0/12/1000ms.
26.1.2traceroute命令--测试数据包的路由信息
traceroute用于测试数据包从源站到目的站所经过的网关,它主要用于测试网络连接是否可达,以及分析网络什么地方发生了故障。
Traceroute的执行过程是:
首先发送一个TTL为1的数据包,因此第一跳路由器发送回一个ICMP错误消息以指明此数据包不能被发送(因为TTL=0),之后此数据包被重新发送,TTL为2,同样第二跳路由器返回ICMP差错报文(因为经过第二个路由器时,TTL=0),这个过程不断进行,直到到达目的地。
执行这个过程的目的是记录每一个ICMPTTL超时消息的源地址,以提供一个数据包到达目的地所经历的路径。
Traceroute同样可以运行在普通用户模式和特权用户模式下,其语法分别如下:
普通用户模式下:
router>traceroute?
命令
描述
>
设置traceroute的目的主机名或目的地址
选择VPN路由表项
特权用户模式下:
router#traceroute?
命令
描述
>
设置traceroute的目的主机名或目的地址
选择VPN路由表项
注:
在traceroute的过程中,可以用Ctrl+Shift+6组合键来停止。
命令执行结果输出包括:
发送出去的ICMP报文的信息(TTL值、IP头选项等)
详细列出ICMP报文从源到目的地经过的所有路由器的信息(接口地址、每个探测报文的平均往返时间或ICMP报文差错消息)
用户在执行traceroute后,可以交互地输入可选参数即可。
下面以特权用户模式下的两种情形为例说明其参数及其含义:
【情形1】
这种情形下用户不选择扩展命令选项,只是提供基本选项的参数即可。
router#traceroute
选项
描述
TargetIPaddress:
192.168.8.254
目的地址
Sourceaddressorinterface:
128.255.255.223
指定源地址/接口
Timeoutinseconds[2]:
允许时延
Probecount[3]:
发送具有同一TTL值探测报文的重复次数
MinimumTimetoLive[1]:
发送探测报文的缺省最小TTL值
MaximumTimetoLive[30]:
发送探测报文的缺省最大TTL值
PortNumber[33434]:
接收探测报文的目的站点缺省UDP端口号
Loose,Strict,Record,Timestamp,Verbose[none]:
源站路由选路选项:
宽松,严格,记录路由,时间戳详细
【输出结果】
Typeescapesequencetoabort.
Tracingtherouteto192.168.8.254,minttl=1,maxttl=30.
12.1.1.116ms33ms16ms
2192.168.8.25416ms33ms16ms
【情形2】
当用户选择扩展命令时,可以设置源路由、记录时戳、显示详细信息等选项。
其格式如下:
router#traceroute
选项
描述
TargetIPaddress:
192.168.8.254
Sourceaddressorinterface:
128.255.255.223
Timeoutinseconds[2]:
1
Probecount[3]:
发送具有同一TTL值探测报文的重复次数
MinimumTimetoLive[1]:
发送探测报文的缺省最小TTL值
MaximumTimetoLive[30]:
发送探测报文的缺省最大TTL值
PortNumber[33434]:
接收探测报文的目的站点缺省UDP端口号
Loose,Strict,Record,Timestamp,Verbose[none]:
L
源站路由选路选项:
宽松,严格,记录路由,时间戳详细
Sourceroute:
128.255.255.1
源地址
Loose,Strict,Record,Timestamp,Verbose[LV]:
v
Loose,Strict,Record,Timestamp,Verbose[L]:
t
Numberofhops[7]:
7
指定可作时间记录的跳数
Loose,Strict,Record,Timestamp,Verbose[LTV]:
v
Loose,Strict,Record,Timestamp,Verbose[LT]:
【输出结果】
Typeescapesequencetoabort.
Tracingtherouteto192.168.8.254,minttl=1,maxttl=30.
PackethasIPoptions:
Totaloptionbytes=40.
Loosesourceroute:
128.255.255.1
Recordtimestampnumber:
7
116ms0ms16ms
20ms0ms16ms
3!
S!
S!
S
注:
Traceroute命令除了在正常情况下返回平均往返时间外,在目的不可达情形下,系统可能借助于ICMP报文返回差错信息,命令如下提示符号之一表示:
·!
N——网络不可达
·!
H——主机不可达
·!
S——源路由失败不可达
·!
A——禁止访问不可达(网络禁止访问、主机禁止访问及管理禁止访问)
·!
F——报文需要分片不可达
·?
——收到未知类型的报文包
26.1.3netstat命令——查看各个网络接口的状态及详细的统计信息
netstat命令只能运行特权用户模式,用于显示系统表(主机表、路由表、ARP表、多播路由表)、接口状态/配置、协议统计及缓冲区信息。
该命令的可选的参数如下:
netstat命令参数
router#netstat?
命令
描述
备注
-a
显示系统内部的ARP表
-e
根据状态代码查看状态信息
后跟16进制状态代码
-h
显示系统主机表
-i
显示路由器接口状态及配置信息
-m
显示网络堆栈数据缓冲区信息
-n
显示网络堆栈系统缓冲区信息
-p
显示特定协议统计信息
支持igmp,icmp,ip,tcp,udp五类协议
-r
显示路由表信息
-s
显示所有IP协议的摘要统计信息
显示TCP、UDP协议连接及端口信息
26.1.4show命令——查看系统统计信息、系统状态
show命令根据其功能可以划分为以下几类:
▪显示系统时钟的命令
▪显示系统设备、接口的命令
▪显示系统统计信息的命令
▪显示系统启动参数的命令
▪显示系统任务的命令
▪显示系统堆栈的命令
有关各协议和各种接口的show命令请参见相关章节。
下面是有关系统的show命令(部分):
系统show子命令
router#show?
命令
描述
备注
clock
显示系统当前时钟
也可在普通用户模式下
device
打印系统设备信息
interface
打印系统接口信息
也可在普通用户模式下
version
打印系统软、硬件版本信息
也可在普通用户模式下
ip
查看TCP/IP协议统计信息
也可在普通用户模式下
process
显示系统任务/进程信息
stack
显示系统堆栈信息
对于专业用户,还可以利用迈普路由器提供的丰富的调试功能(debug命令)进行故障定位。
对于路由器所支持的各种协议和功能,基本上都提供了相应的调试功能,有关的详细信息请参考相关章节。
26.2如何诊断网络故障
路由器由于接口种类繁多,使用的协议种类较多,配置较复杂,所以在配置和使用时故障较易发生。
一般情况下,广域网两侧的路由器不在同一个地点,所以在配置和使用时广域网是故障的多发区。
在故障发生时,要耐心检查,首先确定故障的发生地点。
本节主要内容:
●诊断局域网口的故障
●诊断广域网口的故障
26.2.1诊断局域网口的故障
迈普路由器至少提供一个局域网口,用于连接局域网,并通过串口或其它接口与广域网相连。
从测试机(PC机)向路由器的以太网口发ping报文,若无反应或在数据流量大时丢包严重,则可确定故障出现在以太网口,可以按以下步骤检查在以太网上发生了什么故障:
1.确认测试机和路由器的以太网连接是否正确
若使用Hub或LANSwitch连接以太网,确认Hub或LANSwitch上的指示灯显示测试机和路由器的以太网接口是否正常。
硬件连接不正确时,经常表现出的故障为:
测试机ping路由器无响应,路由器以太网接口的输入、输出报文计数无变化。
测试过程如下所示:
【在DOSshell下】
c:
>ping128.255.255.1
Pinging128.255.255.1with32bytesofdata
Requesttimedout.
Requesttimedout.
Requesttimedout.
其中128.255.255.1即为路由器以太网口的IP地址。
同样地,用户也可以运行路由器上驻留的ping命令,测试路由器以太网口到PC之间链路的连通性。
【在普通用户模式下】
router>ping128.255.255.2
Presskey(ctrl+shift+6)interruptit.
Sending5,76-byteICMPEchosto128.255.255.2,timeoutis2seconds:
.....
Successrateis0%(0/5).
其中128.255.255.2即为PC机以太网卡的IP地址。
输出的…表示输出的ICMP报文在超时后没有收到响应信息。
2.若硬件连接无误,则检测软件工作是否正常
确认测试机和路由器的以太网接口配置的IP地址是否正确。
这两个IP地址的网络地址必须是相同的,仅有主机地址不相同。
在满足以上条件下,若由测试机ping路由器的以太网接口时,无返回报文或在业务数据量大时丢包严重,则可以断定路由器的以太网口配置不正确。
有关IP地址的组成部分及其配置的细节路由器的配置部分。
3.在确定以太网接口配置有误后,可以按照以下进行故障定位
(1)协议是否匹配
目前,以太网接口对IP协议可支持的帧格式有两种,Ethernet_
和Ethernet_SNAP。
迈普路由器均可以同时接收这两种不同格式的IP包,但发送的IP包格式只可以是用户指定Ethernet_
或Ethernet_SNAP中的任何一种,请确认路由器的IP包发送格式与以太网上其它终端是相同的。
(2)以太网工作方式是否正常
迈普路由器以太网接口有10、100Mbps两种速率,同时也支持半双工、全双工两种工作方式,其工作方式、传输速率都可以通过自动协商实现自适应目的,因此这一步的检查可以忽略。
26.2.2诊断广域网口的故障
在排除了以太网口出现故障的可能性以后,可以将路由器的故障定位于广域网口,可以按照如下步骤查找故障:
1.检查物理接口是否正确连接
迈普路由器提供了V24、V35等多种广域网接口电缆,同时广域网接口可以有DTE/DCE两种工作方式。
(1)首先,确定广域网接口类型(V24/V35),迈普路由器同/异步串口的V24/V35接口类型是通过按钮或者拨码开关选择,不同的路由器同/异步串口模块按钮或者拨码开关不同。
具体方法参见安装手册部分。
(2)确定广域网接口工作在同步/异步方式
接口如工作在异步方式下,则检查波特率设置是否正确,迈普路由器在异步方式下支持极广泛的数据传输速率范围,最低为1200bps,最高可达115200bps;
接口如工作在同步DCE方式下,时钟由路由器提供,检查路由器所提供的时钟速率及时钟方式是否正确;
接口如工作在同步DTE方式下,时钟由DSU/CSU设备提供,请参照DSU/CSU设备的说明书,正确设置路由器的时钟方式。
硬件参数或连接不对时,经常表现出的故障为:
ping对端路由器无响应,广域网接口的输入、输出报文计数无变化。
2.若硬件参数及连接正确,则检查链路层协议是否正确设置
迈普路由器的广域网接口目前支持SLIP、PPP、CSLIP等多种协议。
只有广域网两侧的路由器都设置了相同的协议,才可以相互通信。
(1)如果使用PPP(PointtoPointProtocol)协议,并采用PAP或CHAP作为认证协议时,请确认双方口令设置是否一致;
(2)如果以异步方式使用Modem,请确认在迈普路由器上是否使用了Modem命令;
以上各项若配置若不正确,接口上的输入、输出报文计数虽有增加,但与链路层协议不能互通。
3.若链路层协议设置正确,但IP层工作不正常,则可以从以下几方面进行检查:
(1)若链路层协议是PPP,异步拨号方式,确定两端的dialermap设置是否正确:
dialermapipipAddresstelephoneNumber,
其中ipAddress为对端串口的IP地址,telephoneNumber为对端串口所连接电话的号码。
(2)与以太网接口的要求相同,广域网两端的路由器必须保证其对接的广域网口IP地址的网络部分是相同的。
若IP地址设置不正确,那么IP报文的路由就可能会发生异常。
当广域网口采用IPunnumbered方式借用其他接口(如以太网口)的IP地址时,这种情况更容易出现。
(3)检查是否路由故障。
路由功能是路由器的一项最主要的功能,迈普路由器目前支持静态路由、RIPv1/v2、OSPF、IRMP动态路由及按需拨号路由等几种路由方法,路由器按照路由信息的指示转发报文。
路由故障就是指由于没有配置路由或配置路由错误而导致报文转发失败。
最明显的表现是路由器的接口都已经连通,与路由器直接相连的主机或其它路由器均可以互通,但访问其它网段的设备不成功。
解决这种问题的办法是:
如果采用静态路由,则需要为不可达的网段在路由器上手工添加路由。
而对于采用RIP、OSPF、IRMP动态路由的路由器则需要正确配置RIP、OSPF路由协议,使得路由器能够与对端路由器正确交换路由信息,更新本地路由表。