它基于 nexttrace 命令通过命令行显示类似于 traceroute 清晰的路由信息。当执行完一条追踪的路由信息时,会自动生成 MapTrace URL 也就是一个 HTML,通过浏览器访问该 URL 支持以地图或 3D 视角的方式可视化展示。
安装也非常的简单,由于我是通过 Linux 操作系统来体验的 NextTrace,可以执行如下一键安装脚本进行自动安装。
# Linux 一键安装脚本 bash <(curl -Ls https://raw.githubusercontent.com/sjlleo/nexttrace/main/nt_install.sh)
GitHub 还提供了其他两种方式的自动安装命令,可参考:
# GHPROXY 镜像(国内使用) bash <(curl -Ls https://ghproxy.com/https://raw.githubusercontent.com/sjlleo/nexttrace/main/nt_install.sh) # macOS brew 安装命令 brew tap xgadget-lab/nexttrace && brew install nexttrace
NextTrace 的用法:
nexttrace [-h|--help] [-T|--tcp] [-U|--udp] [-F|--fast-trace] [-p|--port <integer>] [-q|--queries <integer>] [--parallel-requests <integer>] [-m|--max-hops <integer>] [-d|--data-provider (Ip2region|ip2region|IP.SB|ip.sb|IPInfo|ipinfo|IPInsight|ipinsight|IPAPI.com|ip-api.com|IPInfoLocal|ipinfolocal|chunzhen)] [-n|--no-rdns] [-a|--always-rdns] [-P|--route-path] [-r|--report] [--dn42] [-o|--output] [-t|--table] [-c|--classic] [-f|--first <integer>] [-M|--map] [-v|--version] [-s|--source "<value>"] [-D|--dev "<value>"] [-R|--route] [-z|--send-time <integer>] [-i|--ttl-time <integer>] [_positionalArg_nexttrace_25 "<value>"] [--dot-server (dnssb|aliyun|dnspod|google|cloudflare)] [-g|--language (en|cn)]
NextTrace 的参数:
-
-h:帮助信息
-
-T:使用 TCP SYN 进行路由追踪(默认端口为:80)
-
-U:使用 UDP SYN 进行路由追踪(默认端口为:53)
-
-F:快速追踪运营商
-
-p:设置目的端口
-
-q:每跳探测的个数(默认值:3)
-
–parallel-requests:设置并行请求数,当存在多条路由时,应该为1(默认值:18)
-
-m:设置最大 TTL 跳数(默认值:30)
-
-d:选择 IP 地理数据提供者(默认值:LeoMoeAPI)
-
-n:不解析 IP 地址为域名
-
-a:始终将 IP 地址解析为域名
-
-P:根据 ASN 和位置输出 traceroute 路径
-
-r:使用报告模式输出
-
–dn42:DN42 模式
-
-o:将跟踪结果写入文件
-
-t:将跟踪结果输出为表
-
-c:经典输出跟踪结果
-
-f:从第一个 TLL 跳数开始,而不是从 1 开始(默认值:1)
-
-M:不打印跟踪地图
-
-v:打印版本信息并退出
-
-s:发送报文时使用 source src_addr
-
-D:在发送的报文中使用网络设备作为源地址
-
-R:显示路由表
-
-z:设置每个报文发送的时间间隔,当某些路由对 ICMP 使用速率限制时有效(默认值:100)
-
-i:使用 TTL 值设置报文组发送的时间间隔,当某些路由对 ICMP 使用速率限制时有效(默认值:500)
-
–_positionalArg_nexttrace_25:IP 地址或域名
-
–dot-server:使用 DOT 服务进行 DNS 解析 [dnssb、aliyun、dnspod、google、cloudflare]
-
-g:选择显示的语言
NextTrace 的使用:
nexttrace 若不加任何参数,则默认使用 ICMP 协议发起路由追踪请求,支持 IPv4 和 IPv6。
# IPv4 ICMP Trace nexttrace 8.8.8.8 # IPv6 ICMP Trace nexttrace 2606:4700:4700::1111
# URL nexttrace https://api.leo.moe/
# 测试 ISP 的路由:国内四网、电信、联通、移动、教育网、测试 IP 类型:IPv4 / IPv6 的 ICMP 快速测试 nexttrace -F
nexttrace -F -T
使用 ens32 网卡 nexttrace -D ens32 1.1.1.1
# 使用 ens32 网卡IP # 使用网卡 IP 进行路由跟踪时需要注意跟踪的 IP 类型应该和网卡 IP 类型一致(如都为 IPv4) nexttrace --source 192.168.0.5 114.114.114.114
# TCP SYN Trace nexttrace -T 1.1.1.1 nexttrace -T https://api.leo.moe/ # UDP Trace nexttrace -U 1.1.1.1 nexttrace -U https://api.leo.moe/ # 可以自行指定端口 nexttrace --tcp --port 443 1.1.1.1 nexttrace --udp --port 5353 1.0.0.1
# 每一跳发送 10 个探测包 nexttrace -q 10 https://api.leo.moe/ # 无并发,每次只发送 1 个探测包 nexttrace --parallel-requests 1 https://api.leo.moe/ # 从 TTL 为 10 开始发送探测包,直到 TTL 为 20 结束 nexttrace -f 10 -m 20 https://api.leo.moe/ # 关闭 IP 反向解析功能 nexttrace -n https://api.leo.moe/
nexttrace -P https://api.leo.moe/
nexttrace --table 202.108.23.50