Ntrace-core

 

下一页跟踪

一个追求轻量级的开源可视化路由工具,使用 Golang 开发。

Github Actions  

网络赞助商

我们非常感谢DMIT为这个项目提供网络基础设施。

如何使用

文档语言:英语 |简体中文

自动安装

# Linux one-click install script
bash <(curl -Ls https://raw.githubusercontent.com/sjlleo/nexttrace/main/nt_install.sh)

# macOS brew install command
brew tap xgadget-lab/nexttrace && brew install nexttrace

# GHProxy Mirror (For China Mainland User)
bash -c "$(curl -Ls https://ghproxy.com/https://raw.githubusercontent.com/sjlleo/nexttrace/main/nt_install.sh)"

Windows用户请直接转到发布页面并下载exe文件。

  • Release为许多系统和体系结构提供编译的可执行文件,如果没有,您可以自己编译。
  • 该项目的一些必要的依赖项尚未在 中完全实现,因此目前在平台上是实验性的。GolangWindowsNextTraceWindows

开始

NextTrace默认情况下使用该协议执行 TraceRoute 请求,该协议同时支持和ICMPIPv4IPv6

# IPv4 ICMP Trace
nexttrace 1.0.0.1
# URL
nexttrace http://example.com:8080/index.html?q=1

# Form printing (output all hops at one time, wait 20-40 seconds)
nexttrace --table 1.0.0.1

# IPv6 ICMP Trace
nexttrace 2606:4700:4700::1111

# Disable Path Visualization With the -M parameter
nexttrace koreacentral.blob.core.windows.net
# MapTrace URL: https://api.leo.moe/tracemap/html/c14e439e-3250-5310-8965-42a1e3545266.html

PS:路由可视化绘图模块由@tsosunchia编写,具体代码可在tsosunchia/traceMap查看。

请注意,在LeoMoeAPI 2.0中,由于添加了地理位置数据,我们在traceMap插件中弃用了OpenStreetMap API的在线查询部分,并使用了我们自己数据库中的位置信息

路由可视化功能需要每个跃点的地理坐标,但第三方 API 一般不提供这些信息,因此目前仅与 LeoMoeAPI 配合使用时支持此功能。

NextTrace现在支持快速测试,有一次性回传路由测试需求的朋友可以使用

# IPv4 ICMP Fast Test (Beijing + Shanghai + Guangzhou + Hangzhou) in China Telecom / Unicom / Mobile / Education Network
nexttrace --fast-trace

# You can also use TCP SYN for testing
nexttrace --fast-trace --tcp

NextTrace已支持对指定网络设备进行路由跟踪

# Use eth0 network interface
nexttrace --dev eth0 2606:4700:4700::1111

# Use eth0 network interface's IP
# When using the network interface's IP for route tracing, note that the IP type to be traced should be the same as network interface's IP type (e.g. both IPv4)
nexttrace --source 204.98.134.56 9.9.9.9

NextTrace也可以使用 和 协议来执行请求,但协议现在仅支持TCPUDPTracerouteUDPIPv4

# TCP SYN Trace
nexttrace --tcp www.bing.com

# You can specify the port by yourself [here is 443], the default port is 80
nexttrace --tcp --port 443 2001:4860:4860::8888

# UDP Trace
nexttrace --udp 1.0.0.1

nexttrace --udp --port 53 1.0.0.1

NextTrace还支持一些高级功能,如TTL控制、并发探针数据包数控制、模式切换等。

# Send 2 probe packets per hop
nexttrace --queries 2 www.hkix.net

# No concurrent probe packets, only one probe packet is sent at a time
nexttrace --parallel-requests 1 www.hkix.net

# Start Trace with TTL of 5, end at TTL of 10
nexttrace --first 5 --max-hops 10 www.decix.net

# Turn off the IP reverse parsing function
nexttrace --no-rdns www.bbix.net

# Feature: print Route-Path diagram
# Route-Path diagram example:
# AS6453 Tata Communication「Singapore『Singapore』」
#  ╭╯
#  ╰AS9299 Philippine Long Distance Telephone Co.「Philippines『Metro Manila』」
#  ╭╯
#  ╰AS36776 Five9 Inc.「Philippines『Metro Manila』」
#  ╭╯
#  ╰AS37963 Aliyun「ALIDNS.COM『ALIDNS.COM』」
nexttrace --route-path www.time.com.my

NextTrace支持用户选择自己的 IP API(目前支持:、、、、LeoMoeAPIIP.SBIPInfoIPInsightIPAPI.com)

# You can specify the IP database by yourself [IP.SB here], if not specified, LeoMoeAPI will be used
nexttrace --data-provider IP.SB
## Note that the ipinfo API needs users to purchase services from ipinfo. If necessary, you can clone this project, add the token provided by ipinfo and compile it yourself
## Fill the token to: ipgeo/tokens.go
## Please be aware: Due to the serious abuse of IP.SB, you will often be not able to query IP data from this source
## IPAPI.com has a stricter restiction on API calls, if you can't query IP data from this source, please try again in a few minutes.

NextTrace支持混合参数和缩短参数

Example:
nexttrace --data-provider IPAPI.com --max-hops 20 --tcp --port 443 --queries 5 --no-rdns 1.1.1.1
nexttrace -tcp --queries 2 --parallel-requests 1 --table --route-path 2001:4860:4860::8888

Equivalent to:
nexttrace -d IPAPI.com -m 20 -T -p 443 -q 5 -n 1.1.1.1
nexttrace -T -q 2 --parallel-requests 1 -t -R 2001:4860:4860::8888

知识产权数据库

我们使用 bgp.tools 作为路由表的数据提供者。

NextTrace BackEnd 现在是开源的。

https://github.com/sjlleo/nexttrace-backend

所有 NextTrace IP 地理位置都可以参考这里API DEMO

有关完整使用列表,请参阅使用菜单

usage: 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
                 (IP.SB|IPInfo|IPInsight|IPAPI.com)] [-n|--no-rdns]
                 [-a|--always-rdns] [-P|--route-path] [-r|--report]
                 [-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>] [-g|--language (en|cn)] [IP Address
                 or Domain]

                 An open source visual route tracking CLI tool

