本篇文章是由《通信技术》发表的一篇通信论文,杂志1967年创刊,是国内创办时间长、影响大的计算机专业媒体,2004版中文核心期刊。主要报道信源处理、传输、业务与系统、网络、移动通信、信息安全等方面的先进技术、理论研究成果和最新动态。
【摘 要】 了解并掌握Ping命令工具的特点及应用技巧,可有效提高排除网络故障的工作效率。
【关键词】 Ping命令;网络;维护
作为作为学校微机室的管理员,我觉得在网络的维护过程中ping命令是第一个必须掌握的DOS命令,它是用来检查网络是否通畅或者网络连接速度的命令。它所利用的原理是这样的:利用网络上机器IP地址的唯一性,给目标IP地址发送一个数据包,再要求对方返回一个同样大小的数据包来确定两台网络机器是否连接相通,时延是多少。它内置于Windows系统的TCP/IP协议中,无需单独安装。Ping命令功能强大,通过它可以检测网络之间的连通性,或检测网络传输的不稳定性。
1.利用ping命令测试网卡及其配置
通过使用ping计算机的本地IP地址或ping127.0.0.1可直接检测计算机是否正确安装了网卡设备,网卡设备是否安装了TGP/IP协议,以及网卡是否正确配置了IP地址和子网掩码。具体使用形式是:ping本地IP地址或ping127.0.0.1。如果ping计算机本地IP地址成功,则会显示如下信息
Replay from 172.168.200.2 bytes=32 time<10ms
Ping statistics for 172.168.200.2
Packets Sent=4 Received=4 Lost=0 0% loss
Approximate round trip times in milli-seconds
Minimum=0ms Maxiumu=1ms Average=0ms
说明网卡设备TCP/IP协议已正确安装。如果在MS-DOS方式下执行此命令显示内容为:Request timed out,则表明网卡安装或配置有问题。将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。反之,说明网卡的驱动程序正确,可能没有安装TCP/IP协议。这里的127.0.0.1是网卡的自带默认的IP地址,不论网卡中是否分配了IP地址,该地址都会存在,且在本地计算机中有效,在网络中无效。
2.Ping网关IP
假定网关IP为:172.168.6.1,则执行命令Ping 172.168.6.1。在MS-DOS方式下执行此命令,如果显示类似以下信息:
Reply from 172.168.6.1 bytes=32 time=9ms TTL=255
Ping statistics for 172.168.6.1
Packets Sent=4 Received=4 Lost=0
Approximate round trip times in milli-seconds
Minimum=1ms Maximum=9ms Average=5ms
则表明局域网中的网关路由器正在正常运行。不反之,则说明网关有问题。
3.Ping远程IP
这一命令可以检测本机能否正常访问Internet。比如本地电信运营商的IP地址为:202.102.48.141。在MS-DOS方式下执行命令:Ping 202.102.48.141,如果屏幕显示:
Reply from 202.102.48.141 bytes=32 time=33ms TTL=252
Reply from 202.102.48.141 bytes=32 time=21ms TTL=252
Reply from 202.102.48.141 bytes=32 time=5ms TTL=252
Reply from 202.102.48.141 bytes=32 time=6ms TTL=252
Ping statistics for 202.102.48.141
Packets Sent=4 Received=4 Lost=0 0% loss
Approximate round trip times in milli-seconds
Minimum=5ms Maximum=33ms Average=16ms
则表明运行正常,能够正常接入互联网。
反之,则表明主机文件(windows/host)存在问题。
4.利用ping测试局域网连接
在局域网内,计算机之间的相互连接联通情况可通过ping局域网内其它计算机或服务器计算机名或IP地址便可测试同一网络(或VLAN)的连接是否正常。具体有如下情形:
(1)检测IP地址和子网掩码设置是否正确
通过ping局域网内的计算机名或IP地址,如果没有pmg通,应着手检查本机的IP地址和子网掩码的设置是否正确,检查IP地址是否设置为同一网段内的IP地址,子网掩码设置合理、相一致。
(2)检测网络连接是否正确
如果局域网内计算机的IP地址和子网掩码设置正确,利用ping命令ping局域内的计算机名或IP地址仍不能成功,应着手对局域内的网络设备如交换机或Hub和通信传输介质-网线、接头等逐段检查、测试和排除。
5.ping命令常见的出错提示信息
(1)Request timed out
a.对方已关机,或者网络上根本没有这个地址:比如在上图中主机A中PING 192.168.0.7 ,或者主机B关机了,在主机A中PING 192.168.0.5 都会得到超时的信息。
b.对方与自己不在同一网段内,通过路由也无法找到对方,但有时对方确实是存在的,当然不存在也是返回超时的信息。
c.对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置)
怎样知道对方是存在,还是不存在呢,可以用带参数 -a 的Ping命令探测对方,如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。
d.错误设置IP地址
正常情况下,一台主机应该有一个网卡,一个IP地址,或多个网卡,多个IP地址(这些地址一定要处于不同的IP子网)。但如果一台电脑的"拨号网络适配器"(相当于一块软网卡)的TCP/IP设置中,设置了一个与网卡IP地址处于同一子网的IP地址,这样,在IP层协议看来,这台主机就有两个不同的接口处于同一网段内。当从这台主机Ping其他的机器时,会存在这样的问题:
A.主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。
B.主机不知道用哪个地址作为数据包的源地址。因此,从这台主机去Ping其他机器,IP层协议会无法处理,超时后,Ping 就会给出一个"超时无应答"的错误信息提示。但从其他主机Ping这台主机时,请求包从特定的网卡来,ICMP只须简单地将目的、源地址互换,并更改一些标志即可,ICMP应答包能顺利发出,其他主机也就能成功Ping通这台机器了。
(2)Destination host Unreachable
对方与自己不在同一网段内,而自己又未设置默认的路由,比如上例中A机中不设定默认的路由,运行Ping 192.168.1.4就会出现"Destination host Unreachable"。
网线出了故障
这里要说明一下"destination host unreachable"和 "time out"的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现"time out",如果路由表中连到达目标的路由都没有,那就会出现"destination host unreachable"。
(3)Bad IP address
这个信息表示您可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是IP地址不存在。
(4)Source quench received
这个信息比较特殊,它出现的机率很少。它表示对方或中途的服务器繁忙无法回应。
(5)Unknown host--不知名主机
这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成IP地址。故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。
(6)No answer--无响应
这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
小提示:
为了有效地找出网络故障原因,我们在使用Ping命令进行测试检查时,尽量确保局域网中只配置了一个网关,同时确保本地工作站没有启用IP安全设置策略,这样可以保证Ping命令能够获得正确的测试结果。