欢迎user
在日常的系统维护中,用户可以使用ping命令和tracert命令来检查当前网络的连接情况;在日常的系统调试中,用户可以使用debug命令来打开调试信息开关,通过调试信息来诊断系统故障。
通过使用ping命令,用户可以检查指定地址的设备是否可达,测试网络连接是否出现故障。
Ping功能是基于ICMP协议来实现的:源端向目的端发送ICMP回显请求(ECHO-REQUEST)报文后,根据是否收到目的端的ICMP回显应答(ECHO-REPLY)报文来判断目的端是否可达,对于可达的目的端,再根据发送报文个数、接收到响应报文个数来判断链路的质量,根据ping报文的往返时间来判断源端与目的端之间的“距离”。
通过使用tracert命令,用户可以查看IP报文从源端到达目的端所经过的三层设备,从而检查网络连接是否可用。当网络出现故障时,用户可以使用该命令分析出现故障的网络节点。
图 1 Tracert原理示意图
Tracert功能也是基于ICMP协议来实现的,如图 1所示,Tracert功能的原理为:
(1) 源端(Device A)向目的端(Device D)发送一个IP数据报文,TTL值为1,报文的UDP端口号是目的端的任何一个应用程序都不可能使用的端口号;
(2) 第一跳(Device B)(即该报文所到达的第一个三层设备)回应一个TTL超时的ICMP错误信息(该报文中含有第一跳的IP地址1.1.1.2),这样源端就得到了第一个三层设备的地址(1.1.1.2);
(3) 源端重新向目的端发送一个IP数据报文,TTL值为2;
(4) 第二跳(Device C)回应一个TTL超时的ICMP错误信息,这样源端就得到了第二个三层设备的地址(1.1.2.2);
(5) 以上过程不断进行,直到该报文到达目的端,因目的端没有应用程序使用该UDP端口,目的端返回一个端口不可达的ICMP错误消息(携带了目的端的IP地址1.1.3.2)。
(6) 当源端收到这个端口不可达的ICMP错误消息后,就知道报文已经到达了目的端,从而得到数据报文从源端到目的端所经历的路径(1.1.1.2;1.1.2.2;1.1.3.2)。
设备提供了种类丰富的调试功能,对于设备所支持的绝大部分协议和功能,系统都提供了相应的调试信息,帮助用户对错误进行诊断和定位。
调试信息的输出可以由两个开关控制:
l 协议调试开关,控制是否生成某协议的调试信息。
l 屏幕输出开关,控制是否在某个用户屏幕上显示调试信息。
如图 2所示:假设设备可以为1、2、3三个模块提供调试信息,用户只有将两个开关都打开,调试信息才会在终端显示出来。