ping命令详解

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ping命令详解
系统内置的网络测试工具ping
1.Ping命令的语法格式
ping命令看似小小的一个工具,但它带有许多参数,要完全掌握它的使用方法还真不容易,要达到熟练使用则更是难下加难,但不管怎样我们还得来看看它的真面目,首先我们还是从最基本的命令格式入手吧!
ping命令的完整格式如下:
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [-j -Host list] | [-k Host-list] [-w timeout] destination-list
从这个命令式中可以看出它的复杂程度,ping命令本身后面都是它的执行参数,现对其参数作一下详细讲解吧!
-t——有这个参数时,当你ping一个主机时系统就不停的运行ping这个命令,直到你按下Control-C。

-a——解析主机的NETBIOS主机名,如果你想知道你所ping的要机计算机名则要加上这个参数了,一般是在运用ping命令后的第一行就显示出来。

-n count——定义用来测试所发出的测试包的个数,缺省值为4。

通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发送20个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过执行带有这个参数的命令获知。

-l length——定义所发送缓冲区的数据包的大小,在默认的情况下windows的ping发送的数据包大小为32byt,也可以自己定义,但有一个限制,就是最大只能发送65500byt,超过这个数时,对方就很有可能因接收的数据包太大而死机,所以微软公司为了解决这一安全漏洞于是限制了ping的数据包大小。

-f——在数据包中发送“不要分段”标志,一般你所发送的数据包都会通过路由分段再发送给对方,加上此参数以后路由就不会再分段处理。

-i ttl——指定TTL值在对方的系统里停留的时间,此参数同样是帮助你检查网络运转情况的。

-v tos——将“服务类型”字段设置为“tos” 指定的值。

-r count——在“记录路由”字段中记录传出和返回数据包的路由。

一般情况下你发送的数据包是通过一个个路由才到达对方的,但到底是经过了哪些路由呢?通
过此参数就可以设定你想探测经过的路由的个数,不过限制在了9个,也就是说你只能跟踪到9个路由。

-s count——指定“count” 指定的跃点数的时间戳,此参数和-r差不多,只是这个参数不记录数据包返回所经过的路由,最多也只记录4个。

-j host-list ——利用“ computer-list” 指定的计算机列表路由数据包。

连续计算机可以被中间网关分隔IP 允许的最大数量为9。

-k host-list ——利用“computer-list” 指定的计算机列表路由数据包。

连续计算机不能被中间网关分隔IP 允许的最大数量为9。

-w timeout——指定超时间隔,单位为毫秒。

destination-list ——是指要测试的主机名或IP地址
-t参数
-t——有这个参数时,当你ping一个主机时系统就不停的运行ping这个命令,直到你按下Control-C。

例如:
C:\WINDOWS>ping -t
Pinging with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Ping statistics for :
Packets: Sent = 8, Received = 8, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
Control-C
-a参数
-a——解析主机的NETBIOS主机名,如果你想知道你所ping的要机计算机名则要加上这个参数了,一般是在运用ping命令后的第一行就显示出来。

例如:
C:\WINDOWS>ping -a
Pinging 000 [] with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Ping statistics for :
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
可以得知:
ip 为的计算机,NETBIOS名为000
再如:
C:\WINDOWS>ping -a
Pinging [] with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Ping statistics for :
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
可以得知:
ip 为的计算机,NETBIOS名为9
-n参数
-n count——定义用来测试所发出的测试包的个数,缺省值为4。

通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发送20个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过执行带有这个参数的命令获知。

例如:
C:\WINDOWS>ping -n 10
Pinging with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Reply from : bytes=32 time<10ms TTL=64
Ping statistics for :
Packets: Sent = 10, Received = 10, Lost = 0 (0% loss)
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
向IP为的计算机,发送10个数据包,发送10个,返回10个,没有丢包。

-l参数
-l length——定义所发送缓冲区的数据包的大小,在默认的情况下windows的ping发送的数据包大小为32byt,也可以自己定义,但有一个限制,就是最大只能发送65500byt,超过这个数时,对方就很有可能因接收的数据包太大而死机,所以微软公司为了解决这一安全漏洞于是限制了ping的数据包大小。