Arguments:

  -h  --help                         Print help information
  -T  --tcp                          Use TCP SYN for tracerouting (default port
                                     is 80)
  -U  --udp                          Use UDP SYN for tracerouting (default port
                                     is 53)
  -F  --fast-trace                   One-Key Fast Trace to China ISPs
  -p  --port                         Set the destination port to use. It is
                                     either initial udp port value for
                                     "default"method (incremented by each
                                     probe, default is 33434), or initial seq
                                     for "icmp" (incremented as well, default
                                     from 1), or some constantdestination port
                                     for other methods (with default of 80 for
                                     "tcp", 53 for "udp", etc.)
  -q  --queries                      Set the number of probes per each hop.
                                     Default: 3
      --parallel-requests            Set ParallelRequests number. It should be
                                     1 when there is a multi-routing. Default:
                                     18
  -m  --max-hops                     Set the max number of hops (max TTL to be
                                     reached). Default: 30
  -d  --data-provider                Choose IP Geograph Data Provider
                                     [LeoMoeAPI,IP.SB, IPInfo, IPInsight,
                                     IPAPI.com]. Default: LeoMoeAPI
  -n  --no-rdns                      Do not resolve IP addresses to their
                                     domain names
  -a  --always-rdns                  Always resolve IP addresses to their
                                     domain names
  -P  --route-path                   Print traceroute hop path by ASN and
                                     location
  -r  --report                       output using report mode
  -o  --output                       Write trace result to file
                                     (RealTimePrinter ONLY)
  -t  --table                        Output trace results as table
  -c  --classic                      Classic Output trace results like
                                     BestTrace
  -f  --first                        Start from the first_ttl hop (instead from
                                     1). Default: 1
  -M  --map                          Disable Print Trace Map Function
  -v  --version                      Print version info and exit
  -s  --source                       Use source src_addr for outgoing packets
  -D  --dev                          Use the following Network Devices as the
                                     source address in outgoing packets
  -R  --route                        Show Routing Table [Provided By BGP.Tools]
  -z  --send-time                    Set the time interval for sending every
                                     packet. Useful when some routers use
                                     rate-limit for ICMP messages. Default: 100
  -i  --ttl-time                     Set the time interval for sending packets
                                     groups by TTL. Useful when some routers
                                     use rate-limit for ICMP messages. Default:
                                     500
  -g  --language                     Choose the language for displaying [en,
                                     cn]. Default: cn

