ping命令可能大部分人不太了解是什么,也不知道是用作什么或有什么功能。其实对于网络技术人员来说,ping命令是再熟悉不过的了,但是能将ping命令的功能发挥到最大限时,却可以说很少有人能达到。在网络中ping是一个非常好用的TCP/IP工具,主要是功能是用来检测网络的连通情况和分析网络的速度。下面就由我告诉大家一些常用的ping大包命令格式。
ping是什么?ping全称Packet Internet Grope—因特网包探索器,是一个Windows自带可执行命令,它是用来检测网络是否通畅或者网络链接速度的命令,利用网络上的机器IP地址的唯一性,给目标地址发送一个数据包,再要求对方反悔一个同样大小的数据包来检测两台网络机器是否连接相通,时延是多少。ping指的是端对端连通,通常用来作为可用性的检查, 但是某些病毒木马会强行大量远程执行ping命令抢占你的网络资源,导致系统变慢,网速变慢。严禁ping入侵作为大多数防火墙的一个基本功能提供给用户进行选择。通常的情况下你如果不用作服务器或者进行网络测试,可以放心的选中它,保护你的电脑。
命令参数参照ping命令的帮助说明来说说使用中会需要的技巧,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指定的计算机,直到从键盘按下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 的远程计算机。
使用方式Windows操作系统: ping x.x.x.x -l, l<=65500
协议分析及工作原理
我们来看一下ping用到的网络协议: ping利用的是ICMP协议的Echo request(type: 8)和Echo reply(type: 0),所以最基本的ping其实就是一个echo request去, 一个echo reply回。我们这一次所以着重看的是-l后面的数字所引起的不同。 因为各物理层都有不同的MTU, 规定了每个packet的最大长度, 像以太网是1500bytes。 对于Windows支持的ping而言, -l后面的最大长度为65500, 也就是说每个ping的包最大可以包含65500bytes个数据, 加上ICMP头(共8个byte), 而ICMP协议是基于IP协议的, 需要再加上IP头(共20个byte), 一共要65528bytes。 这个比1500bytes要长出去很多, 所以必须需要IP协议层做分片处理。 从上面的分析也可以看出来, 每个以太网的packet能装的ICMP的数据部分最大长度也就是1472bytes, 65500bytes需要45个packets来装。
测试范围
1. 网络的连通, 这个用最简单的ping也能达到目的
2. IP协议层的分片和重装的验证, 这个才是这个案例的主要验证对象
3. 网络传输的稳定性和可靠性, 在规定的时间内必须完成45×2=90个packets的传输, 不能错一个
常见错误在检查网络连通的过程中可能出现一些错误,这些错误总的来说分为两种最常见。
1. Request Timed Out"request time out"这提示除了在《PING(一)》提到的对方可能装有防火墙或已关机以外,还有就是本机的IP不正确和网关设置错误。
①、IP不正确:IP不正确主要是IP地址设置错误或IP地址冲突,这可以利用ipconfig /all这命令来检查。在WIN2000下IP冲突的情况很少发生,因为系统会自动检测在网络中是否有相同的IP地址并提醒你是否设置正确。在NT中不但会出现"request time out"这提示而且会出现"Hardware error"这提示信息比较特殊不要给它的提示所迷惑。
②、网关设置错误:这个错误可能会在第四个步骤出现。网关设置错误主要是网关地址设置不正确或网关没有帮你转发数据,还有就是可能远程网关失效。这里主要是在你Ping外部网络地址时出错。错误表现为无法Ping外部主机返回信息"Request timeout"。
2. Destination Host Unreachable当你在开始PING网络计算机时如果网络设备出错它返回信息会提示"destination host unreachable"。如果局域网中使用DHCP分配IP时,而碰巧DHCP失效,这时使用 PING命令就会产生此错误。因为在DHCP失效时客户机无法分配到IP系统只有自设IP,它往往会设为不同子网的IP。所以会现"Destination Host Unreachable"。另外子网掩码设置错误也会出现这错误。
还有一个比较特殊就是路由返回错误信息,它一般都会在"Destination Host Unreachable"前加上IP地址说明哪个路由不能到达目标主机。这说明你的机器与外部网络连接没有问题,但与某台主机连接存在问题。
以上就是关于Ping大包的命令格式,若想良好的运行ping,需安装TCP/IP协议后才能使用,对于ping中的各项参数,内容中已经详细的描述。希望用户们在学会ping的命令之后,千万要遵守网络法律法规,严禁利用ping命令来进行网络轰炸,或者恶意的破坏服务器,切记。