例如:
C:\WINDOWS>ping -l 32768 -n 10
Pinging with 32768 bytes of data:
Request timed out.
Reply from : bytes=32768 time=12ms TTL=64
Reply from : bytes=32768 time=12ms TTL=64
Reply from : bytes=32768 time=12ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Reply from : bytes=32768 time=9ms TTL=64
Ping statistics for :
Packets: Sent = 10, Received = 9, Lost = 1 (10% loss),
Approximate round trip times in milli-seconds:
Minimum = 9ms, Maximum = 12ms, Average = 9ms
向IP为的计算机,发送大小为32768byt的数据包10个,发送10个,返回9个,丢失1个。

返回数据包最短时间为9ms,最长时间为12ms。

2.Ping命令的应用
(1)、测试网络的通畅
我们知道可以用ping命令来测试一下网络是否通畅,这在局域网的维护中经常用到,方法很简单,只需要在DOS或Windows的开始菜单下的“运行”子项中用ping命令加上所要测试的目标计算机的IP地址或主机名即可(目标计算机要与你所运行ping命令的计算机在同一网络或通过电话线或其它专线方式已连接成一个网络),其它参数可全不加。

如要测试台IP地址为的工作站与服务器是否已连网成功,就可以在服务器上运行:ping -a 即可,如果工作站上TCP/IP协议工作正常,即会以DOS屏幕方式显示如下所示的信息:
C:\WINDOWS>ping -a
Pinging [] with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Reply from : bytes=32 time<10ms TTL=128
Ping statistics for :
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
从上面我们就可以看出目标计算机与服务器连接成功,TCP/IP协议工作正常,因为加了“-a”这个参数所以还可以知道IP为的计算机的NetBIOS名为9。

下面我们来PING IP为的计算机,如果网络未连成功则显示如下错误信息:
C:\WINDOWS>ping
Pinging with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for :
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
为什么不管网络是否连通在提示信息中都会有重复四次一样的信息呢(如上的“Reply from : bytes=32768 time=12ms TTL=64”和“Request timed out”),那是因为一般系统默认每次用ping测试时是发送四个数据包,这些提示就是告诉你所发送的四个数据包的发送情况。

(2)、获取计算机的IP地址
利用ping这个工具我们可以获取对方计算机的IP地址,特别是在局域网中,我们经常是利用NT或WIN2K的DHCP动态IP地址服务自动为各工作站分配动态IP地址,这时当然我们要知道所要测试的计算机的NETBIOS名,也即我们通常在“网络邻居”中看到的“计算机名”。

使用ping命令时我们只要用ping命令加上目标计算机名即可,如果网络连接正常,则会显示所ping的这台机的动态IP地址。

其实我们完全可以在互联网使用,以获取对方的动态IP地址,这一点对于黑客来说是比较有用的,当然首先的一点就是你先要知道对方的计算机名。

例如:
C:\WINDOWS>ping
Pinging [] with 32 bytes of data:
Request timed out.
Request timed out.
Request timed out.
Request timed out.
Ping statistics for :
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
ping ,得到的计算机,IP为。

ping命令的其他技巧:在一般情况下还可以通过ping对方让对方返回给你的TTL 值大小,粗略的判断目标主机的系统类型是Windows系列还是UNIX/Linux系列,一般情况下Windows系列的系统返回的TTL值在100-130之间,而
UNIX/Linux系列的系统返回的TTL值在240-255之间,当然TTL的值在对方的主机里是可以修改的,Windows系列的系统可以通过修改注册表以下键值实现。

呵呵,我也就知道这么多了。

其它的参数,也不怎么弄得明白。

ping命令参数详细解释
-a 将目标的机器标识转换为ip地址
-t 若使用者不人为中断会不断的ping下去
-n count 要求ping命令连续发送数据包,直到发出并接收到count个请求
-d 为使用的套接字打开调试状态
-f 是一种快速方式ping。

使得ping输出数据包的速度和数据包从远程主机返回一样快,或者更快,达到每秒100次。

在这种方式下,每个请求用一个句点表示。

