ZeroTier搭建Moon服务器笔记

虽然我也不知道搭建这个 Moon 服务器到底有什么用,毕竟它并不能加快 ZeroTier 打洞后的各个主机之前数据传输速度,Moon 服务器它只能提升打洞速度……
手上有一台空闲服务器,拿来试着搭建了一下。
直接进入正文。
搭建 Moon 服务器
首先用来当 Moon 服务器的主机也必须安装 ZeroTier。本文使用 Linux 系统,后面的指令都是 Linux,并且使用的是 root 用户。
curl -s https://install.zerotier.com/ sudo bash
# 安装 ZeroTier
加入一个 ZeroTier 服务器:
zerotier-cli join 服务器id
进入 ZeroTier 目录中生成 moon.json 文件:
cd /var/lib/zerotier-one
zerotier-idtool initmoon identity.public > moon.json
生成 moon.json 文件后,打开编辑:

首先记住上面显示的 ID,这个 ID 其实就是 ZeroTier 给你本机分配的一个 ID。
在 “stableEndpoints” 这一项中填入此服务器的公网 ip,后面的 “/9993” 和引号不变。
保存后输入指令生成 “.moon” 文件:
zerotier-idtool genmoon moon.json
创建一个名为 “moons.d” 的文件夹,将 “.moon” 文件放入。
mkdir moons.d
mv **.moon moons.d
接下来重启一下 ZeroTier:
service zerotier-one restart
这样一来 Moon 服务器就算搭建完成了。
为客户端配置 Moon 服务文件
接下来的操作是在客户端中进行而不是 Moon 服务器中。
Moon 服务器搭建完成之后,使用该 Moon 服务器还需要在各个客户端上进行配置,配置方式很简单。
使用指令:
zerotier-cli orbit id id
指令中的 "id" 更换为 moon.json 中的 id 项,上文中有提及。
如果 zerotier-cli 指令无法正常使用,建议首先进入 ZeroTier 的安装目录,随后运行指令,Windows 系统目录为:C:\ProgramData\ZeroTier\One ,Linux 目录为:/var/lib/zerotier-one 。Windows 建议使用管理员权限运行命令行,Linux 使用 root 用户执行指令。
完成后输入 zerotier-cli listpeers ,可以检查是否成功加入 Moon 服务器。

所以相当于是每一台客户端都必须使用指令加入 Moon 服务器,不知道 ZeroTier 官方为什么要这样设计,明明只需要让在这个 Networks 里的人自动加入就好了。