为了提升 ZeroTier 在高峰时段的体验,我们可以在服务器上自建 Moon 节点。

01 搭建 Moon 节点

curl -s https://install.zerotier.com | sudo bash
sudo systemctl start zerotier-one.service
sudo systemctl enable zerotier-one.service
# 加入 ZeroTier 虚拟局域网
sudo zerotier-cli join asdfasdf

此处的asdfasdf是 ZeroTier 虚拟局域网的 ID,请根据实际情况更改并打开 ZeroTier 管理页面允许新设备的加入。

之后生成moon.json并编辑:

cd /var/lib/zerotier-one/
sudo zerotier-idtool initmoon identity.public > moon.json
vi moon.json

stableEndpoints项中填入服务器的公网 IP 地址,其它项不需要变动,例如:

{
 "id": "xxxxx",
 "objtype": "world",
 "roots": [
  {
   "identity": "xxxx:0:eeee",
   "stableEndpoints": ["220.181.38.148/9993"]
  }
 ],
 "signingKey": "asdfasdfasdf",
 "signingKey_SECRET": "asdfasdfasdfasd",
 "updatesMustBeSignedBy": "asdfasdfasdf",
 "worldType": "moon"
}

生成签名文件:

zerotier-idtool genmoon moon.json

执行之后会生产一个000000xxxx.moon的文件。

将 Moon 节点加入网络:

cd /var/lib/zerotier-one/
sudo mkdir moons.d
sudo mv 000000xxxxxx.moon moons.d/

此处的000000xxxxxx.moon是上一步生成的文件名。

之后重启中转服务器的 zerotier-one:

sudo systemctl restart zerotier-one

到这里,服务器的 Moon 节点就配置完成啦。

02 客户端配置

Linux 客户端

执行以下命令即可:

zerotier-cli orbit xxxxxxxxxx xxxxxxxxxx

其中,xxxxxxxxxx为 Moon 的节点 ID,可以在 ZeroTier 管理页面查看。

之后可以通过以下命令确认是否成功:

zerotier-cli listpeers

若出现类似200 listpeers 7b9528eea2 220.181.38.148/53216;7753;7570 196 1.6.2 MOON的提示,则表示客户端成功连接 Moon 节点。

OpenWrt 插件

通过 SSH 连接 OpenWrt 后,切换到 ZeroTier 插件目录:

cd /etc/config/zero/

之后的步骤同上。

Windows 客户端

以管理员身份打开 PowerShell,执行以下命令即可:

cd "C:\Program Files (x86)\ZeroTier\One"
zerotier-cli.bat orbit xxxxxxxxxx xxxxxxxxxx

同样,命令中的xxxxxxxxxx为 Moon 的节点 ID。

确认是否成功:

zerotier-cli.bat listpeers

同样地,若出现类似200 listpeers 7b9528eea2 220.181.38.148/53216;7753;7570 196 1.6.2 MOON的提示,则表示客户端成功连接 Moon 节点。

  

最后修改:2021 年 12 月 18 日
如果觉得我的文章对你有用,请随意赞赏