对于每一个响应打印一个空格键。

-i seconds 在两次数据包发送之间间隔一定的秒数。

不能同-f一起使用。

-n 只使用数字方式。

在一般情况下ping会试图把IP地址转换成主机名。

这个选项要求ping打印IP地址而不去查找用符号表示的名字。

如果由于某种原因无法使用本地DNS服务器这个选项就很重要了。

-p pattern 拥护可以通过这个选项标识16 pad字节,把这些字节加入数据包中。

当在网络中诊断与数据有关的错误时这个选项就非常有用。

-q 使ping只在开始和结束时打印一些概要信息。

-R 把ICMP RECORD-ROUTE选项加入到ECHO_REQUEST数据包中,要求在数据包中记录路由,这样当数据返回时ping就可以把路由信息打印出来。

每个数据包只能记录9个路由节点。

许多主机忽略或者放弃这个选项。

-r 使ping命令旁路掉用于发送数据包的正常路由表。

-s packetsize 使用户能够标识出要发送数据的字节数。

缺省是56个字符,再加上8个字节的ICMP数据头,共64个ICMP数据字节。

-v 使ping处于verbose方式。

它要ping命令除了打印ECHO-RESPONSE 数据包之外,还打印其它所有返回的ICMP数据包。

《ping的参数!》
ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]
[-w timeout] destination-list
Ping 命令可以用来验证与远程计算机的连接。

(该命令只有在安装了TCP/IP 协议后才能使用)
【参数说明】:
-t :一直Ping指定的计算机,直到从键盘按下Control-C中断。

-a :将地址解析为计算机NetBios名。

-n :发送count指定的ECHO数据包数。

,通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助。


够测试发送数据包的返回平均时间,及时间的快慢程度。

默认值为4。

-l :发送指定数据量的ECHO数据包。

默认为32 字节;最大值是65500byt。

-f :在数据包中发送“不要分段”标志,数据包就不会被路由上的网关分段。

通常你所发送的数据包都会通过路由分
段再发送给对方,加上此参数以后路由就不会再分段处理。

-i :将“生存时间”字段设置为TTL指定的值。

指定TTL值在对方的系统里停留的时间。

同时检查网络运转情况的。

-v :tos 将“服务类型”字段设置为tos 指定的值。

-r :在“记录路由”字段中记录传出和返回数据包的路由。

通常情况下,发送的数据包是通过一系列路由才到达目
标地址的,通过此参数可以设定,想探测经过路由的个数。

限定能跟踪到9
个路由。

-s :指定count 指定的跃点数的时间戳。

与参数-r差不多,但此参数不记录数据包返回所经过的路由,最多只记
录4个。

-j :利用computer-list 指定的计算机列表路由数据包。

连续计算机可以被中间网关分隔(路由稀疏源) IP 允许的
最大数量为9。

-k :computer-list 利用computer-list 指定的计算机列表路由数据包。

连续计算机不能被中间网关分隔(路由严格
源)IP 允许的最大数量为9。

-w:timeout 指定超时间隔,单位为毫秒。

destination-list:指定要ping 的远程计算机。

一般情况下,通过ping目标地址,可让对方返回TTL值的大小,通过TTL值可以粗略判断目标主机的系统类型是Windows还是UNIX/Linux,一般情况下Windows系统返回的TTL值在100-130之间,而UNIX/Linux系统返回的TTL 值在240-255之间。

但TTL的值是可以修改的。

故此种方法可作为参考.
【一般操作方法如下】:
C:\>ping Pinging with 32 bytes of data:
Reply from : bytes=32 time=160ms TTL=41
Reply from : bytes=32 time=150ms TTL=41
Reply from : bytes=32 time=160ms TTL=41
Reply from : bytes=32 time=161ms TTL=41
Ping statistics for :
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate
round trip times in milli-seconds:
Minimum = 150ms, Maximum = 161ms, Average = 157ms
--------------------------------------------------------------------------------
Tracerttracert
Tracert 该诊断实用程序将包含不同生存时间(TTL) 值的Internet 控制消息协议(ICMP)
回显数据包发送到目标,以决定到达目标采用的路由。

