ping命令详解.docx
《ping命令详解.docx》由会员分享,可在线阅读,更多相关《ping命令详解.docx(11页珍藏版)》请在冰点文库上搜索。
ping命令详解
PING命令入门详解
1、Ping的基础知识
ping命令相信大家已经再熟悉不过了,但是能把ping的功能发挥到最大的人却并不是很多,当然我也并不是说我可以让ping发挥最大的功能,我也只不过经常用ping这个工具,也总结了一些小经验,现在和大家分享一下。
Ping是潜水艇人员的专用术语,表示回应的声纳脉冲,在网络中Ping是一个十分好用的TCP/IP工具。
它主要的功能是用来检测网络的连通情况和分析网络速度。
Ping有好的善的一面也有恶的一面。
先说一下善的一面吧。
上面已经说过Ping的用途就是用来检测网络的连同情况和分析网络速度,但它是通过什么来显示连通呢?
这首先要了解Ping的一些参数和返回信息。
2、Ping命令详解
首先需要打开DOS命令界面,通过点击开始菜单中的“运行”选项,输入“cmd”,回车即可打开(如下图)。
回车后
我们输入ping/?
例出ping以下是PING的一些参数(如图):
下面我和大家讲解一下,每个参数意思和使用。
ping[-t][-a][-ncount][-llength][-f][-ittl][-vtos][-rcount][-scount][-jcomputer-list]|[-kcomputer-list][-wtimeout]destination-list
-tPing指定的计算机直到中断。
-a将地址解析为计算机名。
-ncount发送count指定的ECHO数据包数。
默认值为4。
-llength发送包含由length指定的数据量的ECHO数据包。
默认为32字节;最大值是65,527。
-f在数据包中发送"不要分段"标志。
数据包就不会被路由上的网关分段。
-ittl将"生存时间"字段设置为ttl指定的值。
-vtos将"服务类型"字段设置为tos指定的值。
-rcount在"记录路由"字段中记录传出和返回数据包的路由。
count可以指定最少1台,最多9台计算机。
-scount指定count指定的跃点数的时间戳。
-jcomputer-list利用computer-list指定的计算机列表路由数据包。
连续计算机可以被中间网关分隔(路由稀疏源)IP允许的最大数量为9。
-kcomputer-list利用computer-list指定的计算机列表路由数据包。
连续计算机不能被中间网关分隔(路由严格源)IP允许的最大数量为9。
-wtimeout指定超时间隔,单位为毫秒。
destination-list指定要ping的远程计算机。
3、怎样使用Ping这命令来测试网络连通呢?
连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。
首先我们讲一下使用Ping命令的步骤。
使用Ping检查连通性有五个步骤:
1.使用ipconfig/all观察本地网络设置是否正确,如图;
2.Ping127.0.0.1,127.0.0.1回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;
3.Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;
4.Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)
5.Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。
4、如何用Ping命令来判断一条链路好坏?
Ping这个命令除了可以检查网络的连通和检测故障以外,还有一个比较有趣的用途,那就是可以利用它的一些返回数据,来估算你跟某台主机之间的速度是多少字节每秒
我们先来看看它有那些返回数据。
在例子中"bytes=32"表示ICMP报文中有32个字节的测试数据,"time=4ms"是往返时间。
Sent发送多个秒包、Received收到多个回应包、Lost丢弃了多少个Minmum最小值、MAXimun最大值、Average平均值。
所在图上来看,来回只用了4MS时间,lost=0即是丢包数为0,网络状态相当良好。
(更详细可以使用-n参数“ping–n100IP地址”ping100次。
查看SentReceivedLostMinmumMAXimunAverage这些值的变化。
)
5、对Ping后返回信息的分析
1.Requesttimedout
这是大家经常碰到的提示信息,很多文章中说这是对方机器置了过滤ICMP数据包,从上面工作过程来看,这是不完全正确的,至少有下几种情况。
(1)对方已关机,或者网络上根本没有这个地址:
比如在上图中主机A中PING192.168.0.7,或者主机B关机了,在主机A中PING192.168.0.5都会得到超时的信息。
(2)对方与自己不在同一网段内,通过路由也无法找到对方,但有时对方确实是存在的,当然不存在也是返回超时的信息。
(3)对方确实存在,但设置了ICMP数据包过滤(比如防火墙设置)。
怎样知道对方是存在,还是不存在呢,可以用带参数-a的Ping命令探测对方,如果能得到对方的NETBIOS名称,则说明对方是存在的,是有防火墙设置,如果得不到,多半是对方不存在或关机,或不在同一网段内。
(4)错误设置IP地址
正常情况下,一台主机应该有一个网卡,一个IP地址,或多个网卡,多个IP地址(这些地址一定要处于不同的IP子网)。
但如果一台电脑的“拨号网络适配器”(相当于一块软网卡)的TCP/IP设置中,设置了一个与网卡IP地址处于同一子网的IP地址,这样,在IP层协议看来,这台主机就有两个不同的接口处于同一网段内。
当从这台主机Ping其他的机器时,会存在这样的问题:
A.主机不知道将数据包发到哪个网络接口,因为有两个网络接口都连接在同一网段。
B.主机不知道用哪个地址作为数据包的源地址。
因此,从这台主机去Ping其他机器,IP层协议会无法处理,超时后,Ping就会给出一个“超时无应答”的错误信息提示。
但从其他主机Ping这台主机时,请求包从特定的网卡来,ICMP只须简单地将目的、源地址互换,并更改一些标志即可,ICMP应答包能顺利发出,其他主机也就能成功Ping通这台机器了。
2.DestinationhostUnreachable
(1)对方与自己不在同一网段内,而自己又未设置默认的路由,比如上例中A机中不设定默认的路由,运行Ping192.168.0.1.4就会出现“DestinationhostUnreachable”。
(2)网线出了故障
这里要说明一下“destinationhostunreachable”和“timeout”的区别,如果所经过的路由器的路由表中具有到达目标的路由,而目标因为其他原因不可到达,这时候会出现“timeout”,如果路由表中连到达目标的路由都没有,那就会出现“destinationhostunreachable”。
3.BadIPaddress
这个信息表示您可能没有连接到DNS服务器,所以无法解析这个IP地址,也可能是IP地址不存在。
4.Sourcequenchreceived
这个信息比较特殊,它出现的机率很少。
它表示对方或中途的服务器繁忙无法回应。
5.Unknownhost——不知名主机
这种出错信息的意思是,该远程主机的名字不能被域名服务器(DNS)转换成IP地址。
故障原因可能是域名服务器有故障,或者其名字不正确,或者网络管理员的系统与远程主机之间的通信线路有故障。
6.Noanswer——无响应
这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。
故障原因可能是下列之一:
中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
7.Ping127.0.0.1:
127.0.0.1是本地循环地址
如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作。
8.norouttohost:
网卡工作不正常。
9.transmitfailed,errorcode:
10043网卡驱动不正常。
10.unknownhostname:
DNS配置不正确。
以上是我在“拼”(Ping)的过程中,总结的一些经验技巧,希望能对大家的工作和学习有所帮助。
如何使用ping和tracert命令检测丢包
我如何测试丢包?
我知道ping一个网站的信息和跟踪路由的信息。
但是,我曾经听一些人说他们的宽带网连接上有丢包的问题。
我怀疑我也许遇到了丢包的问题,因为当我进行速度测试的时候,速度比以前慢了。
我没有改变硬件或者使用任何新的应用软件。
从家里测试宽带网连接的丢包是一项非常困难的工作。
丢包可以发生在从你的计算机到你在互联网上正在连接的目的地之间的线路上的任何一个地方。
引起丢包的原因包括:
网络阻塞、路由器或者交换机超过工作负荷、信号往返时间缓慢以及服务提供商或者托管你访问的网站的公司使用的通信优先等级。
没有主动测量实际重复传输的TCP流量(对于家庭宽带网连接来说,这类产品太昂贵了),很难确定是否真的发生了重复传输。
你指出的机制ping和跟踪路由对于帮助家庭用户确定互联网上哪里的速度慢是最有用的工具。
Ping测量你的计算机和你要连接的IP地址之间的信号往返时间。
跟踪路由是测量路由器在你的计算机和你正在跟踪的路由的IP地址之间的通道的反应时间。
使用Ping
使用Ping测量丢包的最佳方法是向一个IP地址发送大量的Ping命令,然后检查没有应答的那些Ping命令。
如果你快速地发出了50次Ping命令,你可以检查没有没有应答的次数,并把没有应答的次数作为丢包。
没有应答的次数超过5%可能就值得担心了。
在一台Windows计算机上,在命令提示符后面输入如下命令就可以完成这个任务:
Ping-n50(IP地址或者域名,如)这个命令中的“-n”开关告诉发送ping命令的次数,“50”是发送的次数。
然后,你将得到一个测试总结。
这个总结将包括丢失的数量和百分比:
199.181.132.250地址Ping的统计结果:
包:
发送=6,接收=6,丢失=0(0%)
大约往返时间以毫秒(ms)显示:
最小=26ms,最大=29ms,平均=27ms
如果你看到平均往返时间较高(超过100ms),这也会降低你的网络下载速度。
设法消除某些引起丢包的网络某些部分的故障的一种方法是在通道的各个部分进行ping测试。
我首先开始进行测试的地方是本地的“缺省网关”。
这是你所有的数据传输到网络上经过的第一个路由器。
如果在这一部分的丢包率很高,那么问题就在你的服务提供商的网络上。
在Windows命令提示符后面输入“ipconfig”命令你就可以发现你的缺省路由器的IP地址。
这个结果显示如下:
以太网接口本地区域连接:
具体连接的DNS后缀:
IP地址......:
192.168.2.189
子网掩码.....:
255.255.252.0
缺省网关...:
10.10.0.1
你在这里要查看的是缺省网关的IP地址。
在上述例子中就10.10.0.1。
使用跟踪路由
在Windows命令提示符后面使用跟踪路由命令就可以实施跟踪路由。
在WindowsXPZH中这个命令是:
tracert(IP地址或者主机名)
虽然结果不能向你显示丢包,但是,可以向你显示在路径中路由器反应速度减慢的情况。
这个输出结果将显示所有的路由器的反应时间。
下面是一个例子:
5ms2ms3ms[10.10.0.1]
10ms6ms7ms10.60.0.6
9ms7ms7ms10.20.0.1
6ms7ms7ms[205.158.104.130]
7ms7ms8msge9-0.dcr2.dc-fremont-[205.158.60.169]
7ms7ms7msge2-0.dcr1.dc-fremont-[65.106.2.205]
10ms7ms8msp5-1-0-2.rar2.sanjose-[65.106.2.153]
10ms9ms11msp1-0.ir1.paloalto-[65.106.5.178]
9ms10ms15ms[206.111.12.114]
9ms10ms10mssvl-core-[205.171.205.29]
29ms28ms29msstl-core-[205.171.5.85]
30ms29ms29mssea-edge-[205.171.26.42]
***Requesttimedout.
***Requesttimedout.
28ms28ms29ms[199.181.132.250]
如果你看到在路径中跟踪路由往返时间有超过100ms(十分之一秒)的,这就可能引起网络上传输的时间减慢。
从上述例子中,你可以看到数据在很多不同的网络(XO,Qwest,ABC)上传输。
这是互联网美妙的一部分。
不利的方面是一个用户无法解决反应时间减慢的问题。
最佳的出发点就是确认你和你的服务提供商之间没有出现丢包。