Ping命令

ping是:一个电脑网络工具,用来测试特定主机能否通过IP到达。ping的运作原理是:向目标主机传出一个ICMPecho要求分组,等待接收echo回应分组。程序会按时间和反应成功的次数,估计失去分组率(丢包率)和分组来回时间(网络时延)(Round-trip delay time)。
1983年12月,Mike Muuss写了这个程序,在IP网络出问题时方便找出其根源。因为这个程序的运作和潜水艇的声纳相似,他便用声纳的声音来为程序取名。David L. Mills曾提出另一个取名:Packet Internet Grouper/Gopher(后者指地鼠)。
指南:要查找一个指定域名的IP地址(如205.245.172.72),Wibndows用户可以在微软DOS提示对话框中输入:ping xxx.yyy。在这里,xxx代表类似于“whatis”的二级域名,yyy代表类似于“.com”的顶级域名。
掌握Ping命令的正确使用,对于我们快速判断网络故障有着非常大的帮助,希望笔者的一点抛砖引玉能够对大家有所帮助。

XP系统PING命令入门详解
Ping是潜水艇人员的专用术语,表示回应的声纳脉冲,在网络中Ping 是一个十分好用的TCP/IP工具。它主要的功能是用来检测网络的连通情况和分析网络速度。
首先需要打开DOS命令界面,通过点击开始菜单中的“运行”选项,输入“cmd”, 回车即可打开
怎样使用Ping这命令来测试网络连通呢?
连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。
首先我们讲一下使用Ping命令的步骤。
使用Ping检查连通性有五个步骤:
1. 使用ipconfig /all观察本地网络设置是否正确,正常应该显示主机IP.MAC等信息 ;
2. Ping 127.0.0.1,127.0.0.1 回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;
3. Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;
4. Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)
5. Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。

在说一次:通过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 https://www.360docs.net/doc/158087737.html,——对这个域名执行Pin …… 地址,通常是通过DNS 服务器 如果这里出现故障,则表示DNS服务器的IP地址配置不正确或DNS服务器有故障(对于拨号上网用户,某些ISP已经不需要设置DNS服务器了)。顺便说一句:你也可以利用该命令实现域名对IP地址的转换功能。
如果上面所列出的所有Ping命令都能正常运行,那么你对你的计算机进行本地和远程通信的功能基本上就可以放心了。但是,这些命令的成功并不表示你所有的网络配置都没有问题,例如,某些子网掩码错误就可能无法用这些方法检测到。
Ping命令的常用参数选项
ping IP -t——连续对IP地址执行Ping命令,直到被用户以Ctrl+C中断。
ping IP -l 2000——指定Ping命令中的数据长度为2000字节,而不是缺省的32字节。
ping IP -n——执行特定次数的Ping命令。
N
etstat
Netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。
如果你的计算机有时候接受到的数据报会导致出错数据删除或故障,你不必感到奇怪,TCP/IP可以容许这些类型的错误,并能够自动重发数据报。但如果累计的出错情况数目占到所接收的IP数据报相当大的百分比,或者它的数目正迅速增加,那么你就应该使用Netstat查一查为什么会出现这些情况了。


如何用Ping命令来判断一条链路好坏?
Ping这个命令除了可以检查网络的连通和检测故障以外,还有一个比较有趣

的用途,那就是可以利用它的一些返回数据,来估算你跟某台主机之间的速度是多少字节每秒
我们先来看看它有那些返回数据。
如在运行窗口中输入:ping https://www.360docs.net/doc/158087737.html,后回车,显示数字"bytes=32"表示ICMP报文中有32个字节的测试数据,"time=4ms"是往返时间。 Sent 发送多个秒包、Received 收到多个回应包、Lost 丢弃了多少个Minmum 最小值 、MAXimun 最大值、Average 平均值。所在图上来看,来回只用了4MS 时间,lost =0 即是丢包数为0,网络状态相当良好。 (更详细可以使用-n参数 “ping –n 100 IP地址” ping 100次。查看 Sent Received Lost Minmum MAXimun Average 这些值的变化。)