要在转发数据包上的TTL 之前至少递减1,必需路径上的每个路由器,所以TTL
是有效的跃点计数。

数据包上的TTL 到达0 时,路由器应该将“ICMP 已超时”的消息发送回源系统。

Tracert 先发送TTL
为1 的回显数据包,并在随后的每次发送过程将TTL递增1,直到目标响应或TTL
达到最大值,从而确定路由。

路由通过检查中级路由器发送回的“ICMP 已超时”的消息来确定路由。

不过,有些路由器悄悄地下传包含过期TTL
值的数据包,而tracert 看不到。

tracert [-d] [-h maximum_hops] [-j computer-list] [-w timeout]
target_name
参数说明:
/d 指定不将地址解析为计算机名。

-h maximum_hops 指定搜索目标的最大跃点数。

-j computer-list 指定沿computer-list 的稀疏源路由。

-w timeout 每次应答等待timeout 指定的微秒数。

target_name 目标计算机的名称。

一般操作方法如下:
C:\>tracert Tracing route to over a maximum
of 30 hops:
1 10 ms <10 ms <10 ms
2 <10 ms 10 ms <10 ms
3 <10 ms 20 ms 10 ms
4 <10 ms 10 ms 10 ms
5 <10 ms 10 ms 10 ms
6 10 ms 10 ms <10 ms
7 10 ms 20 ms 20 ms
8 <10 ms 10 ms 10 ms
9 <10 ms 10 ms 10 ms
10 20 ms 30 ms 20 ms []
11 20 ms 30 ms 30 ms []
12 160 ms 161 ms 160 ms
[]
13 200 ms 201 ms 200 ms
[]
14 190 ms 190 ms 190 ms
[]
15 160 ms 160 ms 160 ms
[]
16 180 ms 180 ms 160 ms
[]
17 170 ms 210 ms 321 ms []
18 170 ms 170 ms 170 ms []
PING命令Ping概述:
何为ping?
是DOS命令,一般用于检测网络通与不通,也叫时延,其值越大,速度越慢
PING (Packet Internet Grope),因特网包探索器,用于测试网络连接量的程序。

Ping发送一个ICMP回声请求消息给目的地并报告是否收到所希望的ICMP 回声应答。

它是用来检查网络是否通畅或者网络连接速度的命令。

作为一个生活在网络上的管理员或者黑客来说,ping命令是第一个必须掌握的DOS命令,它所利用的原理是这样的:网络上的机器都有唯一确定的IP地址,我们给目标IP地址发送一个数据包,对方就要返回一个同样大小的数据包,根据返回的数据包我们可以确定目标主机的存在,可以初步判断目标主机的操作系统等。

Ping 是Windows系列自带的一个可执行命令。

利用它可以检查网络是否能够连通,用好它可以很好地帮助我们分析判定网络故障。

应用格式:Ping IP地址。

该命令还可以加许多参数使用,具体是键入Ping按回车即可看到详细说明。

ping指的是端对端连通,通常用来作为可用性的检查,
但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。

严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。

PING命令参数详解
1、-a 解析计算机NetBios名。

示例:
C:\>ping -a
Pinging [] with 32 bytes of data:
Reply from : bytes=32 time<10ms TTL=254
Reply from : bytes=32 time<10ms TTL=254
Reply from : bytes=32 time<10ms TTL=254
Reply from : bytes=32 time<10ms TTL=254
Ping statistics for :
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
从上面就可以知道IP为的计算机NetBios名为。

2、n count 发送count指定的Echo数据包数。

在默认情况下,一般都只发送四个数据包,通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发送50个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过以下获知:
C:\>ping -n 50
Pinging with 32 bytes of data:
Reply from : bytes=32 time=50ms TTL=241
Reply from : bytes=32 time=50ms TTL=241
Reply from : bytes=32 time=50ms TTL=241
Request timed out.
………………
Reply from : bytes=32 time=50ms TTL=241
Reply from : bytes=32 time=50ms TTL=241
Ping statistics for :
Packets: Sent = 50, Received = 48, Lost = 2 (4% loss),Approximate round trip times in milli-seconds:
Minimum = 40ms, Maximum = 51ms, Average = 46ms
从以上我就可以知道在给发送50个数据包的过程当中,返回了48个,其中有两个由于未知原因丢失,这48个数据包当中返回速度最快为40ms,最慢为51ms,平均速度为46ms。

