IP Traceroute:如何跟踪连接的路由

Traceroute 显示您的数据在您的设备和任何目的地之间经过的每个路由器 - 以及旅程减慢的位置。以下是如何在任何系统上运行它并实际读取输出。

跟踪路由的作用是什么

通过互联网传输的每个数据包都带有跳数限制 - IPv4 上的 TTL(生存时间)或 IPv6 上的跳数限制。每个转发数据包的路由器都会将其减一;当它为零时,路由器会丢弃数据包并礼貌地发回“超时”消息。

Traceroute 礼貌地对此进行了武器化:它发送 TTL 为 1、然后 2、然后 3 的数据包……返回的每个“超时”回复都会显示沿途另一台路由器的地址。将它们串在一起,您就可以获得从您到目的地的完整路径 - 以及时间。

在您的系统上运行它

窗户—— tracert

按 赢+R, 类型 cmd,按 Enter 键,然后运行:

Command Prompt
tracert howtofindtheip.com

# 通过 IP 地址而不是名称:
tracert 1.1.1.1

macOS 和 Linux — traceroute

Terminal
traceroute howtofindtheip.com

# macOS 可能需要完整路径或安装:
/usr/sbin/traceroute howtofindtheip.com   # macOS
sudo apt install traceroute               # Debian/Ubuntu

更好的方法—— mtr

地铁 (My Traceroute) 将跟踪路由和 ping 结合在实时视图中 — 对于诊断抖动和丢失提供更多信息。适用于 Linux、macOS(通过 brew install mtr)和 Windows (WinMTR)。

Terminal
mtr howtofindtheip.com
# 按“q”退出

读取结果

典型的输出如下所示:

Example output
 1  router.home          1.2 ms  1.0 ms  1.1 ms      # 你的路由器
 2  isp-gw.net          12.4 ms 12.1 ms 12.3 ms      # 你的互联网服务提供商
 3  backbone1.net       21.0 ms 20.8 ms 21.2 ms      # 区域网络
 4  * * *                                            # 静默路由器(正常)
 5  edge-server.net     23.9 ms 24.1 ms 23.8 ms
 6  howtofindtheip.com  24.0 ms 23.7 ms 23.9 ms      # 目的地
  • 跳数 — 探测器到达的深度有多少个路由器。
  • 主机名/IP — 回复的路由器(PTR 名称通常暗示城市或运营商)。
  • 三个时间 — 三个探头的往返时间。重要的是 趋势:在后面的跳跃中持续存在的突然跳跃通常标志着慢速段。

早期跃点(您的 ISP)的高延迟会影响一切;路径后期出现的高延迟通常只是目的地附近的拥塞。想要检查您找到的啤酒花之一的声誉吗?将其 IP 粘贴到我们的 黑名单检查器 或者 在地图上找到它.

为什么跳跃超时

星号(* * *)意味着路由器没有回答该探测。常见且通常无害的:

  • 许多路由器被配置为完全忽略跟踪路由探测(速率限制或安全策略)。
  • 防火墙会丢弃traceroute 使用的UDP 或ICMP 数据包。
  • 路由器优先转发诊断流量,而不是回复诊断流量。

经验法则: 只要后面的跃点保持响应,跟踪中间的超时就可以。如果某个点之后的每一跳都超时 和 最终目的地永远不会应答,该跃点是您的连接实际中断的地方 - 在与 ISP 的支持热线争论时,这是非常宝贵的信息。

为什么没有网站可以traceroute 你

浏览器被故意沙箱化:JavaScript 无法发送原始数据包或读取跟踪路由所需的 ICMP 回复。您发现的任何“在线跟踪路由”都从提供商的服务器运行到目标——很有用,但它测量的路径与您自己的设备的路径不同。

你什么 能 在浏览器中执行的操作:识别您自己和您路径的端点。 找到你的公网IP, 然后 查找其反向 DNS 查看您的 ISP 分配给您的线路的主机名 — 与每一跳的 Traceroute 显示的名称相同。

FAQ

跟踪路由问题

IP 跟踪路由显示什么?

Traceroute 列出了数据包在设备和目的地之间经过的每个路由器(跃点),以及每个跃点的往返时间。它揭示了连接速度减慢或中断的位置。

为什么某些跟踪路由跃点显示星号或超时?

许多路由器被配置为不应答跟踪路由探测,并且防火墙通常会阻止它们。中间跃点上的星号是正常且无害的 - 重要的是最终目的地是否响应。

我可以从网站运行跟踪路由吗?

浏览器无法发送跟踪路由所需的原始数据包,因此无法在客户端完成。基于 Web 的跟踪路由是存在的,但它们测量从网站服务器到目标的路由,而不是从您的设备。您仍然可以通过浏览器 找到你的公网IP 和它的 反向域名解析.