架设moon服务器详细记录
第一步: 合适的服务器.
云服务器里选个最便宜的,反正只要有公网IP就可以了,对系统的配置要求不高,原则离设备的物理地址近一点的更好。
我这里选择轻量应用服务器,moon节点一般只用于转发信令,所以没有性能没有太大关系,
系统镜像选unbuntu22.04。
怎么挑选下单付款的我就不罗嗦了, 进入控制台
第二步:安装zerotier
curl -s https://install.zerotier.com/ | sudo bash
最后一行出现Success
然后启动zerotier服务,在控制台输入
sudo systemctl start zerotier-one.service sudo systemctl enable zerotier-one.service
输入
sudo zerotier-one cli
把这台服务器加入你的zerotier网络,看看这个我们应该也知道,应该输入:
sudo zerotier-one cli join 你的网络ID
如果显示cannot bind to local control interface port 9993的话,重启zerotier服务,也就是输入
sudo /etc/init.d/zerotier-one restart
然后输入上面那个加入网络的命令,看看行不行,如果成功的话,我们会在zerotier的管理页面里看到你的新服务器。
给它把Auth?那一栏给勾上,这样你的服务器就加入网络了。
然后我们开始配置moon节点。
首先生成一个moon文件
cd /var/lib/zerotier-one zerotier-idtool initmoon identity.public > moon.json
如果出现permission denied,就输入sudo su转到有权限的账户下再执行这两句指令
然后输入vim moon.json,在跳出来的界面里按一下i。
然后把光标移动到这个位置
![]()
在两个中括号里输入"你的服务器公网ip"/9993,像这样:
![]()
注意两头加引号""
然后按一下esc,再按一下:,再输入wq回车,别问我为什么,我不知道也不想知道,反正不是用来生成随机文本。
这时再输入
zerotier-idtool genmoon moon.json
这个时候下面会跳出来一行wrote开头的代码就说明写入成功了,然后输入:
sudo mkdir moons.d
这一步是创建一个文件夹。
然后输入
sudo mv 000000dd444440b0f7.moon moons.d/
这一步是把上次生成的签名文件移动到moons.d文件夹里,那个看起来一长串乱码的.moon文件的名字在那一行wrote开头的代码里可以看到,实在看不到就打个ls回车就看到了。
做完这些你的moon服务器就算配置完成,重启下zerotier服务,也就是输入
sudo systemctl restart zerotier-one
服务重启之后,到连接到了这个zerotier网络的其他电脑上,windows下就打开命令行(管理员模式哦),输入:
zerotier-cli listpeers
这里你终于可以用ctrl+V了,可喜可贺。
输入完上面那一行命令之后,可以看到下面列出了一大堆代码
你可以看到我这里已经有moon节点了哈,那个是之前拿来做实验的,只买了一个星期的时间,但后来我发现因为我买了这一个星期造成了我失去首单优惠的活动.....
这里找到你刚刚配置的那台服务器的IP地址,然后找到对应那一行listpeers后面的神秘代码,复制它。
再输入这个命令:
zerotier-cli orbit 神秘代码 神秘代码
然后看看运行结果是不是200 orbit OK
如果是的话,再输入
zerotier-cli listmoons
这个命令会列出现在在网的所有zerotier moon 服务器,找一找有没有你刚刚设置的moons,有就完事儿啦。
有多少台机器就在多少台机器上配置一下,别问我为什么,我也不知道,如果你会的话可以把生成的.moon文件拷贝到各个机器上就成。
一下是有关安卓怎么设置moon。
安卓是有zerotier客户端,但是官方客户端并不支持设置moon,这里用在知乎找到的一位大神的魔改客户端,链接在这里,
Zerotier 非官方安卓客户端发布:支持自建 Moon 节点 - 知乎 (zhihu.com)
用大神的客户端然后把刚刚的moon服务器入轨就完事儿啦。
加入moon节点之后的内网穿透速度相当喜人,互ping延迟在二十几毫秒,反正用来满足使用"思源笔记"