Loading...

文章背景图

ZeroTier:全球区域虚拟以太网部署与使用指南

2026-10-27
0
- 字
- 分钟
|

ZeroTier 是一个面向地球的可编程以太网交换机,让所有联网设备、VM、容器、应用如同在同一个物理数据中心或云区域里通信。它把加密的 P2P 网络(VL1)与以太网仿真层(VL2,类似 VXLAN)结合,端到端加密,大部分流量点对点。

一、项目官方信息

项目 信息
GitHub 仓库 https://github.com/zerotier/ZeroTierOne
官方网站 https://www.zerotier.com
官方文档 https://docs.zerotier.com
开源协议 BSL-1.1(内部/非商业免费,闭源商业需授权)
主要语言 C++(约 74.0%)
Star 数 约 17.0k

二、官方图片

ZeroTier 仓库预览:

ZeroTier

三、环境要求

  • Linux/macOS/Windows。
  • iOS/Android 移动端。
  • 开放 UDP 9993 入站(P2P 直连效果更好)。
  • 可访问 my.zerotier.com(默认云端控制器)。

四、完整部署步骤

1. 安装

macOS:

brew install --cask zerotier

Debian/Ubuntu:

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

Windows 到 https://www.zerotier.com/download/ 下载安装包。

2. 启动服务

Linux 安装脚本会自动启动并设置开机自启。手动:

sudo zerotier-one -d

3. 加入网络

sudo zerotier-cli join <Network ID>

Network ID 是 16 位网络号,例如 8056c2e21c000001。

4. 授权

登录 https://my.zerotier.com ,在网络 Members 里勾选新加入的节点 Authorized。

5. 查看状态

sudo zerotier-cli status
sudo zerotier-cli listnetworks

会得到该节点在 ZeroTier 网络里的 IP。

6. 验证

ping <另一台设备的 ZeroTier IP>
ssh root@<另一台设备的 ZeroTier IP>

五、使用方法

概念

  • ZeroTier 地址:10 位,标识节点/设备;
  • Network ID:16 位,标识虚拟以太网;
  • Controller:SDN 控制器,分配 IP、下发规则;
  • Moon:自建中继节点,改善 P2P 失败时的中转。

常用命令

zerotier-cli join <网络ID>      # 加入网络
zerotier-cli leave <网络ID>    # 离开网络
zerotier-cli listnetworks      # 列出加入的网络
zerotier-cli peers             # 列出对等节点
zerotier-cli info              # 本机地址与状态

自建 Controller

参考 controller/ 目录,可完全脱离 my.zerotier.com 自行管理网络。

Moon 节点

在 P2P 打洞失败时,自建 Moon 作为中继:

# 在有公网 IP 的机器上
zerotier-idtool initmoon identity.public > moon.json
zerotier-idtool genmoon moon.json
mkdir -p moons.d
cp *.moon moons.d/
sudo zerotier-one -d

其他节点把该 Moon 的 ID 加入 moons.d/。

配置文件

  • Linux:/var/lib/zerotier-one
  • macOS:/Library/Application Support/ZeroTier/One
  • Windows:C:\ProgramData\ZeroTier\One

六、常见问题 FAQ

1. 加入网络后 ping 不通? 到 my.zerotier.com 把节点 Authorized;检查 UDP 9993 是否放行。

2. P2P 连不上很慢? 对称 NAT 打洞失败,流量走官方中继。自建 Moon 改善。

3. 如何完全脱离云端控制器? 自建 Controller,参考 controller/ 目录。

4. 商业使用要付费吗? 内部/非商业免费;闭源商业 App 或 SaaS 需 BSL 商业授权。

5. OpenBSD 限制? 只有 4 个 tap 设备,最多 4 个网络成员。

6. 防火墙拦了 UDP? 会回退到 TCP 443 隧道,能通但很慢。

七、跳转链接

评论交流

文章目录