Traceroute 是 VPS 用户排查网络线路时经常使用的路由追踪工具。不过在使用过程中,有时会遇到 Ping 不通,或者 traceroute 中连续出现 * * *,导致部分路由节点无法显示。
传统 traceroute 常用 UDP 或 ICMP 方式进行探测,而 tcptraceroute 使用 TCP SYN 数据包,并且可以指定 SSH、HTTP、HTTPS 等 TCP 端口。在普通 traceroute 探测受限的网络中,使用 TCP 端口进行追踪,有时可以获得更完整的路由信息。
本文介绍 tcptraceroute 的安装和使用方法,并结合本次的测试结果说明 * * *、[open] 以及每一跳路由分别代表什么。
一、安装 Tcptraceroute
tcptraceroute 在很多 Linux 系统中并没有预装,第一次使用时需要先完成安装。
首先通过 SSH 客户端连接到 VPS。如果还不熟悉 SSH 远程登录,可以参考:Xshell SSH 远程连接服务器教程。
Debian、Ubuntu 系统执行:
apt update && apt install -y tcptraceroute
安装完成后,可以执行:
tcptraceroute --help
能够正常显示帮助信息,就说明 tcptraceroute 已经可以使用。
Rocky Linux、AlmaLinux、CentOS Stream 等系统的软件包提供方式可能有所不同,可以先执行:
dnf provides '*/tcptraceroute'
根据返回结果确认提供 tcptraceroute 命令的软件包,再使用 dnf install 进行安装。
二、如何使用 Tcptraceroute
安装完成后,就可以开始追踪 TCP 路由。
基本命令格式如下:
tcptraceroute 目标IP或域名 端口号
端口号可以省略,不填写时默认使用 80 端口。
例如追踪到 8.8.8.8 的路由:
tcptraceroute 8.8.8.8
如果需要使用 HTTPS 的 443 端口追踪到 Cloudflare DNS:
tcptraceroute 1.1.1.1 443
在我们排查服务器连接问题时,也可以根据服务填写对应的端口。例如 SSH 使用服务器当前设置的 SSH 端口,网站可以测试 80 或 443,管理面板则填写对应的 TCP 端口。
如果搬瓦工 VPS 无法通过 SSH 连接,也可以使用 tcptraceroute 检查 SSH 端口的网络路径。如果怀疑端口被封、超时或无法连通,可以参考:搬瓦工 SSH 端口被封或不通怎么办?端口检测与解决方法,继续检查 SSH 端口是否能够正常访问。
执行命令后,tcptraceroute 会逐行显示从当前 VPS 到目标服务器经过的路由节点。

