Ping命令深度解析(二)

            正常情况下,当你使用Ping命令来查找问题所在或检验网络运行情况时,你需要使用许多Ping命令,如果所有都运行正确,你就可以相信基本的连通性和配置参数没有问题;如果某些Ping命令出现运行故障,它也可以指明到何处去查找问题。下面就给出一个典型的检测次序及对应的可能故障:

 

1.ping 127.0.0.1——这个Ping命令被送到本地计算机的IP软件,该命令永不退出该计算机。如果没有做到这一点,就表示TCP/IP的安装或运行存在某些最基本的问题。

 

2.ping 本机IP——这个命令被送到你计算机所配置的IP地址,你的计算机始终都应该对该Ping命令作出应答,如果没有,则表示本地配置或安装存在问题。出现此问题时,局域网用户请断开网络电缆,然后重新发送该命令。如果网线断开后本命令正确,则表示另一台计算机可能配置了相同的IP地址。

 

3.ping 局域网内其他IP——这个命令应该离开你的计算机,经过网卡及网络电缆到达其他计算机,再返回。收到回送应答表明本地网络中的网卡和载体运行正确。但如果收到0个回送应答,那么表示子网掩码(进行子网分割时,将IP地址的网络部分与主机部分分开的代码)不正确或网卡配置错误或电缆系统有问题。

 

4.ping 网关IP——这个命令如果应答正确,表示局域网中的网关路由器正在运行并能够作出应答。

 

5.ping 远程IP——如果收到4个应答,表示成功的使用了缺省网关。对于拨号上网用户则表示能够成功的访问Internet(但不排除ISP的DNS会有问题)。

 

6.ping localhost——localhost是个作系统的网络保留名,它是127.0.0.1的别名,每太计算机都应该能够将该名字转换成该地址。如果没有做到这一带内,则表示主机文件(/Windows/host)中存在问题。

 

7.ping www.yahoo.com——对这个域名执行Pin …… 地址,通常是通过DNS 服务器 如果这里出现故障,则表示DNS服务器的IP地址配置不正确或DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置DNS服务器了)。顺便说一句:你也可以利用该命令实现域名对IP地址的转换功能。

 

 

           当网络出现连接故障时,很多网管人员都会首先使用Ping来查找问题的根源。但是很多人只要发现Ping不通,那么就判断是网络出现了故障。这样只通过表面现象进行判断,很可能掩盖真相。那么我们在使用Ping命令过程中,到底注意哪些问题呢?还是请大家跟我来吧。

一、Request Timed Out

          当Ping指定的对象时,出现“Request Timed Out”提示信息的频率非常高,这说明对方无法接受发送过来的数据。当然这种情况下,很可能就是网络出现了故障,但并不能就因此而确定网络一定不通。因为它还有可能是其它原因造成的。

主机不在线: 如果对方关机、禁用网卡或者拨掉网线,那么无论你怎么操作,都不会有连通的信息返回的。要知道最简单的却往往是最容易被忽视的。

 

 防火墙拦截 :当安装了防火墙之后,当防火墙工作时,一般都能自动拦截来自网络的Ping命令,从而让其失去响应。同时安装防火墙后,还会造成共享文件无法访问的故障。因此在检查时应该先让对方关闭防火墙,然后再使用Ping命令来检测。

 

IP安全策略限制 :对于很多有经验的网管人员来说,他们都在服务器上添加了IP安全策略,对ICMP报文进行过滤,使Ping命令无法回应,从而返回“Request Timed Out”的错误提示。

 

网关设置错误 :这种情况主要出现在Ping外部网络地址时才出现。因为当网关设置错误时,Ping发出的数据包无法经网关进行转发。因此需要检查本机的网关设置以及远程网关的配置是否正确。

 

一般来说,只有在排除上述原因之外,才能够根据“Request Timed Out”初步判断网络连接可能有问题。

 

二、Destination Host Unreachable

           出现“Destination Host Unreachable”错误信息时表示对方主机不存在或者没有跟对方建立连接。看起来好像与“Request Timed Out”差不多,但两者却有关本质的区别。如果Ping命令所发出的数据包经过路由器,并经路由表到达目标的路由,但是因为其它原因(例如防火墙拦截等)导致不可达,那么就是“Request Timed Out”的提示了;相反如果路由表中没有到达目标的路由信息,那么就会出现“Destination Host Unreachable”。

          

            出现这种情况主要有以下一些方面的原因:对于使用DHCP自动分配IP地址的网络,很可能是DHCP服务器出错或不能正常工作,这样客户机无法与DHCP正常通讯并获得正确的IP地址,对此只需要修复DHCP服务器即可;另外则可能是子网掩码设置错误,对此只需要修改成正确的即可。

 

三、Unknown host

             该提示表示无法识别的主机,出现这个问题之后是不是就表示目标主机一定有问题呢?当然不能!因为我们使用Ping命令去连接目标主机名称时,主要使用DNS来负责将名称转换成IP地址。

例如“Ping www.163.com”,我们看到的返回信息是“Reply from 220.181.28.42: bytes=32 time=59ms TTL=54”,而不是“Reply from www.163.com: bytes=32 time=59ms TTL=54”,这就说明我们IP设置中的DNS服务器将www.163.com成功转换为220.181.28.42。因此当我们看到这样的提示时,就应该检查DNS设置是否正确、DNS工作是否正常。 透过表面的现象,看清真实的问题,只有这样才能够帮助我们找出故障的源头,从而对故障有正确的判断。

 

     

        如果上面所列出的所有Ping命令都能正常运行,那么你对你的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示你所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。

 

Ping命令的常用参数选项

ping IP -t——连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断。

ping IP -l 2000——指定Ping命令中的数据长度为2000字节,而不是缺省的32字节。

ping IP -n——执行特定次数的Ping命令。

Netstat

Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

 

猜你喜欢

转载自topmanopensource.iteye.com/blog/827429