V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
测试工具
SmokePing
IPv6 访问测试
Sponsored by
LinkedIn
2000 个不用坐班的远程好工作在召唤你 · 弹性上班不打卡,工作和生活都能拥有
2000 个不用坐班的全球远程工作,帮助 V2EX 的小伙伴开启全新的工作方式。
Promoted by LinkedIn
Divingbear
V2EX  ›  宽带症候群

[求助] Zerotier 性能堪忧,求大佬指点迷津

  •  
  •   Divingbear · 2020-04-24 18:37:13 +08:00 · 24203 次点击
    这是一个创建于 884 天前的主题,其中的信息可能已经有所发展或是发生改变。
    网络情况如下:
    1. A: 家中 NAS 跑的 win10 系统,通过 AC68U (梅林固件)接上海电信 100M
    2. B: 公司笔记本,也是 WIN10 系统,公司的路由完全是个黑盒,电信 100M 的对等网
    3. 另有 C,D 两个搬瓦工的小鸡,一个 CN2 GT,一个 CN2 GIA 的,一个装 CentOS7,一个装 Ubutu17,让我拿来都做了 MOON

    其他情况如下:
    1.在 A,B 机子上用 Zerotier-cli peers 看过去,对方都是中继模式
    2.从 MOON 上看两台机器都是直连模式
    3.互相 PING 的话,延迟都在 400 到 800ms 之间,且经常请求超时,丢包率接近 10%

    问题是:
    1.公司网络路由我动不了,家里的路由有没有可能优化?比如直接在路由上装 zerotier ?又或者设置一些转发规则?
    2.如果像现在这样,虽然 RDP 速度还是比 TV 好一些,但是架不住不稳定,随时会断,然后再 NAS 那边有用户没注销很麻烦。如果打洞不成功,还真不如换 FRP 了
    3.你们遇到过 Zerotier 莫名其妙的给你加个网络或者加个设备的吗?我的账户下面莫名其妙多了几个网络,一个看起来象是部门的夏普大电视,另外两个就完全不知道是啥东西。
    4.另外 windows 的防火墙要不要也要处理一下?之前 ping 不通,RDP 无法连接,我把入站规则里的远程连接,文件和打印机共享的规则启用后就可以了。

    本人软件小白,所以很多基础知识都比较缺乏,所以请恨铁不成钢的写详细点儿,不然容易对牛弹琴,造成脱发
    57 条回复    2022-05-19 02:50:29 +08:00
    Acoffice
        1
    Acoffice  
       2020-04-24 18:47:28 +08:00   ❤️ 1
    本身 p2p 就不是 100%成功的,
    moon 节点其实就是干中继的,
    当然能 p2p 成功,也就没有 moon 的事儿了.
    ---
    建议换国内中继.联系我给你国内中继试试.
    telegram:aHR0cHM6Ly90Lm1lL3ZlcnlzeW5jCue+pOmHjEBqb25ueWFu
    base64~~~
    whywhywhy
        2
    whywhywhy  
       2020-04-24 20:03:16 +08:00   ❤️ 1
    @Acoffice 看之前的帖子,有人在说好像用 moon 就纯走中继,不尝试直连了,不知道是不是真的。。。。感觉这策略很傻。。。
    sontjer1
        3
    sontjer1  
       2020-04-24 20:44:17 +08:00 via iPhone
    ipsec 客户端都装起来,还是蛮稳的
    kpingdd
        4
    kpingdd  
       2020-04-24 21:05:07 +08:00 via Android
    n2n 目前用着还不错
    lijunes
        5
    lijunes  
       2020-04-24 21:37:18 +08:00
    最近在 openwrt 上配置都不成功,Zerotier IP 和 Lan IP 会随机访问成功。完全没法稳定使用
    Acoffice
        6
    Acoffice  
       2020-04-24 21:41:23 +08:00 via Android
    @whywhywhy 并不是,
    cst4you
        7
    cst4you  
       2020-04-24 22:22:03 +08:00   ❤️ 1
    如果打不通或者打通了慢, 尝试删掉重建, 直至直连为止
    yulihao
        8
    yulihao  
       2020-04-24 22:32:55 +08:00
    移动晚上 p2p 丢包 30,基本没法用,同求解决方法
    Chauncey09
        9
    Chauncey09  
       2020-04-25 00:19:18 +08:00 via iPhone
    这个和 frp 相比,优势在哪里?
    tia
        10
    tia  
       2020-04-25 03:07:48 +08:00
    win 打开 9993 端口


    @Chauncey09 #9 p2p 直连
    mm2x
        11
    mm2x  
       2020-04-25 08:35:32 +08:00   ❤️ 1
    家里开 FRPS 端口只映射 1 个接入端口不映射穿透客户机端口 开启 VPN 公司开 FRPC 在家里想管理单位那就直接内网地址:端口 外出用手机之类的就 VPN 回家 然后内网 IP:端口 这样安全 速度也等于直连。
    RayLin
        12
    RayLin  
       2020-04-25 08:45:38 +08:00
    @kpingdd n2n 貌似带宽有限,只适合小流量,而且 P2P 成功率低,大多经服务器中转。
    RayLin
        13
    RayLin  
       2020-04-25 08:47:33 +08:00   ❤️ 1
    是的,楼主用国外中继和用官方的没区别。你用电信内网中继,你这个 PING 就是点对点直连的速度了。
    mochanight
        14
    mochanight  
       2020-04-25 09:36:44 +08:00   ❤️ 1
    为什么要走 C D 两台小鸡。

    直接在 NAS 和公司电脑安装 ZEROTIER 客户端,输入官网 NETWORK ID,应该就通了。

    我的方案是这样的,公司为移动网,NAS 在公司,然后群晖上直接安装 ZEROTIER 客户端,连上 network id,zerotier 的官网指定 NAS 的 ip,如:192.168.192.22
    家里路由器 openwrt,路由器上安装 zerotier 插件,连入 network id.去官网指定 ip,如:192.168.192.11 此时家里任何一台设置都可以直连 nas.
    ping NAS 时第一下延时在 1000MS 左右,第二下就通了,正常在 3MS,可以跑满带宽。
    lanwairen123
        15
    lanwairen123  
       2020-04-25 10:45:10 +08:00   ❤️ 2
    尽量改善自己的 NAT 类型,推荐看下恩山上一个科普 NAT 类型的帖子;
    https://www.right.com.cn/forum/thread-199299-1-1.html

    一般如果你是 Full Cone 的话都能直连成功,影响 NAT 类型很多因素,运营商设置,是否路由器拨号,路由器防火墙设置,win10 防火墙设置等,建议一步一步排除,先电脑直连光猫拨号,用 NatTypeTester 测试 NAT,如果是 Full Cone 的话证明你的宽带 NAT 类型支持,然后再设置路由器,一般 openwrt 和 pandavan 固件上都有设置 Full Cone NAT 的地方。

    祝你成功
    目前移动光纤宽带,zerotier 可以直连公司网络,很香
    sikong31
        16
    sikong31  
       2020-04-25 10:48:43 +08:00
    没公网 ipv4,可以看看有没有公网 ipv6 地址,基本上都有的
    zyq2280539
        17
    zyq2280539  
       2020-04-25 10:56:18 +08:00
    确实要国内节点 moon 才能管用,已经尝试过了,我海外 4 个 moon 节点,丢包率不忍直视
    qistchan
        18
    qistchan  
       2020-04-25 10:56:44 +08:00
    我改用 tinc 了,体验还不错
    zyq2280539
        19
    zyq2280539  
       2020-04-25 10:57:53 +08:00
    (base) ➜ ~ ping n2.box
    PING n2.box (172.25.26.138): 56 data bytes
    64 bytes from 172.25.26.138: icmp_seq=0 ttl=64 time=27.495 ms
    64 bytes from 172.25.26.138: icmp_seq=1 ttl=64 time=343.049 ms
    64 bytes from 172.25.26.138: icmp_seq=2 ttl=64 time=101.794 ms
    64 bytes from 172.25.26.138: icmp_seq=3 ttl=64 time=40.176 ms
    64 bytes from 172.25.26.138: icmp_seq=4 ttl=64 time=97.742 ms
    64 bytes from 172.25.26.138: icmp_seq=5 ttl=64 time=119.048 ms
    64 bytes from 172.25.26.138: icmp_seq=6 ttl=64 time=23.415 ms
    64 bytes from 172.25.26.138: icmp_seq=7 ttl=64 time=21.151 ms
    64 bytes from 172.25.26.138: icmp_seq=8 ttl=64 time=22.155 ms
    64 bytes from 172.25.26.138: icmp_seq=9 ttl=64 time=85.445 ms
    64 bytes from 172.25.26.138: icmp_seq=10 ttl=64 time=44.417 ms
    64 bytes from 172.25.26.138: icmp_seq=11 ttl=64 time=40.827 ms
    64 bytes from 172.25.26.138: icmp_seq=12 ttl=64 time=79.954 ms

    加入国内 moon 节点之后 ping 无丢包
    wslzy007
        20
    wslzy007  
       2020-04-25 11:14:48 +08:00
    推荐多链路聚合工具 sg,tcp 实现的 p2p 穿透,可自建代理,可控的共享代理,拿走不谢
    github.com/lazy-luo/smarGate
    felixcode
        21
    felixcode  
       2020-04-25 13:47:45 +08:00 via Android
    wireguard 组网很稳定,比 zerotier 好用很多
    wogong
        22
    wogong  
       2020-04-25 13:52:56 +08:00
    tinc
    zyy3096
        23
    zyy3096  
       2020-04-25 15:36:38 +08:00 via Android   ❤️ 1
    以我个人经验,frp 和 zerotier 都不如 ddns,直接走宽带上传,用阿里云 ddns,5 分钟更新一次 IP
    mochanight
        24
    mochanight  
       2020-04-25 16:30:51 +08:00   ❤️ 3
    @zyy3096 不就是因为内网才需要使用这些工具吗............有公网 IP 还折腾这些干啥....
    Divingbear
        25
    Divingbear  
    OP
       2020-04-25 20:14:21 +08:00
    看了各位的回复,更迷茫了,有几个问题想澄清一下。
    1.Zerotier 的 MOON 到底是干什么用的?如果真的如 v 友所说,有 MOON 存在就不会直连,只会中继的话,这不是扯蛋吗?另外如果靠着国内中继的低延时来使用的话,Zerotier 和 FRP 又有啥区别呢?
    2.我主要的目的是希望能以较快的速度远程桌面自己的 NAS,因为我经常在公司控制 NAS 挂 PT ;另一个需求是在远程登录 NAS 上传下载整理文件,内网可以用 SMB 或者 NFS 协议挂载网络硬盘,又或者用 RaiDrive ( NetDrive)之类的软件挂载硬盘,这种需求感觉 Zerotier 比 FRP 更适合我,前提是能直通成功。
    3.如果我删除掉两个 MOON,然后不停的卸载重装 Zerotier,是有概率直通成功呢?还是说只要装一次不成功,后续再怎么重装都不会成功?

    @Acoffice 谢谢,我先尝试一下有没有可能直连成功,实在不行再考虑国内中继的效果。国内中继的主要问题小鸡贵且带宽太窄了。

    @cst4you 需要两边全都重新安装吗?还是只是需要删除 networks 重建一遍?

    @Chauncey09 P2P 直连成功的话,速度相当于局域网那么爽,听说的。。。

    @mm2x 实话是没听懂你的操作,但是感觉很牛逼,我开始装 FRP 的,后来被配置文件搞崩溃了。

    @RayLin 感谢回复,电信内网。。。。国内的 vps 价格。。。。肉疼,要是能直连,不就省了一大笔银子嘛

    @mochanight 我明天再尝试一下,看来 MOON 留不得,感觉没用不说,还误导人。我家里路由器是装了梅林固件的 AC68U,网上提到的安装教程装下来是 1.0.2 的老版本,想找最新的 1.4.6 的没有。我尝试更换 Packages 的源地址,反而越搞越乱。

    @lanwairen123 非常感谢,我这就去看看学习一下,明天准备再尝试一下。

    @zyq2280539 那要 moon 是做什么用的?用 Zerotier 不就是看中它的 P2P 特性吗?
    Divingbear
        26
    Divingbear  
    OP
       2020-04-25 20:31:09 +08:00
    另外我看很多地方都提到说 Zerotier 对于移动业务的支持不佳,这个移动业务是指中国移动的固网业务还是指手机的那个移动网啊?
    因为我看 peers 的时候,发现都是中继状态,就怀疑是不是因为公司的网络太复杂,导致路由套路由导致公司电脑不容易穿透,就让公司电脑接手机热点来验证,发现还不如用公司的网络延迟好呢
    cst4you
        27
    cst4you  
       2020-04-26 02:25:38 +08:00   ❤️ 1
    @Divingbear 删 network, 我刚开始配置的时候也出现要么不通要么慢, 然后朋友叫我你删除重建试试呢, 然后就开到可以用的了, 具体原因不明, 可以作为一个尝试方向去试
    cst4you
        28
    cst4you  
       2020-04-26 02:28:19 +08:00
    @Divingbear 另外海外的话, 因为 zt 走 udp, 可能会被 qos 到死, 但是同样是电信的话, 而且同城, 基本是跑满的, 延迟在 1-3ms 左右, 在日本旅游的时候 zt 回公司电脑处理事情, 连内网 anydesk, 延迟大概 150ms 左右, 基本能用的状态

    有段时间 zt 不知道是出问题还是被干扰, 可用带宽很低, 具体表现是延迟正常, 但是一有大流量马上就会被卡下来, 然后延迟增大的情况, 最近半年是没什么问题 (上海电信)
    mgrddsj
        29
    mgrddsj  
       2020-04-26 02:43:03 +08:00 via Android   ❤️ 1
    @Divingbear Moon 的作用是把双方的 IP 告诉对方,尝试让双方打洞,如果打洞成功了,就是 P2P, 一般能跑满带宽。如果打洞失败,则 Moon 会充当 FRPS 的角色,进入中继模式,这时速度就取决于 Moon 的速度了。
    打洞不成功的可能性有很多,其中之一就是 NAT 类型,建议用工具测试一下,并尽量优化成 Full Cone NAT, 据说移动的网很多都是 Port Restricted Cone NAT 甚至是 Symmetric NAT (Symmetric NAT 完全不可能打洞)。我这边是电信,光猫和部分路由器上面可以更改 NAT 类型,可以看一下。
    另外一个问题就是 ZeroTier 走的是 UDP, 在国内的网络环境下,丢包可能会比较严重。我自己使用起来倒还好。
    另外 moon 还是有用的,自建的就算是在海外的服务器可能也比官方的强。只要你的服务器能被访问到就能起作用。虽然我一直用官方自带的 moon 也没有问题,但国内很多人都反馈能不能连上官方的 moon 是玄学。而且一旦进入中继模式,官方的 moon 最好的情况下也只有 10KB/s 的样子,自建 moon 起码还能当个 frp 用,达到服务器的带宽。
    mgrddsj
        30
    mgrddsj  
       2020-04-26 02:51:39 +08:00 via Android
    我这边广东电信默认情况下是 Port Restricted Cone, 进入光猫超级管理员设置(账号密码自己搜索一下,不是贴在光猫上的那个密码。一般用户名是 useradmin, 密码是 nE7jA%5m ),然后看下图勾上 Full Cone NAT, 保存。
    https://imgchr.com/i/J6tXVA
    (不要吐槽我没改桥接)
    sypopo
        31
    sypopo  
       2020-04-26 08:59:22 +08:00 via iPhone
    我这里移动 4G,电信 4G,都可以和家里单位的移动固网打底成功。手机 4G 网看路由器上的电影都没问题。
    Divingbear
        32
    Divingbear  
    OP
       2020-04-26 09:38:56 +08:00
    @cst4you 多谢指导,我大概明白了。那么最好准备一个国内的走电信服务的 VPS 做 MOON 比较好,一方面如果两台内网机器能够直连成功是最好的情况,如果无法直连的情况,还可以用 MOON 中继一下。而且两者各有优劣,直连 P2P 固然延迟很小,但是容易被 OQS 骚扰致死;而中继的延迟略高(国内服务器的情况),但是走 TCP 协议反而规避了 OQS 的干扰。对否?

    @mgrddsj 感谢解释,昨天有兄弟也指点我看一下 NAT,我读了他转的恩山的帖子,家里的路由和防火墙我都改了一下,但是公司的就没办法了。另外需求不一样,我得要路由器做个科学上网的转接,光猫不具备可操作性啊。
    lanwairen123
        33
    lanwairen123  
       2020-04-26 10:40:44 +08:00 via Android
    @Divingbear 电脑直接接光猫的情况下用光猫超管账号设置下 DMZ 或 upnp,一般都可以 FullCone NAT,如果必须用路由器,那就设置光猫桥接,路由器拨号,设置 fullcone nat,也可以成功,今天上午刚配置成功一个,移动宽带,电脑直联光猫,超管设置 DMZ,直接变成 FullCone NAT,成功直联
    lanwairen123
        34
    lanwairen123  
       2020-04-26 10:41:58 +08:00 via Android
    @Divingbear 直联只要有一端是 fullcone 就可以成功打洞直联
    Divingbear
        35
    Divingbear  
    OP
       2020-04-26 11:07:34 +08:00
    来汇报一下最新进度。
    听从大家的建议,我没有去检测 NAT 类型,只是把家里路由器里面和 ICE,uPNP,NAT 有关的字样的都统统打开了,然后反复重启了 A,B 两台机器,果然很快就发现延迟下降了。和之前 400+的延迟不可同日而语。
    正在 Ping 192.168.192.168 具有 32 字节的数据:
    来自 192.168.192.168 的回复: 字节=32 时间=5ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=6ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=10ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=16ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=5ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=7ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=19ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=110ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=94ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=30ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=31ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=41ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=59ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=43ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=45ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=54ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=52ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=68ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=6ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=6ms TTL=128
    来自 192.168.192.168 的回复: 字节=32 时间=22ms TTL=12

    但是新的问题出现了
    1.我 A,B 两台机子都共享了文件夹,然后胡拖文件测试下载速度。
    从 A(家里 NAS )拖了一个 1G 的视频文件到 B (公司电脑),速度只有 1MB/s,好吧,我家里宽带上行只有 20Mbps,我忍了
    但是从 B 到 A 拖个文件连 800KB 都不到是什么鬼?公司网络 100Mbps 的对等网,家里也是 100Mbps 的下行带宽啊,直连啊,就这么点速度你不丢人吗?
    各位给把把脉,我这是不是五行缺软路由的节奏?

    另外总结一些教训,给后来者借鉴,防止走弯路。
    1. 确实你的 NAT 等级会影响直通的接通率(稍微说的保守些),所以最好尽可能调高 NAT 等级,具体方法请参考 @lanwairen123 提供的链接 https://www.right.com.cn/forum/thread-199299-1-1.html

    2.一般情况下只在目标机器上安装客户端即可,如果实在直通情况不佳,再考虑增加 MOON,如果你只有国外的小鸡就别折腾,效果可能还没有香港的 PLANT 中继效果好。我用搬瓦工 DC6 (洛杉矶)的 GIA,单程也在 180ms 的延迟以上,中继一下延迟就 400 朝上了。

    3.windows 下重启 Zerotier 不是右下角的图标开关,是需要去服务( Services.msc)里面重启服务;在 Linux 里教程常说用 Zerotier-one -d 命令重启服务,然后这就是个坑,这个进程是自启动的,你这时候运行命令会报严重错误无法绑定指定端口云云,其实用 ps -elf 去看的话,其实已经运行了。

    4.另外还有一点,如果配置 MOON,千万记得不要用本机去查看 peers,要用在这个 networks 里面的其他机器看,因为本机的 listpeers 指令只能看到除本机之外的其他机器的情况,所以我曾经配了一天的 moon,但是总是看不到所谓的 moon 字样,以为自己配置失败了,直到我没办法在第二台 vps 上开始配置 moon 后才发现。。。。。
    lanwairen123
        36
    lanwairen123  
       2020-04-26 12:33:35 +08:00 via Android
    @Divingbear 直联速度想要飞起来只能两端用的是同一家网络运营商,跨运营商会限速的
    mm2x
        37
    mm2x  
       2020-04-26 13:52:45 +08:00
    @lanwairen123 大城市同城的话还好基本能跑满你的上行。 直连主要是看 NAT 的类型。
    wyfbest
        38
    wyfbest  
       2020-04-26 14:15:03 +08:00
    我是在 openwrt 上用的,公司和家里都是电信,直连延迟大概 20ms 还不错
    但是我也存在复制文件只有 1M/S 的情况,怀疑是运营商 QoS 的原因。
    Divingbear
        39
    Divingbear  
    OP
       2020-04-26 14:20:50 +08:00
    @lanwairen123 我两端都是电信的,限速应该不是 ISP 问题

    @wyfbest QoS 的话,你 ping 可以看到请求超时的,我目前还好,比较稳定,看不到超时啊。
    wyfbest
        40
    wyfbest  
       2020-04-26 14:31:18 +08:00
    我是一开始能跑到大概 4M/S 左右,然后就速度不行了。ping 确实也有丢包。
    zyq2280539
        41
    zyq2280539  
       2020-04-26 16:24:48 +08:00   ❤️ 1
    frp 一般是端口映射方式,但是 zerotier 相当于是主机组网,所以就不用考虑端口的问题了,只需记住 ip 就可以了。目前经过 moon 之后流量确实会经过中转,我用腾讯云 1M vps 尝试过了,最高速度也确实是 1M 带宽。。。
    Divingbear
        42
    Divingbear  
    OP
       2020-04-26 17:55:28 +08:00
    @wyfbest 开始那个速度不可信的,要等后边跑的速度才比较真实

    @zyq2280539 中继的话,1M 的 vps 肯定是限速点,我现在应该是直连的,这个限速很可能是公司的路由限速,但是目前还没条件验证一下.
    PublicDNS
        43
    PublicDNS  
       2020-04-26 18:19:31 +08:00
    @Divingbear 可以用 iperf3 跑流量测试试试。
    PublicDNS
        44
    PublicDNS  
       2020-04-26 18:21:16 +08:00
    Divingbear
        45
    Divingbear  
    OP
       2020-04-27 10:34:22 +08:00
    @PublicDNS 我下了 iPerf3,但是不管怎么用都会报错啊,我尝试关闭了链路上的能关的防火墙都不行(公司的防火墙我动不了)
    iperf3: error - unable to connect to server: Connection timed out
    另外你那个帖子我也看了,除了能看速度,看不到是链路上哪个环节限速了啊?
    Aprikoze
        46
    Aprikoze  
       2020-05-12 15:39:17 +08:00
    害,还是公网 IP 好使,,,家里和公司都没公网 IP,用 zerotier 穿透后连上在家中路由器搭建的乳酸菌饮料服务器,速度才一两百 k,看来走的是 zerotier 服务器
    impig33
        47
    impig33  
       2020-09-16 10:02:32 +08:00
    你需要这个:
    udp2raw-tunnel

    给 zerotier 戴上
    creating
        48
    creating  
       2020-09-24 22:55:40 +08:00 via Android
    @impig33
    大佬你好,由于 NAT 网络复杂且无法修改,zerotier 无法直连,如果使用 udp2raw-tunnel 是否可以让 zerotier 实现直连,如果可以有没有可以参考的文档,感谢!!!
    impig33
        49
    impig33  
       2020-09-25 14:40:00 +08:00
    impig33
        50
    impig33  
       2020-09-25 14:42:32 +08:00
    万一不行就换 tinc 吧,是 isp 把 udp 给 xxx 了
    delpo
        51
    delpo  
       2020-10-29 14:09:42 +08:00   ❤️ 1
    @mgrddsj symmetric nat 是有可能可以打洞的
    如果一端是 symmetric 另一端是 port restricted,那是 100%可以打洞的
    如果两端都是 symmetric,其中一端的端口是递增的,那么有非常大的概率也是可以打洞的。
    当然如果两端都是 random symmetric,那几乎是不可能成功的。
    以上几种方案的缺点是需要耗费更多的时间和流量,所以大部分穿透工具都不提供。

    在 zerotier 中,一端 symmetric 另一端 port restricted 是有小概率可以打洞成功的,原因就在于 zerotier 的配置中使用了不止一个本地端口,所以如果 symmertic 是递增的,那么备用的本地端口就有可能刚好命中外部端口。但是同时也是可以通过自己写一个脚本发包来打开 nat 的映射,可以极大的提高成功的概率,我自己的设备就是这样打洞的。

    所以如果楼主的网络拓扑是一端 symmetric 另一端 port restricted 的话,在后者的设备上写个发包脚本运行,就能提高打洞成功的概率。
    delpo
        52
    delpo  
       2020-10-29 14:54:00 +08:00   ❤️ 1
    @Divingbear zerotier 的原理是创建了一个虚拟交换机,节点之间通过这个虚拟交换机进行通信,也就是你可以看到叫 ztxxxxx 的网络接口( linux 下),实际上 peer 之间的数据传输是用的 udp 协议。比如你用的 smb,大概就是 tcp over udp 类似的方式。
    你可以用 wireshark 之类的抓包软件抓一下包,比如你用的 smb 进行文件下载,就抓 ztxxxxx 网卡上的 445 端口,然后可以看一下 tcp retransmission 的包,如果这样的包过多就说明 udp 丢包率比较高,就会被 tcp 用拥塞控制机制限流。
    所以,如果 udp 丢包率不是太高的话,你可以试试多线程下载,或者开启 bbr,可以提高一部分速度。
    当然,如果丢包率实在太高那也没办法,只能当作是链路限速了。
    Divingbear
        53
    Divingbear  
    OP
       2020-11-07 15:13:05 +08:00
    @delpo 受益匪浅,虽然只看懂了部分内容,感谢指点。
    TcDhl
        54
    TcDhl  
       2021-06-11 15:03:48 +08:00
    @whywhywhy
    我自己是在国内环境下用 zerotier, 自己弄了两台 moon, 一台是国内机器一台是香港机器, 差不多有用了两年多, 只要两端连接成功, 我印象中还么有中间断开的情况(异地也很稳, 都是用的家庭电信宽带), 而且两端跑的流量不会经过 moon 服务器
    impig33
        55
    impig33  
       2021-08-02 23:03:38 +08:00
    两个相比,tinc 是更好的选择,缺点是不能点对点打洞,带宽跑不满。
    justaname
        56
    justaname  
       337 天前
    @Chauncey09 frp 只能走中继,大流量传输的时候就很有问题,除非舍得花大价钱买大容量高带宽的 VPS 。虽然有 xtcp 模式,但是一是成功率堪忧二是配置麻烦很多,每次还只能选择性开一个端口,有很多应用你是没法选择固定开哪个端口的。
    humbass
        57
    humbass  
       129 天前
    zerotier 在电脑运行后,如何通过 zerotier 上网,例如说我在深圳,自建的另外一个节点在上海,如何通过上海的出口上网?
    关于   ·   帮助文档   ·   API   ·   FAQ   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2561 人在线   最高记录 5497   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 76ms · UTC 11:55 · PVG 19:55 · LAX 04:55 · JFK 07:55
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.