3、-l size . 定义echo数据包大小。

在默认的情况下windows的ping发送的数据包大小为32byt,我们也可以自己定义它的大小,但有一个大小的限制,就是最大只能发送65500byt,也许有人会问为什么要限制到65500byt,因为Windows系列的系统都有一个安全漏洞(也许还包括其他系统)就是当向对方一次发送的数据包大于或等于65532时,对方就很有可能当机,所以微软公司为了解决这一安全漏洞于是限制了ping的数据包大小。

虽然微软公司已经做了此限制,但这个参数配合其他参数以后危害依然非常强大,比如我们就可以通过配合-t参数来实现一个带有攻击性的命令:(以下介绍带有危险性,仅用于试验,请勿轻易施于别人机器上,否则后果自负)C:\>ping -l 65500 -t
Pinging with 65500 bytes of data:
Reply from : bytes=65500 time<10ms TTL=254
Reply from : bytes=65500 time<10ms TTL=254
………………
这样它就会不停的向计算机发送大小为65500byt的数据包,如果你只有一台计算机也许没有什么效果,但如果有很多计算机那么就可以使对方完全瘫痪,曾做过这样的试验,当同时使用10台以上计算机ping一台Win2000Pro系统的计算机时,不到5分钟对方的网络就已经完全瘫痪,网络严重堵塞,HTTP和FTP 服务完全停止,由此可见威力非同小可。

4、-f 在数据包中发送“不要分段”标志。

在一般你所发送的数据包都会通过路由分段再发送给对方,加上此参数以后路由就不会再分段处理。

5、-i TTL 指定TTL值在对方的系统里停留的时间。

此参数同样是帮助你检查网络运转情况的。

6、-v TOS 将“服务类型”字段设置为tos 指定的值。

7、-r count 在“记录路由”字段中记录传出和返回数据包的路由。

在一般情况下你发送的数据包是通过一个个路由才到达对方的,但到底是经过了哪些路由呢?通过此参数就可以设定你想探测经过的路由的个数,不过限制在了9个,也就是说你只能跟踪到9个路由,如果想探测更多,可以通过其他命令实现。

C:\>ping -n 1 -r 9 (发送一个数据包,最多记录9个路由)
Pinging with 32 bytes of data:
Reply from : bytes=32 time=10ms TTL=249
Route: ->
->
->
->
->
->
->
->
Ping statistics for :
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 10ms, Maximum = 10ms, Average = 10ms
从上面我就可以知道从我的计算机到一共通过了,, , , , 这几个路由。

8、-s count 指定count 指定的跃点数的时间戳。

此参数和-r差不多,只是这个参数不记录数据包返回所经过的路由,最多也只记录4个。

9、-j host-list 利用computer-list 指定的计算机列表路由数据包。

连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为9。

10、-k host-list 利用computer-list 指定的计算机列表路由数据包。

连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为9。

11、-w timeout 指定超时间隔,单位为毫秒。

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

ping命令的其他技巧:
在一般情况下还可以通过ping对方让对方返回给你的TTL值大小,粗略的判断目标主机的系统类型是Windows系列还是UNIX/Linux系列,一般情况下Windows系列的系统返回的TTL值在100-130之间,而UNIX/Linux系列的系统返回的TTL值在240-255之间,当然TTL的值在对方的主机里是可以修改的,Windows系列的系统可以通过修改注册表以下键值实现:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters]
"DefaultTTL"=dword:000000ff
255---FF
128---80
64----40
32----20
在网络没有问题,却无法PING通时可能有以下一些情况。

1.太心急。

即网线刚插到交换机上就想Ping通网关,忽略了生成树的收敛时间。

当然,较新的交换机都支持快速生成树,或者有的管理员干脆把用户端口(access port)的生成树协议关掉,问题就解决了。

2.访问控制。

