1. 专有名词
PLANET :行星服务器,Zerotier 根服务器
MOON :卫星服务器,用户自建的私有根服务器,起到代理加速的作用
LEAF :网络客户端,就是每台连接到网络节点。
我们本次搭建的就是 PLANET 行星服务器
2. 为什么要自建PLANET 服务器
简单来讲就是官方的服务器在海外,我们连接的时候会存在速度慢,不稳定的情况
3. 安装docker和docker-compose
debian安装docker和docker-compose
在Debian系统上安装Docker和Docker Compose可以通过以下步骤进行:
更新软件包索引:
sudo apt-get update
安装Docker:
sudo apt-get install docker.io
启动Docker服务并设置开机自启:
sudo systemctl start docker
sudo systemctl enable docker
安装Docker Compose:
sudo apt-get install python3-pip
sudo pip3 install docker-compose
sudo apt install docker-compose
验证Docker和Docker Compose是否安装成功:
docker --version
docker-compose --version
4. 搭建zerotier planet
先拉取代码,可选Github或者Gitee
git clone https://github.com/Jonnyan404/zerotier-planet
或者
git clone https://gitee.com/Jonnyan404/zerotier-planet
接着编辑docker-compose.yml文件,修改web端密码以及服务器公网IP地址
然后在上述文件同目录下执行下面命令进行容器编排。
docker-compose up -d
以下步骤为创建planet和moon,终端一行行执行
docker cp mkmoonworld-x86_64 ztncui:/tmp
docker cp patch.sh ztncui:/tmp
docker exec -it ztncui bash /tmp/patch.sh
docker restart ztncui
然后浏览器访问 http://ip:4000 打开web控制台界面,创建网络。
然后easy setup配置规则
这里可以随机生成也可自己手动编辑
然后回到终端,执行下面命令,网络id改为你自己创建的网络id,第二个命令运行成功会出现200OK字样,然后去web端可以看到设备,勾选Authorized,这时planet就成功加入网络。
docker exec -it ztncui /bin/bash
zerotier-cli join 网络id
后续使用方法与官方版基本一致,不过需要使用对客户端做出一定修改,浏览器访问 http://ip:3180 打开planet和moon文件下载页面(亦可在项目根目录的./ztncui/etc/myfs/里获取)。
5. 客户端配置
客户端主要为Windows, Mac, Linux, Android
5.1 Windows 配置
首先去zerotier官网下载一个zerotier客户端
将 planet 文件覆盖粘贴到C:\ProgramData\ZeroTier\One中(这个目录是个隐藏目录,需要运允许查看隐藏目录才行)
Win+S 搜索 服务
找到ZeroTier One,并且重启服务
加入网络
使用管理员身份打开PowerShell
执行如下命令,看到join ok字样就成功了
PS C:\Windows\system32> zerotier-cli.bat join 网络id(就是在网页里面创建的那个网络)
200 join OK
PS C:\Windows\system32>
登录管理后台可以看到有个个新的客户端,勾选Authorized就行
IP assignment 里面会出现zerotier的内网ip
执行如下命令:
PS C:\Windows\system32> zerotier-cli.bat peers
200 peers
fcbaeb9b6c 1.8.7 PLANET 52 DIRECT 16 8994 1.1.1.1/9993
fe92971aad 1.8.7 LEAF 14 DIRECT -1 4150 2.2.2.2/9993
PS C:\Windows\system32>
可以看到有一个 PLANTET 和 LEAF 角色,连接方式均为 DIRECT(直连)
到这里就加入网络成功了。
5.2 Linux 客户端(openwrt可以参考这个)
步骤如下:
安装linux客户端软件
进入目录 /var/lib/zerotier-one
替换目录下的 planet 文件
重启 zerotier-one 服务(service zerotier-one restart)
加入网络 zerotier-cli join 网络 id
管理后台同意加入请求
zerotier-cli peers 可以看到 planet 角色
5.3 安卓客户端
安装非官方客户端,并进行设置即可
5.4 MacOS 客户端配置
步骤如下:
进入 /Library/Application\ Support/ZeroTier/One/ 目录,并替换目录下的 planet 文件
重启 ZeroTier-One:cat /Library/Application\ Support/ZeroTier/One/zerotier-one.pid | sudo xargs kill
加入网络 zerotier-cli join 网络 id
管理后台同意加入请求
zerotier-cli peers 可以看到 planet 角色
参考及部分转载:https://qninq.cn/archives/zerotierplanet.html