在线路由追踪
逐跳查看数据包从我们的测试服务器到某个地址或主机名所经过的路径,以及每一步的延迟——这是找出连接在路由的哪一段变慢或中断的工具。
AS20473 · 108.61.178.84216.73.216.52| 跳数 | IP地址 | 主机名 | 网络 | 国家/地区 | 往返时间 |
|---|
运行路由追踪
点击追踪:显示从我们位于法兰克福的服务器到您地址的路径,逐跳列出。我们的服务器只会追踪到您当前连接所用的地址——任何其他目标都会被拒绝,因此它无法被用来探测第三方——而浏览器也无法从您的设备发起追踪;要查看从您的设备到某台服务器的路径,请使用系统自带的工具(步骤见下文)。
逐跳结果
每一跳一行,显示其地址、主机名、所属网络和三次往返测量值。
跳数、RTT与丢包
每一跳都是一台把数据包的生存时间减到零并回送错误的路由器;三个时间对应三次探测。时间随距离递增是正常的;两跳之间猛增几十毫秒说明是一条长链路或拥塞;某一跳有丢包但之后恢复正常,只说明那台路由器降低了错误应答的优先级。
星号(* * *)
该跳在超时时间内没有应答。中间出现一行星号而之后各行正常,说明那台路由器不响应探测——无害。从某一跳开始直到末尾都是星号,说明目标或其前面的防火墙阻止了探测,或者路径在那里中断了。
如何解读路由追踪
把它当作一段旅程来读:最初几跳是我们的运营商,然后是中转网络(ae-1.cr1.fra.example.net这样的名称编码了路由器、接口和城市),接着是目标的运营商,最后是目标。主机名所属网络从一家运营商变为另一家的那一跳是交接点;在那里增加的延迟属于另一个网络。只有趋势才有意义——某一跳很慢而之后更快,说明它只是应答慢,不是转发慢。反向路径可能与正向路径不同,所以您在家里看到的问题在这里可能不出现;两个方向都要运行。
如何在Windows、Mac和Linux上运行traceroute
从您自己的设备发起追踪:
Windows tracert
在命令提示符或PowerShell中运行tracert example.com(tracert -d跳过名称解析,速度更快)。
macOS / Linux traceroute
traceroute example.com(macOS内置;Linux上请安装traceroute软件包或使用tracepath)。traceroute -I像Windows一样使用ICMP;默认使用UDP,有些防火墙对两者的处理不同。
mtr
mtr example.com把traceroute和ping结合起来,持续重复追踪并显示每一跳的丢包和抖动——是排查间歇性问题的最佳工具。macOS(Homebrew)、Linux(软件包)和Windows(WinMTR)都有。
常见问题
traceroute究竟做了什么?
它发送生存时间值递增的数据包;沿途每台在TTL归零时丢弃数据包的路由器都会回报,从而暴露自己的地址和耗时。这些路由器的列表就是路由。
如何使用traceroute?
从出问题的设备向出问题的主机运行它,观察延迟在哪里猛增或应答在哪里停止。与从另一个网络(本页,从法兰克福)发起的追踪进行比较,看看问题是靠近您还是靠近目标。
如何在Windows中运行traceroute命令?
打开命令提示符或PowerShell,输入tracert example.com。加上-d可跳过反向名称解析。
tracert和traceroute有什么区别?
用途相同,默认探测方式不同:Windows的tracert使用ICMP回显;Unix的traceroute默认使用UDP(加-I使用ICMP)。输出格式略有差异;它们揭示的路由是一样的。
Windows上与traceroute对应的命令是什么?
tracert——每个Windows版本都内置。pathping是一个更慢的变体,还能测量每一跳的丢包。
如何在Windows 11上运行traceroute?
右键点击“开始” › 终端(或搜索cmd),然后输入tracert example.com并按回车。输出最多列出30跳。
由我们自己位于法兰克福的服务器(probe-fra1,AS20473)向您的地址实时运行追踪;各跳所属网络来自CheckMyIP查询服务和iptoasn表,名称来自反向DNS。不保存任何内容。