不管中间跨越了多少跳,只要有节点(包括端节点)对ICMP进行了过滤,Ping不通是正常的。

最常见的就是防火墙的行为。

3.某些路由器端口是不允许用户Ping的。

还遇到过这样的情形,更为隐蔽。

1.网络因设备间的时延太大,造成ICMP echo报文无法在缺省时间(2秒)内收到。

时延的原因有若干,比如线路(卫星网时延上下星为540毫秒),路由器处理时延,或路由设计不合理造成迂回路径。

使用扩展Ping,增加timed out 时间,可Ping通的话就属路由时延太大问题。

2.引入NAT的场合会造成单向Ping通。

NAT可以起到隐蔽内部地址的作用,当由内Ping外时,可以Ping通是因为NAT表的映射关系存在,当由外发起Ping 内网主机时,就无从查找边界路由器的NAT表项了。

3.多路由负载均衡场合。

比如Ping远端目的主机,成功的reply和timed out 交错出现,结果发现在网关路由器上存在两条到目的网段的路由,两条路由权重相等,但经查一条路由存在问题。

地址分配不连续。

地址规划出现问题象是在网络中埋了地雷,地址重叠或掩码划分不连续都可能在Ping时出现问题。

比如一个极端情况,A、B两台主机,经过多跳相连,A能Ping通B的网关,而且B的网关设置正确,但A、B就是Ping 不通。

经查,在B的网卡上还设有第二个地址,并且这个地址与A所在的网段重叠。

5.指定源地址的扩展Ping。

登陆到路由器上,Ping远程主机,当ICMP echo request从串行广域网接口发出去的时候,路由器会指定某个IP地址作为源IP,这个IP地址可能不是此接口的IP或这个接口根本没有IP地址。

而某个下游路由器可能并没有到这个IP网段的路由,导致不能Ping通。

可以采用扩展Ping,指定好源IP地址。

当主机网关和中间路由的配置认为正确时,出现Ping问题也是很普遍的现象。

此时应该忘掉"不可能"几个字,把Ping的扩展参数和反馈信息、traceroute、路由器debug、以及端口镜像和Sniffer等工具结合起来进行分析。

比如,当A、B两台主机经过多跳路由器相连时,二者网关设置正确,在A上可以Ping通B,但在B上不能Ping通A。

可以通过在交换机做镜像,并用Sniffer 抓包,来找出ICMP 报文终止于何处,报文内容是什么,就可以发现ICMP报文中的源IP地址并非预期的那样,此时很容易想象出可能是路由器的NAT功能使然,这样就能够逐步地发现一些被忽视的问题。

而Ping不通时的反馈信息是"destination_net_unreachable"还是"timed out"也是有区别的
利用PING来检查网络状态的方法:
本机IP
例如本机IP地址为:。

则执行命令Ping 。

如果网卡安装配置没有问题,则应有类似下列显示:
Replay from bytes=32 time<10ms
Ping statistics for
Packets Sent=4 Received=4 Lost=0 0% loss
Approximate round trip times in milli-seconds
Minimum=0ms Maxiumu=1ms Average=0ms
如果在MS-DOS方式下执行此命令显示内容为:Request timed out,则表明网卡安装或配置有问题。

将网线断开再次执行此命令,如果显示正常,则说明本机使用的IP地址可能与另一台正在使用的机器IP地址重复了。

如果仍然不正常,则表明本机网卡安装或配置有问题,需继续检查相关网络配置。

网关IP
假定网关IP为:,则执行命令Ping 。

在MS-DOS方式下执行此命令,如果显示类似以下信息:
Reply from bytes=32 time=9ms TTL=255
Ping statistics for
Packets Sent=4 Received=4 Lost=0
Approximate round trip times in milli-seconds
Minimum=1ms Maximum=9ms Average=5ms
则表明局域网中的网关路由器正在正常运行。

反之,则说明网关有问题。

远程IP
这一命令可以检测本机能否正常访问Internet。

比如本地电信运营商的IP地址为:。

