ZeroTier官方plant都在国外,大陆用户使用起来延迟太高,且打洞成功率低,所以我们在vps上自建moon来加速连接。要求moon所在vps有公网ip,ipv4或ipv6均可。

安装ZeroTier客户端

zerotier官网在国内并未遭到封禁,无需使用代理即可安装,在vps上执行:

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

将VPS加入虚拟网络

在vps上执行命令,将云服务器加入到自己创建好的虚拟网络,更换为zerotier控制台显示的虚拟网络id。

sudo zerotier-cli join <network id>

第三步 配置 Moon

进入 zerotier-one 程序所在的目录,默认为 /var/lib/zerotier-one。

$ cd /var/lib/zerotier-one

生成 moon.json 配置文件

$ sudo zerotier-idtool initmoon identity.public >> moon.json

编辑 moon.json 配置文件

$ sudo nano moon.json

将配置文件中的 "stableEndpoints": [] 修改成 "stableEndpoints": ["ServerIP/9993"],将 ServerIP 替换成云服务器的公网IP。
生成 .moon 文件

$ sudo zerotier-idtool genmoon moon.json

将生成的 000000xxxxxxxxxx.moon 移动到 moons.d 目录

$ sudo mkdir moons.d
$ sudo mv 000000xxxxxxxxxx.moon moons.d
.moon 配置文件的名一般为10个前导零+本机的节点ID
重启 zerotier-one 服务
$ sudo systemctl restart zerotier-one

自此moon节点搭建完成

使用 Moon

普通的 Zerotier 成员使用 Moon 有两种方法,第一种方法是使用 zerotier-cli orbit 命令直接添加 Moon 节点ID;第二种方法是在 zerotier-one 程序的根目录创建moons.d文件夹,将 xxx.moon 复制到该文件夹中,我们采用第一种方法:
Linux 系统下使用 Moon
将命令中的两组 xxxxxxxxxx 都替换成 moon 的节点ID,此处xxxxxxxxxx来源于000000xxxxxxxxxx.moon文件名。

$ sudo zerotier-cli orbit xxxxxxxxxx xxxxxxxxxx

检查是否添加成功

$ sudo zerotier-cli listpeers

结果中<role>列有MOON字样,表示成功连接MOON节点。
Windows 系统下使用 Moon
打开 PowerShell,将命令中的两组 xxxxxxxxxx 都替换成 moon 的节点ID。

PS C:\Windows\system32> zerotier-cli.bat orbit xxxxxxxxxx xxxxxxxxxx

检查是否添加成功

PS C:\Windows\system32> zerotier-cli.bat listpeers
提示:Windows 系统的默认程序目录位于 C:\Program Files (x86)\ZeroTier\One。
最后修改:2024 年 10 月 15 日
如果觉得我的文章对你有用,请随意赞赏