1514字

本文由 简悦 SimpRead 转码, 原文地址 www.jinjun.top

Zerotier 这个软件稳定使用半年以上了,但是存在一点小问题,晚上延迟会高点。在网上也搜索到不少的解决方案,搭建 moom 服务来中续,效果好一点。偶然在搜索的时候,发现可以自建一个 planet…

Zerotier 这个软件稳定使用半年以上了,但是存在一点小问题,晚上延迟会高点。在网上也搜索到不少的解决方案,搭建 moom 服务来中续,效果好一点。偶然在搜索的时候,发现可以自建一个 planet 核心节点,就尝试一下安装。

服务概念

  • Planet:就类似官方的行星服务器,用来管理 zerotier 客户端的地址信息,帮助建立客户端之间的链接,以及无法建立直接的链接的时候,可以作为中续服务器来转发客户端之间的流量。
  • moom:作为中续服务器存在,官方节点的都在海外,建立国内节点做为中续,可以使转发的效率更高,延迟也低。

服务器选择

这里我选择了一个吃灰的服务器,腾讯的 4H4G8M 活动机。国内主流的云服务提供商:腾讯云、华为云、阿里云等等,当然配置不要太高,转发速度主要看带宽,单核、128m、5G 硬盘、1M 带宽,我测试可以运行,满足这个基本配置以上都可以跑起来了。这里我选择 Debian 11.1 的系统。

安装 Planet

升级系统软件包

__复制

apt-get upgrade
apt-get dist-upgrade

安装 Zerotier 和 Ztncui

作者文档:一键搭建 zerotier planet 服务器脚本_独步 - 的博客
一键脚本仓库地址:opopop880/zerotier_planet

  • 适合于 Debian 和 Ubuntu 安装

需要 root 权限执行

__复制

wget https://gitee.com/opopop880/zerotier_planet/raw/master/zerotier_planet_debain.sh && chmod +x zerotier_planet_debain.sh && ./zerotier_planet_debain.sh
  • 适用 redhat centos 安装

__复制

wget https://gitee.com/opopop880/zerotier_planet/raw/master/zertotier_planet.sh && chmod +x zertotier_planet.sh && ./zertotier_planet.sh

Debian 和 Ubuntu、如果 zerotier 编译过程中提示nlohmann/json.hpp找不到的问题,需要安装 nlohmann-json-dev 软件包

__复制

wget http://kr.archive.ubuntu.com/ubuntu/pool/universe/n/nlohmann-json/nlohmann-json-dev_2.1.1-1.1_all.deb && dpkg -i nlohmann-json-dev_2.1.1-1.1_all.deb
查看监听端口

出现 zerotier-one 和 ztncui 相对应的进程和端口

查看管理页面

执行完成后,打开 ip:3000 或者 https://ip:3443,用户名admin 密码password

能打开页面表示服务器安装成功,安装完成会在执行目录,生成planet文件,找到这个文件并下载下来。

云服务器放行规则

  • TCP:3000、3443、9993
  • UDP:9993
  • 3000 端口是控制台的 http
  • 3443 端口是控制台的 https
  • 9993 端口是 planet 的根服务器之间通讯

创建网络

配置网络

控制台找到 - 网络 - 简易安装 - 生成网络地址 - 提交保存

配置 ipv4 和 ipv6 分配模式

配置 zerotier 客户端

Linux 端

官方安装方式

__复制

netstat -tunlp

/var/lib/zerotier-one/ 找到刚刚下载的 planet,上传替换

重启 zerotier

__复制

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

加入网络,在控制台找到 网络ID 复制下来

__复制

systemctl restart zerotier-one.service

加入网络后,需要在控制台点授权和分配 IP 才能正常使用

运行zerotier-cli listpeers 检查是否加入根服务器

这里的 IP 都是自己的设备,已经完成组网的设备,如果出现海外 IP,可能是文件替换了没有重启、要排除海外 IP 组网。

Winows 端

下载地址:Download – ZeroTier

点自动安装后,默认会在任务栏启动,需要在右下角找到 zerotierUI 点击 Quit 退出

  • 停止 Zerotier 任务

  • 替换 planet 文件

打开C:\ProgramData\ZeroTier\One,用刚刚下载的 planet 替换掉本地的 planet

  • 重启 Zerotier 服务

在任务管理器点击重新启动 Zerotier 服务,等已停止变成正在运行

  • 连接私有网络

在控制台找到你想加入网络的 网络ID,复制下来

打开 ZerotierUI,在任务栏找到 右键 - join New Network

在服务端界面,给本地客户端授权

在客户端查看状态 OK 表示连接成功。

安卓端

安卓端的开源地址:https://github.com/kaaass/ZerotierFix

找到刚才下载的 planet 的文件,然后通过软件加载下载的 planet 文件即可。

然后添加网络 ID,然后去控制台授权当前设备就可以愉快玩耍了。

Linux 图形化桌面端

Linux 端的开源地址:https://github.com/tralph3/ZeroTier-GUI

下载源码后进行解压,然后执行编译安装

测试网络

延迟测试

  • 使用 ping 测试
  • 客户端距离 (客户端位于深圳到广西),延迟还是很低的