V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
sjlleo
V2EX  ›  宽带症候群

NextTrace —— 一款开源的路由跟踪工具

  •  5
     
  •   sjlleo · 2022-07-09 17:36:19 +08:00 · 6897 次点击
    这是一个创建于 648 天前的主题,其中的信息可能已经有所发展或是发生改变。

    写在前面

    楼主是在读的大三学生,接触 Golang 也就不到一年的时间,代码比较烂... 轻喷

    为什么要写这个工具

    其实我最早一直都是使用的是 BestTrace,可惜 IPIP 为了防止数据被抓取,从去年开始限制使用次数,恰好我喜欢折腾,测来测去,一会儿就超限额了,真的很让人难受。

    今年终于官宣会出付费版,心里一喜,终于可以入正不忍受每天 403 了,但是到现在都没啥动静。于是萌生了自己先做一个勉强能满足自己测试需求的小工具,等到正式付费再切回 BestTrace 的想法。

    支持哪些功能

    TCPUDPICMP 三大协议肯定是支持的,因为我平时测试都是用 TCP SYN 进行测试,防止出现一些只有 ICMP 会走到的假路由。不过自己还比较菜鸡,目前 IPv6 只能使用 ICMP 进行 Traceroute

    另外之前无意间发现 nitefood/asn 的 AS-Path 功能非常简洁明了,就想着用 Go 复刻一个,顺便把地理位置融合进去。又有小伙伴和我说,想加个 Looking Glass 以及可视化 Map 功能,但是我总觉得放在一个 CLI Tool 里面觉得太臃肿了,遂拆成 Lite 、Enhanced 2 个分支版本。

    还有一点,BestTraceIPv6 骨干网信息没有显示,我又是移动 IPv6 重度使用者,所以也自己在学业之余维护一个不怎么准的移动 IPv6 骨干网库( AS9808 ),CMI 的 AS58453 还是有很多错误,可能需要更多时间慢慢校准吧。说不准哪天 BestTrace 付费版正式发布了我就跑路了(逃

    IPv4 的 AS4134 ( 202.97.*.* ) 、AS4837 ( 219.158.*.* ) 、AS9808 ( 221.183.*.* && 111.24.*.* ) 、AS9929 ( 210.13.*.* && 218.105.*.* ) 、AS58453 ( 223.119.*.* ) 骨干网都有自己手动校过,自己也没有太多检测节点,所以准度也就是看着乐的水平吧。

    项目一些截图

    开源地址

    第一次发自己的小项目呀,希望能够帮到大家,谢谢!如果有哪个 IP 错了,也可以发 issue 找我,我尽力改正它们。

    Credits

    对以下项目表示衷心地感谢!

    • ASN - AS-Path 给我带来了很多灵感,让我能够做出更多好用的功能。

    • BestTrace - 来自 IPIP 异常优秀的 Traceroute 可视化工具,准度极高,对骨干网认知的启蒙工具。

    • WorstTrace - 如果没有它,我想我应该不会自己想着去做这样一款工具,也不会有 table 模式。

    22 条回复    2023-02-24 14:25:52 +08:00
    chenxuhua
        1
    chenxuhua  
       2022-07-09 17:38:35 +08:00   ❤️ 1
    支持,Start 为敬~
    folnet
        2
    folnet  
       2022-07-09 18:01:23 +08:00
    支持
    putaozhenhaochi
        3
    putaozhenhaochi  
       2022-07-09 18:25:40 +08:00 via Android
    👍
    beetlerx
        4
    beetlerx  
       2022-07-09 18:55:41 +08:00   ❤️ 1
    真棒!已 start
    leavic
        5
    leavic  
       2022-07-09 19:43:11 +08:00
    点开一看,原来之前就 star 过了。
    shawnoob
        6
    shawnoob  
       2022-07-09 20:33:32 +08:00
    支持😋
    VincentYoung
        7
    VincentYoung  
       2022-07-09 20:39:57 +08:00 via iPhone   ❤️ 1
    支持~
    danbai
        8
    danbai  
       2022-07-09 20:41:57 +08:00 via Android   ❤️ 1
    start 了,支持
    ninvfeng2020
        9
    ninvfeng2020  
       2022-07-09 20:42:51 +08:00
    牛啊
    lazyyz
        10
    lazyyz  
       2022-07-09 22:54:34 +08:00
    已 star ,赞!
    Sekai
        11
    Sekai  
       2022-07-09 23:01:31 +08:00
    前几天还在用 挺棒的!
    xsourse
        12
    xsourse  
       2022-07-09 23:25:23 +08:00
    maojun
        13
    maojun  
       2022-07-10 00:28:07 +08:00 via iPhone   ❤️ 5
    start 是什么梗吗? 🤨
    hoPBmTckM1
        14
    hoPBmTckM1  
       2022-07-10 00:52:41 +08:00
    支持👍
    tcp
        15
    tcp  
       2022-07-10 06:50:45 +08:00 via Android
    很棒!想知道 Route-Path 那里的连接线怎么画出来的?
    datou
        16
    datou  
       2022-07-10 07:24:20 +08:00
    先 star ,然后等 windows 版
    Marionic0723
        17
    Marionic0723  
       2022-07-10 08:21:59 +08:00 via Android
    数据库准确性能让大家一起维护吗?我这太原电信和联通互联,besttrace 还显示过广东,但是看延迟显然不可能,也不知道从哪纠正,希望这个软件有纠错功能。
    虽然我也不是啥专业人士啦,也就是喜欢测着玩玩的。
    sjlleo
        18
    sjlleo  
    OP
       2022-07-10 09:44:52 +08:00
    @Marionic0723 软件可以根据 TTL 进行 IP 的批量纠错,这也是我常用的校准手段,在 Enhanced Edition 的参数详情里可以看到,使用此参数需要添加认证 Token ,由于骨干网校准是一个非常辛苦且费时的事情,而且对于 IP 的精度确认、地理位置格式有很高的要求。如果只是单纯的几个 IP 需要纠错,直接提 issue 就可以了,感谢您的好意。
    xxb
        19
    xxb  
       2022-07-10 12:01:37 +08:00 via iPhone
    好东西,收藏一下
    TulvL
        20
    TulvL  
       2022-07-11 18:15:11 +08:00
    这类工具 LookingGlass 也用得上
    gearfox
        21
    gearfox  
       2022-07-11 22:37:22 +08:00
    不错 不错
    bing1178
        22
    bing1178  
       2023-02-24 14:25:52 +08:00
    请教下,这个 trace 在技术上。 能检测自己回程的路由吗? 只能在目标服务器上也跑下 trace ?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1719 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 26ms · UTC 16:43 · PVG 00:43 · LAX 09:43 · JFK 12:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.