Ping是一种计算机网络管理工具,主要用于测试网络连接状态和诊断网络问题,比如常见的ping,我们可以使用ping工具ping百度 ping www.baidu.com 查看本地与百度直接的连接是否正常、是否丢包,或者ping本地网络ping 192.168.1.1,查看本地网络连接是否有丢包情况。


ping基本概念
Ping全称Packet Internet Groper(因特网包探索器),通过发送ICMP回显请求报文并接收回显应答来测试目标主机的可达性,其名称来源于声纳系统的回声定位原理,由Mike Muuss于1983年开发。
工作原理
向目标主机发送ICMP Echo Request数据包
等待目标主机返回ICMP Echo Reply数据包
计算往返时间(RTT)和丢包率
主要功能
测试网络连通性
测量网络延迟(ping值,单位为毫秒)
检测数据包丢失情况
初步判断目标主机操作系统类型(通过TTL值)
常用命令格式:
ping [目标地址]
例如:ping 192.168.1.1
ping www.baidu.com
结果解读:
ping 192.168.2.2
PING 192.168.2.2 (192.168.2.2): 56 data bytes
64 bytes from 192.168.2.2: icmp_seq=0 ttl=64 time=1.288 ms
64 bytes from 192.168.2.2: icmp_seq=1 ttl=64 time=1.394 ms
64 bytes from 192.168.2.2: icmp_seq=2 ttl=64 time=1.201 ms
64 bytes from 192.168.2.2: icmp_seq=3 ttl=64 time=1.368 ms
64 bytes from 192.168.2.2: icmp_seq=4 ttl=64 time=1.361 ms
64 bytes from 192.168.2.2: icmp_seq=5 ttl=64 time=1.097 ms
正常响应包含:数据包大小、响应时间、TTL值
ping值越小表示网络延迟越低(10ms以下为最佳)
100%丢包表示网络完全不通
ping www.google.com
PING www.google.com (142.250.72.132): 56 data bytes
Request timeout for icmp_seq 0
Request timeout for icmp_seq 1
Request timeout for icmp_seq 2
Request timeout for icmp_seq 3
Request timeout for icmp_seq 4
Request timeout for icmp_seq 5
Request timeout for icmp_seq 6
Request timeout for icmp_seq 7
Request timeout for icmp_seq 8
Request timeout for icmp_seq 9
Request timeout for icmp_seq 10
Request timeout for icmp_seq 11
需要注意的是,一些服务器设置的禁止ping服务,所以禁止ping后,用户无法使用ping服务ping出正确的返回信息。
怎样使用Ping这命令来测试网络连通呢?
连通问题是由许多原因引起的,如本地配置错误、远程主机协议失效等,当然还包括设备等造成的故障。
首先我们讲一下使用Ping命令的步骤。
使用Ping检查连通性有六个步骤:
1、 使用ipconfig/all观察本地网络设置是否正确;
2、 Ping 127.0.0.1,127.0.0.1回送地址Ping回送地址是为了检查本地的TCP/IP协议有没有设置好;
3、Ping本机IP地址,这样是为了检查本机的IP地址是否设置有误;
4、Ping本网网关或本网IP地址,这样的是为了检查硬件设备是否有问题,也可以检查本机与本地网络连接是否正常;(在非局域网中这一步骤可以忽略)
5、Ping本地DNS地址,这样做是为了检查本地DNS服务器是否工作正常。
6、Ping远程IP地址,这主要是检查本网或本机与外部的连接是否正常。
常见的Ping命令参数:
Windows:
-t:无限期地发送Ping请求,直到用户手动停止(使用Ctrl+C)。
-n [次数]:指定Ping请求的次数。
-l [大小]:指定发送数据包的大小,单位是字节。
Unix/Linux:
-c [次数]:发送指定次数的Ping请求。
-s [大小]:指定发送数据包的大小,单位是字节。
-t [ttl值]:设置数据包的TTL值。