ZeroTier

2周前更新 63 0 0

内网穿透软件

收录时间:
2025-03-04
ZeroTierZeroTier

避坑点

1、 客户端配置后显示等待加入中,需要开通远程服务器访问端口。

2、 服务器安装好后, 无法打开配置网页,需要打开服务器端口。

服务端配置

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


安装完之后需要修改默认根服务器配置, 初始状态下zerotier会使用官方提供的4个根服务器(下面标记为PLANET的成员), 连接虚拟局域网内的成员由于需要中转延迟大概 600ms, 用ssh的感知比较明显, 输入和补全的卡顿感非常严重. 所以需要修改配置, 将根服务器指定为自己搭建的服务器.


zerotier-cli listpeers
ZeroTier

 

这里需要手动生成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请求是送不到根服务器的), 切记切记.

在此界面可以通过右上角的按钮登录控制台, 初始账户和密码分别为adminpassword, 登进去之后会提示修改密码, 完成之后就能够进行网络管理了. 之后的过程没什么好说的, 创建网络之后客户端就能够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

 

 

数据统计

相关导航