
避坑点
1、 客户端配置后显示等待加入中,需要开通远程服务器访问端口。
2、 服务器安装好后, 无法打开配置网页,需要打开服务器端口。
服务端配置
curl -s https://install.zerotier.com/ | sudo bash
安装完之后需要修改默认根服务器配置, 初始状态下zerotier会使用官方提供的4个根服务器(下面标记为PLANET
的成员), 连接虚拟局域网内的成员由于需要中转延迟大概 600ms, 用ssh
的感知比较明显, 输入和补全的卡顿感非常严重. 所以需要修改配置, 将根服务器指定为自己搭建的服务器.
zerotier-cli listpeers

这里需要手动生成planet
文件, 直接用zerotier的源代码编译相关组件输出配置文件即可. 大致过程为, 克隆源代码, 修改其中的的mkworld.cpp
文件, 将原本的4个planet
配置注释掉再补充自建服务器的相关配置, 然后编译并执行目标文件即可生成需要的配置文件.
将文件重命名是因为之后需要将
/var/lib/zerotier-one/
目录下的文件planet
替换掉.
git clone https://github.com/zerotier/ZeroTierOne
cd ZeroTierOne/attic/world
nano mkworld.cpp
. build.sh
./mkworld
mv world.bin planet
关于如何修改mkworld.cpp
中的内容, 这里给出简单的参考, Identity("")
填入的字符串为/var/lib/zerotier-one/identity.public
中记录的数据, 直接cat identity.public
输出复制进来就行. IP地址即自建根服务器的IP地址, 端口号默认为9993
, 无需修改.
这里仅支持最多4个根服务器, 所以不注释原本的配置信息之后运行
mkworld
是会报错的.
std::vector<World::Root> roots;
const uint64_t id = ZT_WORLD_ID_EARTH;
const uint64_t ts = 1567191349589ULL; // August 30th, 2019
// Mine
roots.push_back(World::Root());
roots.back().identity=Identity("</var/lib/zerotier-one/identity.public中的内容>");
roots.back().stableEndpoints.push_back(InetAddress("<服务器的IP地址>/9993"));
// Los Angeles, Miami, Tokyo, Amsterdam 4个官方根服务器的相关配置, 直接注释掉就行;
需要注意, 在大多数平台云服务器默认情况下并不会开放所有端口, 所以配置服务过程中还需要在服务器的控制台手动暴露需要的端口(类似于下图, 这里使用的是阿里云服务器, 其他平台应当也有类似的接口).
zerotier服务需要UDP和TCP的9993端口以及控制器所需的TCP3443接口.
完成上述配置之后, 将得到的planet
文件复制到/var/lib/zerotier-one/
下, 实现根服务器配置的修改, 注意此文件需要保留下来, 之后再客户端也需要进行配置文件的替换.
替换之后记得执行
systemctl restart zerotier-one.service
重启服务使配置文件生效.
完成上面的配置之后还需要搭建控制台, 功能和zerotier官网提供的类似. 安装过程跟着官方文档(Key Networks)的命令输就行, 这里应该没什么问题. 通过sudo systemctl restart ztncui
启动控制台服务之后就可以通过https://<ip address>:3443
访问控制台了(任意设备都可以, 输入网址即可), 初始界面如下.
再次强调, 必须将端口手动暴露才能够访问此界面(否则你的https请求是送不到根服务器的), 切记切记.
在此界面可以通过右上角的按钮登录控制台, 初始账户和密码分别为admin
和password
, 登进去之后会提示修改密码, 完成之后就能够进行网络管理了. 之后的过程没什么好说的, 创建网络之后客户端就能够Join进来构成虚拟局域网, 从而实现其中的异地设备交互.
配置参考网址:https://zhuanlan.zhihu.com/p/19335190230
网页端:https://key-networks.com/ztncui/#installation
服务端重启命令:
systemctl restart ztncui
systemctl restart zerotier-one.service
客户端linux:
1、下载安装
sudo curl -s https://install.zerotier.com | sudo bash
2、查看状态
sudo zerotier-cli info
成功状态:
200 info 1cc1d9db61 1.14.1 ONLINE
3、查看网络列表:
zerotier-cli listpeers
上传planet到/var/lib/zerotier-one目录下面。
4、重启服务
systemctl restart zerotier-one.service
zerotier-cli listpeers,查看网络节点并加入
5、加入网络节点:
zerotier-cli join xxx
bash sudo zerotier-cli join 363c67c55ab2181b
4、登陆服务端点击同意加入
https://blog.csdn.net/fedorayang/article/details/142904044
数据统计
相关导航


微信bot插件

MediaCrawlerPro

Browser Use

haystack

dify

Gewechat
