搭建Moon服务器
Moon服务器也是一个Zerotier的节点,因为Zerotier服务器在国外,为了提高速度,我们搭建自己的Moon服务器。
Debian上安装Zerotier
如果使用的系统以Debian为例,那么安装只需要使用root权限执行如下命令:
curl -s https://install.zerotier.com | sudo bash
安装完后会给出服务器的Zerotier节点ID,该ID是一个长度为10的十六进制数字。没保存问题也不大,使用root权限执行下面的命令,第三个字段即为节点ID:
cd /var/lib/zerotier-one/
加入zerotier 网络
zerotier-cli join (Network ID)
导出Moon的配置文件:
zerotier-idtool initmoon identity.public >> moon.json
如果显示“dentity.public is not a valid identity”,则需要依次执行如下命令:
zerotier-idtool generate
zerotier-idtool generate identity.secret identity.public
然后再执行:
zerotier-idtool initmoon identity.public >> moon.json
使用你喜欢的编辑器编辑生成的moon.json文件,将服务器地址和端口填入stableEndpoints后面的方括号中:
生成Moon服务器的文件:
zerotier-idtool genmoon moon.json
会生成一个.moon文件。
创建moons.d文件夹
mkdir moons.d
将.moon文件复制到moons.d文件夹中
cp \*.moon moons.d/
重启Zertier
systemctl restart zerotier-one.service
配置开机启动
systemctl enable zerotier-one.service
最后,Zerotier使用9993这个UDP端口进行通信,所以需要开放服务器的9993端口,各家云服务器的防火墙不同,请自行操作,这里不再赘述。
加入Moon服务器
搭建好Moon服务器后,需要将各个Zerotier终端加入到Moon服务器中。
比较简单的方法是将构建Moon服务器时将生成的.moon文件放入到指定文件夹中,不同的操作系统位置如下(没有该文件夹就创建文件夹):
Windows: C:\ProgramData\ZeroTier\One
Macintosh: /Library/Application Support/ZeroTier/One (在 Terminal 中应为 /Library/Application\ Support/ZeroTier/One)
Linux: /var/lib/zerotier-one
FreeBSD/OpenBSD: /var/db/zerotier-one
(此步好像有些许 bug,重启电脑为佳)
检测生效
在非 moon 的客户端,输入命令:
zerotier-cli listpeers
Windows 有一点不同,需要使用管理员权限的 PowerShell 输入:
zerotier-cli listpeers
如果出现如下情况:
moon 服务器的 ID 、IP 地址出现在列表中,证明联通 moon 服务器。
200 listpeers
...................
200 listpeers 6xxxxxxxxx [moon IPv4地址]/60723;11450;11405 -1 1.4.6 MOON
...................
发现有moon字样,说明搭建成功
如果没有moon服务器,只有leaf,那就需要转换一下 zerotier-cli orbit (节点ID) (节点ID)
[注]zerotier-cli listmoons #列出加入的Moon节点
zerotier-cli orbit
zerotier-cli deorbit
文章评论