ZeroTier 自建 Moon 节点加速内网穿透
ZeroTier 用起来很方便,但官方的 Planet 节点在国内延迟比较高,有时候连接也不稳定。自建一个 Moon 节点可以解决这个问题——Moon 是 ZeroTier 的中继节点,客户端优先通过 Moon 中转,延迟会低很多。
在 VPS 上配置 Moon 节点
安装 ZeroTier
curl -s https://install.zerotier.com | sudo bash
systemctl enable zerotier-one
加入 ZeroTier 网络
zerotier-cli join <network-id>
生成 Moon 配置
cd /var/lib/zerotier-one
zerotier-idtool initmoon identity.public > moon.json
编辑生成的 moon.json,找到 stableEndpoints 字段,填入 VPS 的公网 IP:
"stableEndpoints": ["1.2.3.4/9993"]
id 字段是这台 VPS 的 10 位 ZeroTier ID,记下来后面要用。
生成签名文件
zerotier-idtool genmoon moon.json
执行后会生成一个 000000xxxxxxxxxx.moon 文件。
加载 Moon 节点
在 /var/lib/zerotier-one 下建 moons.d 目录,把 .moon 文件放进去,然后重启 ZeroTier:
mkdir -p /var/lib/zerotier-one/moons.d
cp 000000xxxxxxxxxx.moon /var/lib/zerotier-one/moons.d/
systemctl restart zerotier-one
客户端连接 Moon 节点
在其他机器上执行(两个参数都是 Moon 节点的 ID):
zerotier-cli orbit <moon-id> <moon-id>
或者把 .moon 文件复制到客户端机器的 moons.d 目录下,重启 ZeroTier。
验证是否连上
zerotier-cli listpeers
看到 Moon 节点那行后面有 MOON 字样就成功了:
200 listpeers 3ed7cxxxxx 39.97.x.x/9993;172;79 32 1.6.3 MOON
各系统 ZeroTier 目录位置
| 系统 | 目录 |
|---|---|
| Linux | /var/lib/zerotier-one |
| macOS | /Library/Application Support/ZeroTier/One |
| Windows | C:\ProgramData\ZeroTier\One |
| FreeBSD/OpenBSD | /var/db/zerotier-one |