Hi Everyone,
我是开源项目 NextTrace 的作者 Leo,最近收到好多小伙伴问我哪些情况下才应该使用 NT,所以作为在 NodeSeek 的第一帖,我想来好好聊一聊这个问题。
前言
首先,我要说明的一点是,作为一款合格的可视化路由跟踪的软件,通常要更多的依赖于 IP 库的精准度,特别是骨干网路由这部分,对于整个可视化至关重要,错误的骨干网数据容易导致误读,导致对网络发生了误判,而一个优秀的骨干网库才能解决这个问题。
目前市面上有对骨干网进行校准的 IP 库有 IPIP、IPinfo、IPinsight、BigDataCloud、IPData、IP2Geolocation 等,而这里面真正能够达到 Tier-1 ISP 骨干网 80% 以上准度的只有 IPIP 和 IPinsight。
很遗憾的是,无论是 IPIP 还是 IPinsight,2者并不提供面向个人开发者的地理位置 API 服务又或者是对每日 QPS 限制较为宽松的 API 服务,这使得 NextTrace 在早期只能使用 IPinfo 作为国外的数据源,这确实给 NT 带来的一定的准度,但是整体效果并不佳。
如果对于 IPv4 来说,我们还可以站在巨人的肩膀上,对一部分校对错误的 IP 进行手动修正,但是在很多朋友的强烈要求下,NT 也开始支持 IPv6 的路由追踪,早期只支持 ICMP(现已经支持 TCP ICMP 了),但是我们很快发现事情变得更糟,因为无论是 IPinfo 还是 ipinsight,在 IPv6 骨干网方面都是严重缺失,这让我们在 IPv6 上面的体验备受吐槽 
改变
为了能够解决这个问题,我们决定彻底建立一个骨干网库,专门维护骨干网的地理位置数据,并由社区志愿者一起参与来进行维护,同时也做了骨干网 IP rDNS 的地理位置解析功能,并会在后台通过我们的监控节点收集入库 IP 在世界各地的延迟,尽可能实现骨干网定位的自动化。
对于有 rDNS 的骨干网 IP 来说,NT 还是能很好的做到这些骨干网的定位,对于没有 rDNS 的骨干网 IP 来说,只能依赖监测节点去猜测所在的位置,但是监测节点终究有限,能够在入库后几分钟内自动被校准的 IP 只能是国外落地的几个热门地区,其余的还是得等人工来尝试手动校准。
NT 何时适用
简要介绍完了情况,那就可以来说一说哪些情况下适合使用 NT。首先第一种情况是喜欢进行 IPv6 TCP Traceroute 的小伙伴们,虽然 NT 的 IPv6 骨干网可能并不是那么完善,但是我们努力校准了国内御三家的骨干网,应该能给您带来不少的帮助。


以上是2个例子,虽然我们的 IPv6 骨干网校准仍在不断进行中,但是目前已经能够带来一些还算尚可的体验。
第二种是对发包想要更好控制的用户,NT 提供了大量的参数可用于自定义您的需求,比如您可以设定最大并发线程数,也可以设置每个包以及每组包的冷却时间。
您可以使用 -z、-i、--parallel-requests来控制它们,当然如果您正在使用 Amazon 的 LightSail,不想看漫长的 AWS 内网路由,您可以使用 -f 轻松跳过前面的路由。
如果您想要追踪的域名存在 DNS 被污染的情况,您可以使用 --dot-server cloudflare 来获取正确的解析记录。
第三种是希望能有服务器端可视化路由的小伙伴们,现在 NextTrace 已经默认开启 TraceMap 功能,您需要轻松点击链接就可以查看路由的走向,我们在页面中也提供了一个二维码功能,方便您扫描在手机上查看。
还有诸如指定网卡跟踪、URL网址解析等功能,这些功能可以详见 Readme 介绍,但是您需要注意的一点是,NT 在 IPv4 上面的表现没有任何优势,因为版权问题,很多时候我们无法依赖其他 IP 库,整个骨干网库都是从头开始创建的,所以自然也做不到如 BestTrace 一样的准度。能够给社区多提供一个选择,也是我的初衷。
最后,NextTrace 是一个完全非盈利的项目,只要您不是出于某种因素想要滥用这项服务,我们就不会对您的使用频率做出任何限制,所以您可以放心的使用,如果有任何问题,欢迎向我们提交 issue 或者在 discussion 开启一个新的讨论~
感谢您的阅读

支持,体验很棒
厉害
拜读