| 参数 | 说明 | 示例 |
|---|---|---|
| -t | 持续发送请求,直到手动停止(Ctrl+C) | ping -t 192.168.1.1 |
| -n [次数] | 指定发送的请求次数 | ping -n 10 google.com |
| -l [大小] | 指定发送的数据包大小(字节) | ping -l 1500 google.com |
| -f | 设置“不分段”标志(用于测试 MTU) | ping -f -l 1472 google.com |
| -i [TTL] | 设置数据包生存时间(TTL) | ping -i 64 google.com |
| -w [超时] | 设置等待回复的超时时间(毫秒) | ping -w 5000 google.com |
| -a | 尝试将 IP 地址解析为主机名 | ping -a 192.168.1.1 |
| -4 | 强制使用 IPv4 | ping -4 google.com |
| -6 | 强制使用 IPv6 | ping -6 ipv6.google.com |
| -r [跃点数] | 记录路由(最多 9 个跃点) | ping -r 3 google.com |
| -s [时间戳] | 记录每个跃点的时间戳 | ping -s 4 google.com |
| 无参数 | 发送 4 个回显请求包 | ping google.com |
PING出来的ipv4里面的TTL是什么意思?
TTL(Time to Live,生存时间) 是 IP 数据包头部的一个字段,作用如下:
防止数据包无限循环:当数据包在网络中传输时,每经过一个路由器(或“一跳”),TTL 会减少 1。当 TTL=0,当前路由器会丢弃该数据包,并向源地址发送 ICMP 超时消息,避免网络拥堵。
初始 TTL 值由目标主机操作系统决定(常见默认值)
Windows: 通常 128
Linux/Unix/Android/路由器: 通常 64
Cisco 网络设备: 常用 255
示例:我pin出ipv4地址里面的TTL=55,说明是Liunx/unix等系统,那就用64-55=9跳,表示经历了9个路由节点。若显示 TTL=123,大概率是 Windows 系统(初始 128,128-123=5 跳)。
推测目标主机的操作系统
通过 TTL 值判断对方系统类型(仅供参考,需结合其他方法确认):
TTL≈128~255 → Windows 或某些网络设备。
TTL≈64 → Linux/Unix/安卓设备。