By accessing the website and accepting the Cookie Policy, you agree to use the cookies provided by the Site in accordance with to analyze traffic, remember your preferences, and optimize your experience.
zerotier的planet服务器(根服务器)的搭建踩坑记。无需zerotier官网账号。
2022-05-13 19:32:51    2001    0    0
emengweb

(1).首先更新系统

apt update

(2).安装必要的编译组件

apt install wget gcc gcc-c++ git -y

(3).安装官方客户端

curl -s https://install.zerotier.com/ | sudo bash

(3-1).记录identity.public和authtoken.secret文件里的字符串,以后有用。注意每台设备不同,字符串也不同,别抄我的

identity.public里的是:

2dcdb49f24:0:2e39cb1b36c96bea35a4ae506e15bad97019c48880e66fe9310453977dd9ce7981987bdb94e1e8eb4cd14d09d27aeeaf1c9658bb98b1bc7107a7e3d427d5bdc2

authtoken.secret里的是:

w8cl25tzb38dvwffenucrbug

(4).下载并编译配置文件

git clone https://gitee.com/opopop880/ZeroTierOne.git
cd ./ZeroTierOne/attic/world/

sed -i '/roots.push_back/d' ./mkworld.cpp
sed -i '/roots.back()/d' ./mkworld.cpp
sed -i '85i roots.push_back(World::Root());' ./mkworld.cpp
sed -i '86i roots.back().identity = Identity(\"'"填写identity.public里的字符串"'\");' ./mkworld.cpp
sed -i '87i roots.back().stableEndpoints.push_back(InetAddress(\"'"服务器ip地址/通讯端口"'\"));' ./mkworld.cpp  #默认通讯端口是9993,可以自行修改

source ./build.sh
./mkworld
mv ./world.bin ./planet
\cp -r ./planet /var/lib/zerotier-one/
\cp -r ./planet /root​

(4-1).重启官方客户端

systemctl restart zerotier-one.service

(5).安装planet服务器的管理系统ztncui

wget https://gitee.com/opopop880/ztncui/attach_files/932633/download/ztncui-0.8.6-1.x86_64.rpm
rpm -ivh ztncui-0.8.6-1.x86_64.rpm

(5-1).生成接口文件

cd /opt/key-networks/ztncui/

echo "HTTPS_PORT = 3443" >>./.env  #3443是ztncui默认的web面板端口,可以自行修改
echo "ZT_TOKEN = authtoken.secret文件里的字符串" >>./.env  #这里的字符串是authtoken.secret文件里的字符串
echo "ZT_ADDR=127.0.0.1:9993" >>./.env  #这里是面板与本地客户端的通讯端口,保持默认9993就行,千万别修改,修改了本地ztncui和ZeroTier-One通讯就会错误
echo "NODE_ENV = production" >>./.env
echo "HTTP_ALL_INTERFACES=yes" >>./.env​

(5-2).启动ztncui管理面板

systemctl restart ztncui

(6).现在可以使用:https://服务器ip:3433登录了,默认账号和密码是:admin/password 

备注:【注意这里的证书是不可信的,所以要点浏览器页面上的高级--继续前往服务器ip(不安全)】第一次登录需要改密码,改完密码后在页面上点注销,然后用新密码登录。

登录以后点:add a network建立一个虚拟网路,network name:名称随便写,最后按create a network 按钮保存

(7).记住there are no members on this network - users are invited to join后面的网络id,后续方便虚拟局域网的其他电脑加入

(8).下载/root目录下生成的“planet”文件,来替换需要组网客户端里的“planet”文件

(9).其他需要加入虚拟局域网的电脑正常安装客户端,各系统的客户端下载地址:https://www.zerotier.com/download/

(10).使用刚才下载的“planet”文件替换其他电脑“ZeroTier-One”安装目录下的“planet”文件,并重启系统

(11).在设备上执行 “zerotier-cli join 你的planet服务器网络ID”加入刚组建虚拟局域网

zerotier-cli join xxxxxxxxxx

如果一切正常的话,会显示:200 join OK 的提示

(12)在其他设备上执行zerotier-cli listpeers命令可以看到你架设成功的planet服务器,注意这里的planet服务器是不显示ip的。具体见下图

p.jpg


最后planet服务器可以添加虚拟局域网的dns服务器,虚拟路由器等功能,但是无法控制各虚拟节点,这里官方已经给出了明确的说明。


客户端配置

客户端主要为Windows, Mac, Linux, Android

4.1 Windows 配置

首先去zerotier官网下载一个zerotier客户端

将 planet 文件覆盖粘贴到C:\ProgramData\ZeroTier\One中(这个目录是个隐藏目录,需要运允许查看隐藏目录才行)

Win+S 搜索 服务

ui

找到ZeroTier One,并且重启服务

ui

4.2 加入网络

使用管理员身份打开PowerShell

执行如下命令,看到join ok字样就成功了

PS C:\Windows\system32> zerotier-cli.bat join 网络id(就是在网页里面创建的那个网络)
200 join OK
PS C:\Windows\system32>

登录管理后台可以看到有个个新的客户端,勾选Authorized就行

ui

执行如下命令:

PS C:\Windows\system32> zerotier-cli.bat peers
200 peers
<ztaddr>   <ver>  <role> <lat> <link> <lastTX> <lastRX> <path>
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(直连)

到这里就加入网络成功了

4.2 Linux 客户端

步骤如下:

  1. 安装linux客户端软件
  2. 进入目录 /var/lib/zerotier-one
  3. 替换目录下的 planet 文件
  4. 重启 zerotier-one 服务(service zerotier-one restart)
  5. 加入网络 zerotier-cli join 网络 id
  6. 管理后台同意加入请求
  7. zerotier-cli peers 可以看到 planet 角色

4.3 安卓客户端配置

ZerotierFix

Zerotier 非官方安卓客户端发布:支持自建 Moon 节点 - V2EX

上一篇: Virmach 日本东京等多区域大盘鸡 250G/500G/1T/2T/4T

下一篇: 设计规范和适配

2001 人读过
文档导航