对Ping后返回信息的分析
1.Request timed out
这是大家经常碰到的提示信息,很多文章中说这是对方机器置了过滤ICMP数据包,从上面工作过程来看,这是不完全正确的,至少有下几种情况。
(1) 对方已关机,或者网络上根本没有这个地址:比如在上图中主机A中PING 192.168.0.7 ,或者主机B关机了,在主机A中PING 192.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.Destination host Unreachable
(1) 对方与自己不在同一网段内,而自己又未设置默认的路由,比如上例中A机中不设定默认的路由,运行Ping 192.

168.0.1.4就会出现“Destination host Unreachable”。
(2)网线出了故障
这里要说明一下“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——无响应
这种故障说明本地系统有一条通向中心主机的路由,但却接收不到它发给该中心主机的任何信息。故障原因可能是下列之一:中心主机没有工作;本地或中心主机网络配置不正确;本地或中心的路由器没有工作;通信线路有故障;中心主机存在路由选择问题。
7.Ping 127.0.0.1:127.0.0.1是本地循环地址
如果本地址无法Ping通,则表明本地机TCP/IP协议不能正常工作。
8.no rout to host:网卡工作不正常。
9.transmit failed,error code:10043网卡驱动不正常。
10.unknown host name:DNS配置不正确。
以上是我在“拼”(Ping)的过程中,总结的一些经验技巧,希望能对大家的工作和学习有所帮助。

Ping命令应用实例三则 Ping命令是我们日常网管工作中使用频率最高的工具之一,主是用来测试网络连接的。在实际平时解决网络故障的过程中,一般应该遵循“先软后硬”的步骤来进行。其中“软”就是指使用Ping命令大概判断出网络故障位置。今天我们就向大家介绍Ping命令的三个典型应用。
一、验证网卡工作状态
Ping最简单的一个应用就是验证网卡工作状态是否正常,这也是电脑出现不能上网等故障最简单的判断手段。
在命令提示符下输入“ping 127.0.0.1”并回车,如果返回四行“Reply from 127.0.0.1: bytes=32 time<1ms TTL=128”那么则说明本地网卡是安装正常的,若返回“Request timed out.”则说明本地网卡工作不正常(如下图)。
小提示:用户也可以直接使用“Ping 本地计算机的IP地址”,以验证是否IP是否设置成功。
二、判断网络连接状态
判断网络连接时,我们通常的做法就是ping网关地址和远程主机地址,以此判断出网络故障所发地。
如果“ping 网关地址”出现“Request timed o

ut.”,那么则说明是内部网络出现了问题,本地网卡发出的数据包不能到达网关;如果Ping网关连接正常,那么可以执行“ping 远程主机”,这时若出现“Request timed out.”,则可能是外部连接的问题了。
在实际的应用中还会出现这样的情况,在ping执行过程中,会同时包含“Request timed out.”和“Reply from 192168.0.1: bytes=32 time<1ms TTL=128”这样的信息,这种情况则表示网络不太稳定,存在丢包现象,对此大家可以使用“ping IP地址 -t”即在原有的命令后加上“-t”参数,这样ping就会连续尝试与目标主机进行连接,以此观察网络的稳定性。当然从返回信息的“time<1ms”也是一个很重要的信息,如果网络很畅通,例如测试与内网主机的连接,一般都会是“time<1ms”,若该数值比较大,同样说明网络不够稳定,可能是设备不兼容,可能是节点接触不好,也可能是网络内有大量病毒导现堵塞等。
三、验证DNS服务器
DNS服务器负责将域名(网址)转换成IP地址,我们可以使用ping命令判断其配置是否正确以及工作是否正常。
其方法很简单,只需要在命令提示下输入“ping 域名地址”,例如“pint https://www.360docs.net/doc/158087737.html,”,如果出现“unknown Host Name”则表明不能到达,返回提示“Reply from 222.191.251.34: bytes=32 time=27ms TTL=120”则证明DNS服务器能够成功将域名转换为IP地址。借助这个方法,我们也可以查看知名网站所使用的IP地址(如下图)。








Ping不通的特殊情况
1、对方服务器(IP)确实与外网断开连接;
2、对方服务器拒绝Ping入;
3、对方服务器拒绝Ping出;
4、自己计算机与外网已经断开连接。

