前言
前文實現了 ZeroTier 內網穿透 。但是由於 ZeroTier 的官方 moon 中轉服務器在國外,國內客戶端可能出現使用延遲大,甚至出現訪問不了的問題。可以自己搭建 moon 中轉服務器,來實現穩定的服務。
注意:
- 1.2.4 版本之后的 ZeroTier 才支持 moon 服務器。
moon 安裝 ZeroTier 並加入虛擬網絡
請參閱:ZeroTier 內網穿透 。
moon 服務器配置
-
進入 ZeroTier 配置文件目錄。
cd /var/lib/zerotier-one -
生成 moon.json 簽名文件。
sudo -s zerotier-idtool initmoon identity.public >>moon.json -
編輯
vim moon.json可以看到如下信息:
moon.json
{ "id": "0123456789", "objtype": "world", "roots": [ { "identity": "xxxxxxxx:0:xxxxxxxx", "stableEndpoints": [] } ], "signingKey": "xxxxxxxx", "signingKey_SECRET": "xxxxxxxx", "updatesMustBeSignedBy": "xxxxxxxx", "worldType": "moon" }注意:記錄下 moon.json 文件中的 id 。
-
修改信息。
找到
"stableEndpoints": []。添加
"IPv4地址/9993"或者"IPv4地址/9993","IPv6地址/9993"。示例:
"stableEndpoints": ["1.2.3.4/9993","2001:abcd:abcd::1/9993" ] -
生成 .moon 簽名文件
zerotier-idtool genmoon moon.json顯示:
wrote 0000006xxxxxxxxx.moon (signed world with timestamp 15xxxxxxxxxx7) -
創建 moon 結點文件夾。
mkdir /var/lib/zerotier-one/moods.d -
將簽名文件復制到 moods.d 文件夾中
cp 0000006xxxxxxxxx.moon moons.d/ -
重啟 ZeroTier 服務
/etc/init.d/zerotier-one restart
設備連入 moon 服務器
自動配置
-
輸入命令:
sudo zerotier-cli orbit [moon.json 文件中的 id] [moon.json 文件中的 id] -
Windows 有一點不同,需要使用管理員權限的 PowerShell 輸入:
zerotier-cli orbit [moon.json 文件中的 id] [moon.json 文件中的 id]
手動配置
各個系統平台下 ZeroTier 目錄位置 :
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
-
在對應系統平台下的 ZeroTier 目錄位置,創建 moods.d 文件夾。
sudo mkdir /var/lib/zerotier-one/moods.d -
將 moon 服務器生成的 0000006xxxxxxxxx.moon 拷貝到 moods.d 文件夾下。
-
重啟 zerotier-one 服務。
- Linux :
/etc/init.d/zerotier-one restart - Windows :
- 按下 windows鍵+r ,打開 “運行” 窗口。
- 輸入 services.msc 回車。
- 找到 ZeroTier One 服務,右鍵選擇 “重新啟動” 。
- Linux :
檢測生效
-
在非 moon 的客戶端,輸入命令:
zerotier-cli listpeers -
Windows 有一點不同,需要使用管理員權限的 PowerShell 輸入:
zerotier-cli listpeers
如果出現如下情況:
- moon 服務器的 ID 、IP 地址出現在列表中,證明聯通 moon 服務器。
200 listpeers <ztaddr> <path> <latency> <version> <role>
...................
200 listpeers 6xxxxxxxxx [moon IPv4地址]/60723;11450;11405 -1 1.4.6 MOON
...................
