【实用Docker推荐】搭建moon节点实现zerotier加速访问
本文最后更新于32 天前,其中的信息可能已经过时,如有错误请发送邮件到2289035571@QQ.COM

感谢 TurboAI对本博客的的大力赞助。 创作不易,如果您觉得有帮助,请 支持LIncol29! 为了让我能够继续创作更好的内容,你也可以选择订阅博客的 VIP ,包年VIP仅需10元/年,所有VIP内容免费观看

  • 2024/08/29:更新搭建moon节点的步骤,每台连接设备都需加入moon节点
  • 2025/02/23:更新windows系统设置moon节点,更新zeroteir命令

前言

上篇文章 【实用Docker推荐】使用zerotier实现内网穿透—无公网IP也能在线访问NAS]我们讲述了如何搭建zerotier容器,实现内网穿透。虽然说确实可以访问NAS了,但是速度真的很不理想。

建议先阅读上篇文章,如果你有搭建zerotier的经验,可以选择跳过。

因为zerotier根服务器在国外,在国内的速度很慢,而且不稳定很容易断开连接。

所以根据上述这些缺点,zerotier也给出了一个解决方案。那就是自行搭建一个moon节点来进行中转。

本篇文章将讲述如何自己搭建 Zerotier Moon,加速 Zerotier-One 的连接,让虚拟网络更稳定的运行。

搭建moon节点前 VS 搭建moon节点后

在设置Moon节点之前,我们先来看一下速度。可以从图中看到平均延时都有将近400ms。这个速度真的很慢了,而且会有8%的几率丢包。

一般来说,ping值在50ms以下被认为是优秀的,50-100ms被认为是良好的,100-150ms被认为是中等的,150ms以上则被认为是较高的。

img

如果觉得ping值不能代表什么,那么请看下面这张Gif图。可以看到打开文件速度非常慢,只能说 连了 == 没连

测试zerotier打开Nas延迟

部署moon节点以后,平均到60ms,已经算是比较优秀的了。请看图

img

服务器搭建moon节点

准备工作

1)一台云服务器,带宽稍微高一些

2)操作系统CentOS7

3)开放端口9993,UDP

操作步骤

下载并执行脚本

curl -s https://install.zerotier.com/ | sudo bash

启动并开启自启

systemctl start zerotier-one.service  
systemctl enable zerotier-one.service

加入到网络

zerotier-cli join 63xxxxxxx

说明: 63xxx即NetworkId

进入安装目录

cd /var/lib/zerotier-one/

生成节点配置

zerotier-idtool initmoon identity.public > moon.json

编辑配置

vi moon.json

修改公网IP

在moon.json中找到下面语句。在 [] 中添加服务器IP以及端口号

此端口号需要UDP 放行

"stableEndpoints": [ "ServerIP/9993" ]

PixPin_2025-02-23_09-33-48

生成签名

zerotier-idtool genmoon moon.json

查看生成的文件名

ll

说明: 查看000000xxxxxx.moon的文件名

创建目录

mkdir moons.d

移动moon配置文件

00000050c0acc251.moon修改为你自己的 xxx.moon 文件

mv 00000050c0acc251.moon moons.d/

重启服务

systemctl restart zerotier-one

进入到moons.d

cd moons.d  

重新启动

service zerotier-one restart 

NAS中Docker容器设置moon节点

注意:你需要使用moon节点的设备,都需要按下列步骤加入一次

查看是否联网成功

其中zerotier – moon为你自己容器的名字,自行替换

docker exec zerotier-moon zerotier-cli listnetworks

查看zerotier的节点

docker exec zt zerotier-cli listpeers

NAS加入moon节点 cea2b02da0为zerotier,刚刚服务器的Address.如图红框所示

img

cea2b02da0 替换为你自己Zerotier网站中服务器的Address

docker exec zt zerotier-cli orbit cea2b02da0 cea2b02da0

再次执行命令查看是否变为moon节点

docker exec zt zerotier-cli listpeers

红框所示,已经成功设置为moon节点

img

Windows系统设置moon节点

使用命令行设置moon节点

zerotier-cli orbit cea2b02da0 cea2b02da0

下载moon文件加入到windows系统

  1. 打开服务程序services.msc,找到服务”ZeroTier One”,
    PixPin_2025-02-23_09-36-08

    2.在属性中我的环境下为 C:\ProgramData\ZeroTier\One\zerotier-one_x64.exe, 打开该文件夹,
    3.并且在其下建立moons.d文件夹,然后将moon服务器下生成的x.moon文件,拷贝到此文件夹内
    PixPin_2025-02-23_09-37-28

    4.再重启该服务即可(计算机右键管理-找到服务双击打开-找到zerotier one右键重新启动即可)

Zerotier命令

zerotier-cli info   #查看当前zerotier-one的信息
zerotier-cli listpeers  #列出所有的peers
zerotier-cli listnetworks   #列出加入的所有的网络
zerotier-cli join <network> #加入某个网络
zerotier-cli leave <network>    #离开某个网络
zerotier-cli listmoons  #列出加入的Moon节点
zerotier-cli orbit <world ID> <seed> #加入某个Moon节点
zerotier-cli deorbit <world ID> #离开某个Moon节点

文章参考资料

创作不易,如果您觉得有帮助,请支持LIncol29!
如有需要,请至网站地图学习本博客的教程
博客订阅:通过RSS或关注公众号[Lincol的编程世界] | 广告招租与合作请留言
本文链接:https://www.lincol29.cn/moonzerotier
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0协议转载请注明文章地址及作者哦~
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