系统学习 Windows 学习路径:从 CMD 到 PowerShell、系统网络,再到 WSL 与 Server

pathping

结合路由跟踪与逐跳丢包统计,区分链路丢包和 ICMP 限速。

补充说明

pathping 先像 tracert 一样列出路径,再对每一跳持续发 ICMP Echo,统计该节点和链路的丢包率与 RTT。默认每跳 100 个查询、间隔 250 毫秒、单次等待 3000 毫秒、最多 30 跳,因此一次完整运行常要几分钟。结果表里 This Node/Link 列才是该跳自身的丢包,上一跳的累计值会把下游丢失也算进去。

边界:它只测 ICMP,不能验证 TCP/UDP 端口或应用层;采样期间路径可能变化;对高带宽链路做高频探测本身也会造成负担。需要端口验证用 Test-NetConnection,需要长期监控用 mtr 或合成探测。-q 太少会让百分比失去统计意义,-q 100 才是默认。

Windows 10/11 行为一致。-n 关闭反向解析,-4/-6 指定协议栈,-h 限制跳数,-p 调整探测间隔,-w 调整单次等待。中途 Ctrl+C 可能只得到部分统计,排障前先估算耗时。

常用示例

# 1. 默认完整采样,最准确但可能运行数分钟
C:\> pathping example.com

# 2. 缩短到 15 跳、每跳 20 个查询,约一分多钟出结果
C:\> pathping -n -q 20 -p 250 -h 15 example.com

# 3. 只测内网网关,快速判断本地链路是否有丢包
C:\> pathping -n -q 10 -p 250 -w 1000 192.168.1.1

# 4. 强制 IPv4,避免双栈环境选到另一条路径
C:\> pathping -4 example.com

# 5. 强制 IPv6,观察 v6 路径的逐跳质量
C:\> pathping -6 example.com

# 6. 指定源地址,验证多网卡主机的实际出口
C:\> pathping -i 192.168.1.10 example.com

易错点与排错

相关命令

参考链接

读完自测

合上页面,先回答,再展开对照。

  1. pathping 输出里某一跳丢包 50%,但后面跳都正常,最可能是什么原因?
  2. 为什么默认运行可能要几分钟?怎样在不失去意义的前提下加速?
  3. pathping 能否证明目标主机的 443 端口可用?不能的话该用什么?
答案
  1. 该路由器对 ICMP 限速或降优先级,丢包没有延续到后续跳,通常不是真实链路故障。
  2. 默认 100 个查询 × 250 毫秒 × 最多 30 跳;可减跳数和查询数,但不要把 -q 降到个位数。
  3. 不能,它只测 ICMP;用 Test-NetConnection host -Port 443 或 curl 验证 TCP/TLS。
微信小程序码:扫码打开命令速查小程序

小程序版

微信扫码,随时查命令