tcptraceroute 使用 TCP 443 端口追踪到 1.1.1.1,最终显示目标端口为 open。
三、如何解读 Tcptraceroute 测试结果
tcptraceroute 的输出格式与 traceroute 很接近,每一行代表经过的一跳路由,并显示节点 IP、主机名和延迟。
上图最后一跳显示:
one.one.one.one (1.1.1.1) [open]
其中 1.1.1.1 是目标 IP,[open] 表示已经到达目标服务器,并确认本次追踪使用的 TCP 443 端口处于开放状态。
如果目标服务器可以到达,但指定端口没有服务监听,返回结果会显示端口关闭。因此,使用 tcptraceroute 排查 SSH、网站或其他服务时,最好填写目标服务器正在使用的 TCP 端口。
1. 中间出现 * * * 是线路中断了吗?
测试过程中可能会出现:
* * *
这表示这一跳没有在等待时间内返回响应,但不能凭借这一行就说明线路已经中断。
上图中第 2 跳和第 5 跳都出现了 * * *,但后面的路由仍然继续返回,最后也成功到达 1.1.1.1,TCP 443 端口显示为 [open]。
因此,中间某一跳出现星号时,应继续确认后续节点和最终目标。如果后面的路由正常返回,并且最终能够到达目标服务器,这一跳没有响应并不能说明连接在这里中断了。
如果大家还不熟悉每一跳 IP、延迟和 * * * 的含义,可以参考:Traceroute 命令详解:从零开始的 VPS 路由追踪入门教程。
2. 如何通过路由识别 CN2 网络?
测试中国电信线路时,可以留意路由中是否出现:
59.43.*.*
如果回程路径中出现多个 59.43.*.* 节点,说明这段路由经过了中国电信 CN2 网络。
不过,CN2 GT 和 CN2 GIA 线路都有可能经过 CN2 网络,所以不能只根据单个 59.43.*.* 地址区分 CN2 GIA。还需要结合整条回程路由、中国大陆段以及国际段经过的节点进行区分。
如果大家还想进一步了解搬瓦工 CN2 GIA 线路和对应套餐,可以参考:搬瓦工 SLA PLAN 方案详解,这篇文章介绍了 DC5 机房、99.99% 在线率以及企业级 CN2 GIA 网络。
四、结合 MTR 进一步检查线路
tcptraceroute 适合使用指定 TCP 端口追踪服务器之间经过的路径。如果大家还需要持续测试每一跳的延迟和丢包情况,可以继续使用 MTR。
MTR 会连续进行路由探测,可以帮助确认某一段线路是否持续出现高延迟或丢包。遇到 SSH 或网站连接不稳定、延迟突然升高、部分地区访问异常等问题时,可以结合 tcptraceroute 和 MTR 的结果一起进行分析。
如果您还想参考 VPS 的 MTR 路由测试结果,可以参考:搬瓦工 DC4 MCOM YABS 跑分、Superbench 测速与 MTR 路由记录,里面保留了 DC4 MCOM 的测速和 MTR 路由数据。
具体安装方法、测试命令和结果说明,可以查看:如何使用 MTR 测试 VPS 回程路由?图文教程与诊断指南。
五、总结
tcptraceroute 使用 TCP SYN 数据包进行路由追踪,并可以指定 SSH、HTTP、HTTPS 或其他 TCP 服务端口。在普通 traceroute 出现大量 * * *,或者需要检查某个 TCP 服务经过的网络路径时,可以使用 tcptraceroute 继续排查。
分析结果时,中间某一跳出现 * * * 不代表线路已经中断,应继续确认后续节点和最终目标;最终显示 [open],则说明已经到达目标服务器,并确认本次测试的 TCP 端口处于开放状态。
| 套餐 | CPU | 内存 | 硬盘 | 流量 | 带宽 | 机房 | 价格 | 购买 |
|---|---|---|---|---|---|---|---|---|
| KVM (最便宜) | 2核 | 1GB | 20GB | 1TB | 1Gbps | 9个 | $49.99/年 | 立即选购 |
| 3核 | 2GB | 40GB | 2TB | 1Gbps | 9个 | $52.99/半年 | 立即选购 | |
| CN2 GIA-E (最推荐) | 2核 | 1GB | 20GB | 1TB | 2.5Gbps | 15个 | $49.99/季度 | 立即选购 |
| 3核 | 2GB | 40GB | 2TB | 2.5Gbps | 15个 | $89.99/季度 | 立即选购 | |
| SLA (SLA 保障) | 2核 | 1GB | 20GB | 1TB | 2.5Gbps | 1个 | $65.89/季 | 立即选购 |
| 3核 | 2GB | 40GB | 2TB | 2.5Gbps | 1个 | $116.99/季 | 立即选购 | |
| 香港 (高端) | 2核 | 2GB | 40GB | 0.5TB | 1Gbps | 15个 | $89.99/月 | 立即选购 |
| 4核 | 4GB | 80GB | 1TB | 1Gbps | 15个 | $155.99/月 | 立即选购 | |
| 大阪 (高性价比) | 2核 | 2GB | 40GB | 0.5TB | 1.5Gbps | 15个 | $49.99/月 | 立即选购 |
| 4核 | 4GB | 80GB | 1TB | 1.5Gbps | 15个 | $86.99/月 | 立即选购 | |
选择建议 入门使用KVM 套餐价格最低,适合建站、学习 Linux、简单测试和预算有限的新手用户。 综合推荐CN2 GIA-E 套餐线路更好、可选机房更多,适合长期使用,也是多数用户优先考虑的方案。 高端需求香港、东京、大阪等高端线路价格更高,适合对国内访问速度、低延迟和稳定性要求较高的用户。 |
||||||||
套餐汇总:搬瓦工在售方案汇总 | 购买教程:搬瓦工注册与购买教程 | 优惠码:最新搬瓦工优惠码 |
||||||