ping
安全软件排名-360购票
2023年4月6日发(作者:mozillafirefox是什么)PING命令的详解
在本次北京军网PDSN开通过程中,常常要用到“ping”这个从DOS时代就有的命令,
总结了一些小经验,现在和大家分享一下。
首先要确认电脑上安装了TCP/IP通讯协议,ping只有在安装了TCP/IP通讯协议以后才
可以使用。“ping”命令的完整形式如下:
ping[-t][-a][-ncount][-llength][-f][-ittl][-vtos][-rcount][-scount][[-j
computer-list]|[-kcomputer-list]][-wtimeout]destination-list
其中,[-t]参数表示不停的ping对方主机,直到按下Ctrl+C。这个功能参数没有什么
特别的技巧,不过可以配合其它参数使用,将在下面提到。
[-a]参数表示在ping的过程中解析对方计算机的NetBios名。该功能参数还是比较有用
的,它可以让你确定每个机器名对应的IP地址,而且在网络中的一台机器就可以查看到能
ping通的所有机器的机器名。例如:
C:\>ping-a202.103.147.132
[202.103.147.132]with32bytesofdata:
Replyfrom202.103.147.132:bytes=32time=200msTTL=109
Replyfrom202.103.147.132:bytes=32time=194msTTL=109
Replyfrom202.103.147.132:bytes=32time=201msTTL=109
Replyfrom202.103.147.132:bytes=32time=189msTTL=109
Pingstatisticsfor202.103.147.132:
Packets:Sent=4,Received=4,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=189ms,Maximum=201ms,Average=196ms
从上面就可以知道IP为202.103.147.132的计算机NetBios名为
(实际上这就是我们公司网站的真实地址)。
[-ncount]参数发送count指定的Echo数据包数。在默认情况下,一般都只发送四个数
据包,通过这个命令可以自己定义发送的个数,对衡量网络速度很有帮助,比如我想测试发
送10个数据包的返回的平均时间为多少,最快时间为多少,最慢时间为多少就可以通过以
下命令得知:
C:\>ping-n10192.168.1.168
Pinging192.168.1.168with32bytesofdata:
Replyfrom192.168.1.168:bytes=32time=50msTTL=241
Replyfrom192.168.1.168:bytes=32time=51msTTL=241
Replyfrom192.168.1.168:bytes=32time=50msTTL=241
Requesttimedout.
„„„„„„
Replyfrom192.168.1.168:bytes=32time=48msTTL=241
Replyfrom192.168.1.168:bytes=32time=50msTTL=241
Pingstatisticsfor192.168.1.168:
Packets:Sent=10,Received=9,Lost=1(10%loss),Approximateroundtriptimesin
milli-seconds:
Minimum=48ms,Maximum=51ms,Average=49ms
从以上我就可以知道在给192.168.1.168发送10个数据包的过程当中,返回了9个,其
中有一个由于未知原因丢失,这9个数据包当中返回速度最快为48ms,最慢为51ms,平均
速度为49ms。
[-lsize]定义echo数据包大小。在默认的情况下windows的ping发送的数据包大小为
32bytes,我们也可以自己定义它的大小,但最大只能发送65500bytes。这个参数在使用中要
注意数据包的大小不要定得太大,特别是在与其它参数配合使用时,例如[-t]参数,否则会
形成一个带有攻击性的指令,使对方宕机,造成网络崩溃。例如(请勿在商用局中作此实验):
C:\>ping-l65500-t192.168.1.21
Pinging192.168.1.21with65500bytesofdata:
Replyfrom192.168.1.21:bytes=65500time<10msTTL=254
Replyfrom192.168.1.21:bytes=65500time<10msTTL=254
„„„„„„
这样它就会不停的向192.168.1.21计算机发送大小为65500bytes的数据包,若多台计算
机同时使用该命令必会造成网络严重堵塞,有用的数据包会大量丢失,并可能造成HTTP
和FTP服务完全停止。
[-f]在数据包中发送“不要分段”标志。在一般你所发送的数据包都会通过路由分段再
发送给对方,加上此参数以后路由就不会再分段处理。
[-ittl]指定TTL值在对方的系统里停留的时间。此参数同样是帮助你检查网络运转情况
的。
[-vTOS]将“服务类型”字段设置为tos指定的值。
[-rcount]在“记录路由”字段中记录发出和返回数据包的路由。在一般情况下所发送
的数据包是通过一个个路由才到达对方的,通过此参数就可以设定我们想探测经过的路由的
个数,不过限制在了9个,也就是说你只能跟踪到9个路由。例如:
C:\>ping-n1-r9202.96.105.101(发送一个数据包,最多记录9个路由)
Pinging202.96.105.101with32bytesofdata:
Replyfrom202.96.105.101:bytes=32time=10msTTL=249
Route:202.107.208.187->
202.107.210.214->
61.153.112.70->
61.153.112.89->
202.96.105.149->
202.96.105.97->
202.96.105.101->
202.96.105.150->
61.153.112.90
Pingstatisticsfor202.96.105.101:
Packets:Sent=1,Received=1,Lost=0(0%loss),
Approximateroundtriptimesinmilli-seconds:
Minimum=10ms,Maximum=10ms,Average=10ms
可见由本机到202.96.105.101一共通过了202.107.208.187,202.107.210.214,
61.153.112.70,61.153.112.89,202.96.105.149,202.96.105.97这几个路由。
[-scount]指定count值指定的时间戳。此参数和-r差不多,只是这个参数不记录数据包
返回所经过的路由,最多也只记录4个。
[-jhost-list]利用host-list指定的计算机列表路由数据包。
[-khost-list]利用host-list指定的计算机列表路由数据包。
[-wtimeout]指定每次ping操作时间间隔,单位为毫秒。
另外,ping命令还有一个用处:一般情况下,可以通过ping对方让对方返回给你的TTL
值大小,粗略的判断目标主机的系统类型是Windows系列还是UNIX/Linux系列,一般情况
下Windows系列的系统返回的TTL值在100-130之间,而UNIX/Linux系列的系统返回的
TTL值在240-255之间。
附录一ping的帮助命令
C:>ping/?
Usage:ping[-t][-a][-ncount][-lsize][-f][-iTTL][-vTOS]
[-rcount][-scount][[-jhost-list]|[-khost-list]]
[-wtimeout]destination-list
Options:
-tPingthespecifiedhostuntilstopped.
Toseestatisticsandcontinue-typeControl-Break;
Tostop-typeControl-C.
-aResolveaddressestohostnames.
-ncountNumberofechorequeststosend.
-lsizeSendbuffersize.
-fSetDon'tFragmentflaginpacket.
-iTTLTimeToLive.
-vTOSTypeOfService.
-rcountRecordrouteforcounthops.
-scountTimestampforcounthops.
-jhost-listLoosesourceroutealonghost-list.
-khost-listStrictsourceroutealonghost-list.
-wtimeoutTimeoutinmillisecondstowaitforeachreply
附录二pingplus软件
这是给像我一样记不住命令行的懒人准备的—菜单化的ping命令;可以看作是ping的
windows版本吧。
没有病毒,请放心使用。
ping