在MS-DOS方式下执行命令:Ping ,如果屏幕显示:
Reply from bytes=32 time=33ms TTL=252
Reply from bytes=32 time=21ms TTL=252
Reply from bytes=32 time=5ms TTL=252
Reply from bytes=32 time=6ms TTL=252
Ping statistics for
Packets Sent=4 Received=4 Lost=0 0% loss
Approximate round trip times in milli-seconds
Minimum=5ms Maximum=33ms Average=16ms
则表明运行正常,能够正常接入互联网。

反之,则表明主机文件(windows/host)存在问题。

ping命令的用法
验证与远程计算机的连接。

该命令只有在安装了TCP/IP 协议后才可以使用。

ping [-t] [-a] [-n count] [-l length] [-f] [-i ttl] [-v tos] [-r count] [-s count] [[-j computer-list] | [-k computer-list]] [-w timeout] destination-list
参数
-t
Ping 指定的计算机直到中断。

-a
将地址解析为计算机名。

-n count
发送count 指定的ECHO 数据包数。

默认值为4。

-l length
发送包含由length 指定的数据量的ECHO 数据包。

默认为32 字节;最大值是65,527。

-f
在数据包中发送“不要分段”标志。

数据包就不会被路由上的网关分段。

-i ttl
将“生存时间”字段设置为ttl 指定的值。

-v tos
将“服务类型”字段设置为tos 指定的值。

-r count
在“记录路由”字段中记录传出和返回数据包的路由。

count 可以指定最少1 台,最多9 台计算机。

-s count
指定count 指定的跃点数的时间戳。

-j computer-list
利用computer-list 指定的计算机列表路由数据包。

连续计算机可以被中间网关分隔(路由稀疏源)IP 允许的最大数量为9。

-k computer-list
利用computer-list 指定的计算机列表路由数据包。

连续计算机不能被中间网关分隔(路由严格源)IP 允许的最大数量为9。

-w timeout
指定超时间隔,单位为毫秒。

destination-list
指定要ping 的远程计算机
Ping相关环境讯息
适用环境:WIN95/98/2000/NT
使用格式:ping [-t] [-a] [-n count] [-l size]
参数介绍:
-t 让用户所在的主机不断向目标主机发送数据
-a 以IP地址格式来显示目标主机的网络地址
-n count 指定要ping多少次,具体次数由后面的count来指定
-l size 指定发送到目标主机的数据包的大小
主要功能:用来测试一帧数据从一台主机传输到另一台主机所需的时间,从而判断主响应时间。

详细介绍:
该命令主要是用来检查路由是否能够到达,由于该命令的包长非常小,所以在网上传递的速度非常快,可以快速地检测你要去的站点是否可达,一般你在去某一站点时可以先运行一下该命令看看该站点是否可达。

如果执行Ping不成功,则可以预测故障出现在以下几个方面:网线是否连通,网络适配器配置是否正确,IP地址是否可用等;如果执行Ping成功而网络仍无法使用,那么问题很可能出在网络系统的软件配置方面,Ping成功只能保证当前主机与目的主机间存在一条连通的物理路径。

它的使用格式是在命令提示符下键入:Ping IP地址或主机名,执行结果显示响应时间,重复执行这个命令,你可以发现Ping报告的响应时间是不同的。

具体的ping命令后还可跟好多参数,你可以键入ping后回车其中会有很详细的说明
Nslookup-------IP地址侦测器explorer-------打开资源管理器
logoff---------注销命令tsshutdn-------60秒倒计时关机命令
本机用户和组本地服务设置
oobe/msoobe /a----检查XP是否激活notepad--------打开记事本
cleanmgr-------垃圾整理net start messenger----开始信使服务
计算机管理net stop messenger-----停止信使服务
conf-----------启动netmeeting dvdplay--------DVD播放器
charmap--------启动字符映射表磁盘管理实用程序
calc-----------启动计算器磁盘碎片整理程序
磁盘检查设备管理器
regsvr32 /u *.dll----停止dll文件运行drwtsn32------ 系统医生
rononce -p ----15秒关机dxdiag---------检查DirectX信息
regedt32-------注册表编辑器系统配置实用程序
组策略结果集显示内存使用情况
注册表winchat--------XP自带局域网聊天。

相关文档
最新文档