ping命令是大家最常用的命令,但是我要说的一些不为人知的秘密。
技巧一:省略多个零。
比如ping空格127.0.0.1,这个命令是可以缩写成ping空格127.1的,这主要的原因是windows可以自动的填充1之前的零,打个比喻ping 192.1也就等于ping 192.0.0.1,但是需要注意的一点是如果我们ping 192.1.1那么不会是ping 192.0.1.1而是ping 192.1.0.1这样的。
技巧二:ping数字也可以行得通。
试试ping 2130706433 会出现什么东西?是不是很神奇的出现了Pinging 127.0.0.1 with 32 bytes of data:,没错就是这样的,其实原理很简单,把127.0.0.1 的每一位转换成十六进制 那么就是7F,00,00,01 这样的,然后去掉逗号,就成了7f000001,然后转换成十进制就成了2130706433,很简单神奇吧。!

在Microsoft的Windows 95.98及其2000系统中,可以运行以上命令
命令格式:
ping IP地址或主机名 [-t] [-a] [-n count] [-l size]
参数含义:
-t不停地向目标主机发送数据;
-a 以IP地址格式来显示目标主机的网络地址 ;


-n count 指定要Ping多少次,具体次数由count来指定 ;
-l size 指定发送到目标主机的数据包的大小。
例如当您的机器不能访问Internet,首先您想确认是否是本地局域网的故障。假定局域网的代理服务器IP地址为202.168.0.1,您可以使用Ping避免202.168.0.1命令查看本机是否和代理服务器联通。又如,测试本机的网卡是否正确安装的常用命令是ping 127.0.0.1。
Tracert
Tracert命令用来显示数据包到达目标主机所经过的路径,并显示到达每个节点的时间。命令功能同Ping类似,但它所获得的信息要比Ping命令详细得多,它把数据包所走的全部路径、节点的IP以及花费的时间都显示出来。该命令比较适用于大型网络。
命令格式:
tracert IP地址或主机名 [-d][-h maximumhops][-j host_list] [-w timeout]
参数含义:
-d 不解析目标主机的名字;
-h maximum_hops 指定搜索到目标地址的最大跳跃数;
-j host_list 按照主机列表中的地址释放源路由;
-w timeout 指定超时时间间隔,程序默认的时间单位是毫秒。
例如大家想要了解自己的计算机与目标主机https://www.360docs.net/doc/158087737.html,之间详细的传输路径信息,可以在MS-DOS方式输入tracert https://www.360docs.net/doc/158087737.html,。
如果我们在Tracert命令后面加上一些参数,还可以检测到其他更详细的信息,例如使用参数-d,可以指定程序在跟踪主机的路径信息时,同时也解析目标主机的域名。
Netstat
Netstat命令可以帮助网络管理员了解网络的整体使用情况。它可以显示当前正在活动的网络连接的详细信息,例如显示网络连接、路由表和网络接口信息,可以统计目前总共有哪些网络连接正在运行。
利用命令参数,命令可以显示所有协议的使用状态,这些协议包括TCP协议、UDP协议以及IP协议等,另外还可以选择特定的协议并查看其具体信息,还能显示所有主机的端口号以及当前主机的详细路由信息。

命令格式:
netstat [-r] [-s] [-n] [-a]
参数含义:
-r 显示本机路由表的内容;
-s 显示每个协议的使用状态(包括TCP协议、UDP协议、IP协议);
-n 以数字表格形式显示地址和端口;
-a 显示所有主机的端口号。

Winipcfg
Winipcfg命令以窗口的形式显示IP协议的具体配置信息,命令可以显示网络适配器的物理地址、主机的IP地址、子网掩码以及默认网关等,还可以查看主机名、DNS服务器、节点类型等相关信息。其中网络适配器的物理地址在检测网络错误时非常有用。
命令格式:
winipcfg [/?] [/all]
参数含义:
/all 显示所有的有关IP地址的配置信息;
/batch [file] 将命令结果写入指定文件;
/renew_ all 重试所有网络适配器;
/release_all 释放所有网络适配器;
/renew N 复位网络

适配器 N;
/release N 释放网络适配器 N。


/all 显示所有的有关IP地址的配置信息;
/batch [file] 将命令结果写入指定文件;
/renew_ all 重试所有网络适配器;
/release_all 释放所有网络适配器;
/renew N 复位网络适配器 N;
/release N 释放网络适配器 N。

相关文档
最新文档