项目截图

图像

image

下一页跟踪增强

NextTrace Enhanced是面向爱好者的增强版本,以 Web API 和具有内置可视化效果的简单 Looking Glass 网页的形式提供跟踪路由调用。Enhanced

请注意,目前不支持英语。NextTrace Enhanced

https://github.com/OwO-Network/nexttrace-enhanced

利奥莫埃API信用

NextTrace专注于Golang Traceroute的实现,其LeoMoeAPI地理位置信息不受原始数据支持,因此无法实现商业版本。

LeoMoeAPI数据受到多个数据源的版权限制,仅用于显示路线追踪的地理位置。

  1. 我们要感谢samleong123在马来西亚提供节点,TOHUNET Looking Glass为全球节点提供,Ping.sx 在御坂提供,其中80%以上的可靠校准数据来自ping/MTR报告。

  2. 同时,我们要感谢isyekong在基于rDNS的校准理念和数据方面的贡献。LeoMoeAPI正在加速rDNS解析功能的发展,已经实现了部分骨干网络的自动地理定位解析,但存在一些误判。我们希望NextTrace将来能够成为单人ISP友好的跟踪路由工具,我们正在努力尽可能改进这些ASN微骨干网的校准。

  3. 在开发方面,我要感谢missuo和zhshch在Go交叉编译,设计概念和TCP / UDP Traceroute重构方面的帮助,以及tsosunchia对TraceMap的支持。

  4. 我还要感谢FFEE_CO,TheresaQWQ,stydxm和其他人的帮助。leoMoeAPI 自首次发布以来就得到了很多支持,所以我想感谢他们所有人!

我们希望您能就 IP 地理位置错误(请参阅问题)向我们提供尽可能多的反馈,以便首先对其进行校准,其他人可以从中受益。

捷脑支持

本项目使用 JetBrain 开源项目许可证。我们自豪地通过戈兰德发展。

GoLand logo

学分

边界网关协议。TOOLS为该项目提供了一些数据支持,我们对此表示衷心的感谢。

文森特·杨[email protected])

山姆·山姆 ([email protected])

佐松基亚

等待4新

FFEE_CO

别人

虽然本项目集成了其他第三方API,但具体TOS和AUP请参考第三方API官网。如果您遇到IP数据错误,请直接与他们联系以更正。

版本 v1.1.2 和 v1.1.7-2 之间的差异:

  • 添加并修复了对某些第三方 GEOIP API 的支持
    • ipinfo
    • ipinfoLocal,这是ipinfo数据库的离线版本
    • 春珍
    • 艾普洞察
    • (禁用地理IP)
  • 添加了一些参数
    • 用于其他项目的二次开发
      • 杰伦输出
      • 原始输出
    • 仅解析域的 IPv4/IPv6 地址
    • 用于设置 ICMP 数据包大小的数据包大小
    • 超时设置超时期限
  • 支持通过 socks5/http 代理访问 API
  • 在快速跟踪模式下支持更多参数
  • 添加了缓存处理以加快解析速度
  • 修复了一些错误

明星历史

Star History Chart

页脚


评论

此博客中的热门博文

Clash Verge系列使用最佳实践

X-UI 安装使用教程,支持多协议多用户的 Xray 可视化面板

非 root 用户自建 v2ray 梯子 (serv00-vmess)

使用一键脚本,部署 Hysteria 2(歇斯底里)协议节点-尚未完成小火煎的配置

Telegram RSS机器人-Flowerss bot比较全面的安装教程

使用x-ui面板中转流量解锁流媒体-服务器端分流节点

最新11个可用的TG代理,请收藏!

Serv00搭建各种服务

VPS挂机流量

X-for-Serv00 让你的 Serv00 节点获得更好的体验