在 BWH 上搭建私有 ZeroTier Planet + Windows 使用教程
更多语言
更多操作
ZeroTier简介
ZeroTier 是一种基于 P2P(点对点)技术的虚拟局域网(Virtual LAN)工具。
它的核心能力是:
把互联网上不同位置的设备,连接成“像在同一个局域网里一样”
举个最直观的例子
你有:
- 家里的 NAS(在内网)
- 公司电脑(在另一个网络)
- 手机(4G/5G 网络)
正常情况下:
- 无法直接访问(NAT、内网隔离)
- 需要端口转发 / 公网 IP / VPN
但使用 ZeroTier:
所有设备会获得一个虚拟 IP(类似 192.168.x.x)
然后:
- 可以直接 ping
- 可以直接 SSH / 远程桌面
- 可以访问 NAS、服务、数据库
就像它们在同一个交换机下面一样
ZeroTier 的核心工作原理
ZeroTier 并不是传统 VPN,它更像是:
一个“智能组网系统”
它主要由三类节点组成:
PLANET(行星服务器)
官方或自建的“根节点”
作用:
- 设备注册
- 网络发现
- 初始连接协调
MOON(卫星节点)
用户可自建的“加速节点”
作用:
- 就近连接
- 降低延迟
- 提升稳定性
LEAF(终端设备)
你的设备:
- 电脑
- 手机
- 服务器
- 路由器
连接过程
ZeroTier 连接流程:
设备A ──→ PLANET(协调)
设备B ──→ PLANET(协调)
→ 尝试 NAT 穿透
→ 成功后:A ↔ B 直连(P2P)
为什么自建Planet
ZeroTier官方免费提供根服务器,但由于多人共用,延迟高,不稳定,完全不可控。
自建后,延迟更低(建议使用BWH三网优化)、更稳定、更安全(不依赖官方)
在BWH上部署 ZeroTier Planet
前提条件: 公网IP (BWH已提供) 操作系统(建议Ubuntu 20.04+)
安装Docker环境
执行以下命令进行安装并启动服务:
apt update && apt install -y git
curl -fsSL https://get.docker.com | bash
service docker start
下载项目并部署
执行以下命令进行下载和部署
git clone https://github.com/xubiaolin/docker-zerotier-planet.git
cd docker-zerotier-planet
chmod +x deploy.sh
./deploy.sh
大约1~3分钟安装完成
获取关键文件(重要)
部署完成后,在 ./data/zerotier/dist/ 路径下会生成 moon和planet配置
必须下载,后面在Win和MAC上会使用到。
配置ZeroTier
进入管理后台进行网络配置
浏览器访问: http://你的BWH_IP:3443

其默认的用户名为:admin 密码:password
登录后建议修改。
登录后,选择 Add network进行创建新网络
随意输入一个网络名,并创建
点击Easy setup进行一个快速配置
点击 Generate network address随机生成内网网段,此处也可自行填写。
确认后,点击Submit即可保存。
创建完成后,在Networks可以列出刚才创建的网络
记录下NetworkID
客户端使用
官网下载:
https://www.zerotier.com/download/
Windows
安装完成后,
将前文中下载的planet文件替换到 C:\ProgramData\ZeroTier\One\ 目录中,如图
使用 Win + R打开运行窗口,输入 services.msc
找到 ZeroTier One服务,并重启该服务
使用管理员身份打开PowerShell
zerotier-cli.bat join 网络id
网络id为管理后台记录的那个
此时还不能用,需要再次进入到管理后台进行一个授权
在授权通过后,会自动给其分配内网IP
在Linux和MAC上使用也类似上述流程,先替换掉planet文件,重启终端上的zerotier服务,再使用命令将本机加入到 网络id 中
Linux:
cd /var/lib/zerotier-one
mv planet planet.bak
cp ~/Download/planet ./planet
service zerotier-one restart
zerotier-cli join 网络id
MAC:
cd "/Library/Application\ Support/ZeroTier/One/"
mv planet planet.bak
cp ~/Download/planet ./planet
sudo kill $(cat /Library/Application\ Support/ZeroTier/One/zerotier-one.pid)
zerotier-cli join 网络ID
之后都需要在管理后台授权一下,取得一下IP就可以了。
这样多台设备就可以通过BWH的服务器,进行内网通信了