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

EasyTier 组网是真不错

  •  
  •   w568w · 13 天前 · 3884 次点击

    如题,非软文,放心看。

    我之前用的是 ZeroTier ,参见这帖: https://www.v2ex.com/t/1113181 。遇到了两个问题

    1. 连接过程极不透明。除了名称和延迟,几乎没办法得知和连接现状有关的任何信息(走哪个中转?路由表如何?上次连接错误、重试连接是几分钟前?现在处于断开、尝试打洞中还是已连接?)。

      七八年前就有人在官网论坛提需求,开发者表示根本不 care 普通用户:有检查网络的需求,自己编译 debug 版看日志去。但事实是我的网络不是很稳定(参见上面的帖子),所以经常莫名其妙断开,也没法排查原因。

    2. VPN 节点不对等,不能动态路由。 ZeroTier (以及 Tailscale 、n3n 等)都抽象出了多种节点类型:普通客户端、中转服务器( Moon/DERP/Supernode )、控制服务器( Planet/Headscale ),严格来说不算 Full Mesh VPN ,只能说是支持打洞的中心化 P2P VPN 。

      这导致一个什么问题呢?只有 Moon 服务器(和手动配路由表的机器)才可以中转流量。然而我网络情况经常变:明明「家里的 A <-> 我的电脑 <-> 单位的 B 」,但因为 A 和 B 无法直连、我的电脑又不是 Moon ,结果 A <-> B 通信只能走较慢的公网中转。

      这个问题其实挺好解决的,最简单的思路就运行一个 OSPF/BGP/RIP 客户端来动态路由嘛。V2EX 早就有朋友尝试过了 [1],也有人提了 issues [2,3],但无一例外被忽略了,不清楚什么理由。


    EasyTier 基本就解决了这两个痛点。第一点,它有一个信息非常细的 cli 工具和 WebUI,路由表、延迟、下一跳中转、上次通信时间、通信流量都可以看,也有系统日志;第二点,它是完全的去中心化 VPN,所有网络内的节点(包括官方的公益服务器)全部都是对等端,执行一样的功能,既能互相访问又能负责中转。它运行了一个 OSPF 来零配置动态路由。

    此外,它的配置实在太无脑了,就「下载程序、运行」两步,文档也写得很好;相比上面这些,它还支持多协议通信( TCP/UDP/KCP )。总之,没有遇到任何大问题。ZeroTier 的断连现象也没有观察到了。

    缺点有三个:

    第一,它和 tailscale 一样是基于 Wireguard ,所以不是 L2 VPN ,不支持组播和广播(相对地,它支持用 Wireguard 客户端直接连接)。不过,它出了个游戏联机启动器,通过 WinIPBroadcast 来自动转发广播流量,联机游戏应该是没什么问题。

    第二,它是 Rust 开发,目前移动端只支持 Android 不支持 iOS ;

    第三,完全去中心化的网络,没有传统意义上的「控制节点」,管理起来肯定会有些困难。

    以防广告嫌疑,不放 EasyTier 链接了。我目前是和 ZeroTier 共用,主用 EasyTier ,互为替补。

    [1] https://www.v2ex.com/t/707060

    [2] https://github.com/zerotier/ZeroTierOne/issues/798

    [3] https://github.com/tailscale/tailscale/issues/11383

    32 条回复    2025-04-05 19:17:10 +08:00
    aa51513
        1
    aa51513  
       13 天前
    我也苦恼 Zerotier 这些沉疴已久,感谢楼主指路,我也去探索一番 EasyTier
    liuzimin
        2
    liuzimin  
       13 天前 via Android
    请问这种的纯中转速度怎么样?
    Int100
        3
    Int100  
       13 天前 via iPhone
    可能最大的优势就是简单吧.
    btw. op 为什么需要 full mesh ?全互联并不是一种优势.
    Tink
        4
    Tink  
       13 天前
    和 tailscale 比呢
    sarices
        5
    sarices  
       13 天前
    tailscale 已经很好用了,没有到需要换的时候,长期远程连到家里的服务器做开发,完全感觉不到有问题
    pxiphx891
        6
    pxiphx891  
       13 天前
    如果基于 Wireguard 的话,iOS 的 Wireguard 客户端可以连上吗
    w568w
        7
    w568w  
    OP
       13 天前
    @liuzimin 底层用的是 wg ,性能应该不差,我测试都可以跑满上行。

    @Tink @sarices Tailscale 我其实没实际用过,不敢乱发言了。从我读到的文档来看,用户体验( UI 、线上管理)可能稍差,但功能性上肯定是更强的。

    @Int100 我的场景需要 full mesh 呀。比如上面提到的 A <-> B <-> C 下,AC 直连的问题。

    @pxiphx891 文档里说是可以的,但可能享受不到其他好处( OSPF/自动 DHCP )了。
    iceecream
        8
    iceecream  
       13 天前
    之前 2 个缺点,新软件 3 个缺点,一起就 5 个缺点了
    liuzimin
        9
    liuzimin  
       13 天前
    @w568w 这么牛逼能跑满?话说你确定你走的是中转而不是直连吗?我的 tailscale 走的自建中转慢得要死,顶多 15Mbps
    lany
        10
    lany  
       13 天前   ❤️ 2
    好像 EasyTier 的私有中转服务器鉴权功能还没有,容易被扫被偷跑,不知道什么时候会加上
    simplove
        11
    simplove  
       13 天前
    他们的文档写得很烂啊,一点都不友好
    1423
        12
    1423  
       13 天前
    +1, 替换 ZeroTier 绰绰有余
    唯一的遗憾是用户态 Wireguard
    心里最想要的其实是内核态 Wireguard + 充分利用 p2p 的自动配置器
    m1nm13
        13
    m1nm13  
       13 天前
    感谢楼主
    tailscale 在国内实践起来真是一坨 --- 买国内 vps 搭建 derp 被封锁外网, 用自己的公网 IP 群辉搭 derp 客户端太老一直报错

    每次公司和住所连接都是 300ms 的 ping.

    用这个加上公网 vps 终于不用看一堆 derp 搭建文章也会通过 公网 vps 的客户端来中继了
    la0wei
        14
    la0wei  
       13 天前
    用过,确实可以的,界面有点丑,但是信息给的很全面,是优点

    .cn 域名的不敢用,又不是微信这种,能自主选择的都不想用
    lmaq
        15
    lmaq  
       13 天前
    Register Failed
    Failed to register, error: {"message":"Execution Error: error returned from database: (code: 2067) UNIQUE constraint failed: users.username\n\nCaused by:\n 0: error returned from database: (code: 2067) UNIQUE constraint failed: users.username\n 1: error returned from database: (code: 2067) UNIQUE constraint failed: users.username\n 2: (code: 2067) UNIQUE constraint failed: users.username"}

    官网注册报错这个,厉害了!
    SenLief
        16
    SenLief  
       13 天前 via iPhone
    ts 还是更 nice 的
    HFX3389
        17
    HFX3389  
       12 天前
    @m1nm13 #13

    "买国内 vps 搭建 derp 被封锁外网" 不会吧?

    我现在就是用的阿里云纯 IP 搭 DERP 啊,没什么问题啊.

    或者说你是国内国外组网不是纯国内组网?
    jip
        18
    jip  
       12 天前 via Android
    是的,我也是国内阿里搭建的 derp ,非常爽
    m1nm13
        19
    m1nm13  
       12 天前
    @HFX3389 我连 8.8.8.8 都 ping 不通了,每次提工单换一个服务器,要不了几个月就会这样,然后就是连不上 tailscale 本身的服务器,自然 derp 也就无法工作. 纯国内组网
    ottoli
        20
    ottoli  
       12 天前
    @lany

    文档确实写的烂,当时翻了好久,可以通过这个配置参数鉴权

    [network_identity]
    network_name = ""
    network_secret = ""
    2han9wen71an
        21
    2han9wen71an  
       12 天前
    我觉得 vnt 也很不错
    Kaiyuan
        22
    Kaiyuan  
       12 天前
    我给本地一个单位两个地方的办公室组网用的这个,自建的服务器,暂时都很不错,不过有可能会被 H3C 防火墙拦截,得看网管的防火墙配置。
    lnbiuc
        23
    lnbiuc  
       12 天前
    @m1nm13 #19 阿里的服务器 dns 服务器内网 100.0.0.0/8 ,tailscale 服务器运行会覆写 dns 设置成 100.0.0.0/8 ,这两冲突了,手动指定一个 dns 就好了
    m1nm13
        24
    m1nm13  
       12 天前
    @lnbiuc 这个问题我之前就弄过了,改成了百度的,问是 8.8.8.8 ping 不通,和 dns 就没关系了,任何国外 ip 都 ping 不通
    xiaoxiang69460
        25
    xiaoxiang69460  
       12 天前 via iPhone
    如果是和 tailscale 一样 那是应该无法在这上面跑其他类型的数据包的。Zerotier 上可以建立 sit 隧道 tailscale 我试过不行
    w568w
        26
    w568w  
    OP
       12 天前
    @lany 我看了一下文档,主要用来中转的节点可以用 --relay-network-whitelist 来限制可连接的 network_name ,然后其他节点链接的时候使用相同的 network_name 和 secret 才能正常使用中转。不知道这个是不是你想要的 https://easytier.cn/guide/network/host-public-server.html

    @ottoli 这个参数在第一篇文档(快速组网)的第一句命令下面就介绍了。

    @lmaq 这个看报错大概是在说用户名已存在吧,我倒是没打算用他们的网络管理服务。

    @SenLief @2han9wen71an 能否分享一下优点? Tailscale 和 vnt 我都没用过哦。

    @xiaoxiang69460 是的,只有能转发 Ethernet 帧的 L2 VPN ( ZeroTier 、n3n 、OpenVPN )才能转发任意的 IP 数据包。Tailscale 、EasyTier 这些建的都是 TUN 设备,属于 L3 VPN ,不能做 6in4 隧道。
    A1188
        27
    A1188  
       12 天前 via Android
    EasyTier 挺好用的,用了很久了。也支持 KCP ,可以防止 UDP QOS
    lany
        28
    lany  
       12 天前
    @w568w #26 确实如此,谢谢,文档有点乱,内容不太好找
    Kinnice
        29
    Kinnice  
       12 天前
    上次看自定义路由支持的还不行,而且比较强制打洞优先,在现在的网络环境下,有时候过中转可能更舒服。
    dextercai
        30
    dextercai  
       11 天前
    @m1nm13 你如果要在阿里云里用,就得这么起

    sudo tailscale up --netfilter-mode=off --accept-dns=false

    tailscale 的 iptable 规则会接管 CGNAT ,和阿里云内网冲突,自然会出问题。
    MFWT
        31
    MFWT  
       6 天前
    EasyTier 观望中,目前用的是 TS (自己搭建 Headscale ),比较诱人的功能主要是他的 KCP 代理,我这边校园网有时候丢包实在难受,听 MP3 能两秒卡一下
    good
        32
    good  
       3 天前
    @ottoli 这个好像没用啊 换个 network_name 还是能连
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3168 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 12:15 · PVG 20:15 · LAX 05:15 · JFK 08:15
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.