tracert 是什么
tracert 通过逐跳递增的探测包,列出数据包到达目标经过的每一台路由器以及每跳耗时,用来判断从第几跳开始变慢或中断。Windows 上每个目标默认发三次探测,追踪 IPv6 目标需要加 -6。Linux 上的对应命令是 traceroute。
基本信息
| 适用平台 | Windows CMD(Win7 至 Win11 及 Server 系列) |
|---|---|
| 语法 | tracert [-d] [-h 最大跳数] [-w 超时毫秒] [-4|-6] 目标 |
| 常用开关 | -d 跳过反向域名解析(明显更快)、-h 限制最大跳数、-w 设置每跳等待时间 |
| 默认超时 | 每跳 4000 毫秒,跨国链路建议调小加速 |
| 权限要求 | 普通用户即可,无需管理员 |
典型使用场景
- 用户反馈访问某站点慢,看延迟从哪一跳开始明显抬升
- 区分是内网出口、运营商骨干还是目标侧的问题
- 验证路由调整是否生效,与 route print 的当前路由表对照
- 目标不可达时找到最后一台可达设备,缩小排查范围
- 排查跨运营商或跨国访问的延迟抖动
常用示例
常用示例
REM 跳过反向解析,最快拿到路径
tracert -d www.example.com
REM 最多追 10 跳,超过就停
tracert -d -h 10 8.8.8.8
REM 把每跳等待收紧到 500 毫秒
REM 链路慢时能明显缩短整体耗时
tracert -w 500 10.10.10.10
REM 追踪 IPv6 目标
tracert -6 ipv6.google.com
REM 需要设备名称时去掉 -d,代价是等待变长
tracert -h 15 203.0.113.10
REM 需要逐跳丢包统计时改用 pathping
pathping 8.8.8.8输出逐列读法
| 列 | 含义 | 正常与异常 |
|---|---|---|
| 跳数 | 从 1 递增的序号 | 序号越大离本机越远 |
| 三个时间值 | 该跳三次探测的往返毫秒数 | 三个值差距大说明链路抖动 |
| IP 与主机名 | 该跳设备地址,加 -d 时只显示 IP | 显示星号表示该跳没有回应探测 |
| 星号超时 | 该跳不回复 ICMP | 后续跳仍有响应说明只是禁 ping |
| 末尾全超时 | 最后一跳之后没有任何响应 | 目标禁 ping,或确实不可达 |
tracert 只反映去程路径,回程走哪条路看不到。中间跳显示星号多半是路由器不回复 ICMP,只要后续跳有响应,就说明流量确实经过了它。
需要每跳丢包率时用 pathping:它先跟踪路径,再对每跳统计一段时间,比反复执行 tracert 更能区分偶发抖动与稳定丢包。