ping命令-网络故障排查利器

920 阅读4分钟

公司小业务又是严重依赖网络,员工电脑网络出点问题、公司网络不通都得找你,都是windows电脑,windows下的ping命令可谓是网络故障排查利器

Ping命令的语法格式

Windows 的 Ping 命令的语法格式如下。

各参数含义说明如下。

  • -t:测试指定的计算机直到人为中断为止。可以使用组合键+强制中断,也可使用+暂停,查看信息,再按任一键继续。
  • -a:将 IP 地址解析为计算机名。
  • -n count:设置要发送 ECHO 数据包数,用 count 表示,默认值为 4。
  • -l size:发送缓存区的大小,由 size 指定,默认为 32 字节,最大值是 65527 字节。
  • -f:在数据包中设置不分段标志,这样数据包就不会被路由上的网关分段。
  • -i ttl:设置生存时间,由 ttl 指定。
  • -v tos:设置服务类型,由 tos 指定。
  • -r count:设置要记录的路由器的数目,由 count 指定,可以指定最少 1 台,最多 9 台计算机。
  • -s count:设置时间戳的路由器数目,由 count 指定。
  • -j computer-list:由 computer-list 指定的计算机列表(不严格按照列表顺序)作为 ping 数据包的路由路径。
  • -k computer-list:由 computer-list 指定的计算机列表(严格按照列表顺序)作为 ping 数据包的路由路径。允许的最大数量为 9。
  • -w timeout:指定超时间隔,单位为毫秒。默认为 1000 毫秒,即 1 秒。如果通过 ping 探测的远程系统经过长时间延迟的链路,则响应可能会花更长的时间才能返回,可以使用-w 选项指定更长时间的超时。
  • destination-list:指定要测试的目的计算机的域名或 IP 地址。

测试网络连通性步骤

使用 Ping 命令测试网络连通性的具体步骤如下。

(1)Ping 环回地址,验证是否在本地计算机上安装 TCP/IP 协议以及配置是否正确。执行命令 ping 127.0.0.1。如果不能成功,应安装和配置 TCP/IP 之后重新启动计算机。

(2)Ping 本地计算机,验证是否将当前计算机正确地添加到网络。

(3)Ping 默认网关,验证默认网关是否运行以及能否与同一网段上的主机通信。

(4)Ping 远程主机,验证能否通过路由器进行通信。如果有问题,可检查路由器配置,确认启用 IP 路由和路由器之间的连接正常。

常用命令

ping -t

ping -t的使用,不间断地Ping指定计算机,直到管理员中断。

image-20230505233532921.png 这就说明电脑连接路由器是通的,网络效果很好。下面按按住键盘的Ctrl+c终止它继续ping下去,就会停止了,会总结出运行的数据包有多少,通断的有多少了。

ping -a

ping -a的使用,ping-a解析计算机名与NetBios名。就是可以通过ping它的ip地址,可以解析出主机名。

image-20230505234014469.png

ping -l

ping -l size的使用,-l size:发送size指定大小的到目标主机的数据包。

在默认的情况下Windows的ping发送的数据包大小为32byt,最大能发送65500byt。当一次发送的数据包大于或等于65500byt时,将可能导致接收方计算机宕机。所以微软限制了这一数值;这个参数配合其它参数以后危害非常强大,比如攻击者可以结合-t参数实施DOS攻击。(所以它具有危险性,不要轻易向别人计算机使用)。

例如:ping -l 65500 -t 192.168.2.118

会连续对IP地址执行ping命令,直到被用户以Ctrl+C中断.

image-20230505234453783.png

这样它就会不停的向192.168.2.118计算机发送大小为65500byt的数据包,如果你只有一台计算机也许没有什么效果,但如果有很多计算机那么就可以使对方完全瘫痪,网络严重堵塞,由此可见威力非同小可。

ping -r

ping -r count的使用,在“记录路由”字段中记录传出和返回数据包的路由,探测经过的

路由个数,但最多只能跟踪到9个路由。

ping -n 1 -r 9 202.102.224.25 (发送一个数据包,最多记录9个路由)

批量Ping网段

对于一个网段ip地址众多,如果单个检测实在麻烦,那么我们可以直接批量ping网段检测,那个ip地址出了问题,一目了然。

先看代码,直接在命令行窗口输入:

for /L %D in (1,1,255) do ping 192.168.2.%D

IP地址段修改成你要检查的IP地址段。

当输入批量命令后,那么它就自动把网段内所有的ip地址都ping完为止。

那么这段“for /L %D in(1,1,255) do ping 192.168.2.%D” 代码是什么意思呢?

代码中的这个(1,1,255)就是网段起与始,就是检测网段192.168.2.1到192.168.2.255之间的所有的ip地址,每次逐增1,直接到1到255这255个ip检测完为止。