NextTrace教程:开源可视化路由追踪,BestTrace的替代品

先说依据

这篇的内容依据是 NextTrace 官方仓库 nxtrace/NTrace-core 的 README(2026-10-18 读取)。命令没有在真机上逐条实测运行,版本号和参数以你运行时官方文档为准。

NextTrace是什么

NextTrace 是一个开源的可视化路由追踪工具,Go 语言编写,官网是 nxtrace.org。它要解决的问题很直接:

  • traceroute / mtr 的输出只有 IP 和延迟,想知道"这一跳是哪个机房、哪家运营商",得自己再去查;
  • BestTrace(之前大家常用的可视化路由工具)闭源且停更了。

NextTrace 自动给每一跳标注IP 归属地和 ASN(哪家运营商/AS号),还能生成一条地图可视化链接,在浏览器里看整条路由走过的地理路径。开发在 NTrace-dev 仓库进行,稳定后同步到 NTrace-core。

安装

官方 README 给了两种方式,按系统选一种就行。

Debian / Ubuntu:APT 仓库(官方推荐)

1
2
3
4
5
6
7
sudo install -d -m 0755 /etc/apt/keyrings
curl -fsSL -o /tmp/nexttrace-archive-keyring.gpg https://github.com/nxtrace/nexttrace-debs/releases/latest/download/nexttrace-archive-keyring.gpg
sudo install -m 0644 /tmp/nexttrace-archive-keyring.gpg /etc/apt/keyrings/nexttrace.gpg
rm -f /tmp/nexttrace-archive-keyring.gpg
printf '%s\n' 'Types: deb' 'URIs: https://github.com/nxtrace/nexttrace-debs/releases/latest/download/' 'Suites: ./' 'Signed-By: /etc/apt/keyrings/nexttrace.gpg' | sudo tee /etc/apt/sources.list.d/nexttrace.sources >/dev/null
sudo apt update
sudo apt install nexttrace

支持的架构很多:amd64、i386、arm64、armel、armhf、loong64、mipsel、mips64el、ppc64el、riscv64、s390x,路由器/小机器基本都有覆盖。

另外还有两个变体可按需装(可和主包共存):

1
2
sudo apt install nexttrace-tiny   # 轻量版
sudo apt install ntr # 纯MTR模式

其他系统:直接下载二进制

去 NTrace-core 的 Releases 页下载对应系统的二进制,解压后就能用。Windows、macOS 也有对应版本。

基本用法

1
2
3
nexttrace 1.0.0.1
nexttrace example.com
nexttrace http://example.com:8080/index.html?q=1 # 也支持URL

跑起来后,每一跳会显示:序号、IP、归属地、ASN/运营商、三个延迟采样。最后还会给一条 MapTrace 链接(形如 https://api.nxtrace.org/tracemap/html/xxxx.html),打开就是地图上的路由路径。

发探测包需要原始套接字权限,Debian/Ubuntu 下建议 sudo 运行。

输出怎么看(排障用)

路由追踪的核心用途是定位"慢/丢包出在哪一段":

  1. 看延迟突变点:某一跳延迟突然从几十 ms 跳到几百 ms,问题就在这一跳或它的上一跳;
  2. 看归属地和ASN:NextTrace 直接标出来,不用再复制 IP 去别处查——能一眼看出是卡在"本地运营商出境"、“国际骨干"还是"目标机房入口”;
  3. 看丢包:某跳之后持续丢包、后面全是 *,可能是运营商 QoS/阻断(结合被封还是被QoS的对照测试一起判断)。

常用参数

1
2
3
4
5
6
7
8
9
10
nexttrace --table 1.0.0.1          # 只跑一次,最后打印汇总表
nexttrace --mtr example.com # MTR模式(持续探测,官方说2027年后这会成为默认模式)
nexttrace --traceroute example.com # 传统traceroute模式(-k 是简写)
nexttrace --ipv4 g.co # 只解析IPv4
nexttrace --ipv6 g.co # 只解析IPv6
nexttrace --tcp --port 443 example.com # TCP模式:有些防火墙禁ICMP/UDP时用
nexttrace --json 1.0.0.1 # JSON输出,方便写脚本处理
nexttrace --doctor example.com # 环境自检:不发包,只检查本地配置对不对
nexttrace --fast-trace # 快速追踪模式
nexttrace -i 300 1.1.1.1 # 调整TTL组发包间隔(默认300ms)

--doctor 值得单独说一句:它不发探测包,只生成一份本地环境报告(DNS、路由、后端初始化是否正常)。命令跑不起来时先跑它,区分是"环境问题"还是"网络问题"。

和 BestTrace / mtr / traceroute 的区别

工具 开源 自动归属地/ASN 地图可视化 MTR模式 说明
traceroute 是 否 否 否 系统自带,输出最原始
mtr 是 否 否 是(本来就是) 持续探测看丢包,排障老工具
BestTrace 否(停更) 是 是 否 当年最好用的可视化路由,已停更
NextTrace 是 是 是 是(--mtr) BestTrace的开源替代,功能是超集

简单说:以后查路由直接用 NextTrace 代替 BestTrace;看持续丢包率用它的 --mtr 模式,一条命令搞定,不用再装两个工具。

注意事项

  • 发包需要权限,记得 sudo;
  • 归属地/ASN 数据来自第三方的 GeoIP 库,小众机房可能标注不准,关键结论以多次测试为准;
  • --mtr 目前是可选模式,官方计划不早于 2027 年把它设为默认,写脚本解析输出时注意版本差异(README 原话)。