>_ DevTrendszh

语言

首页

语言

板块

前端 后端 移动端 DevOps AI / ML 游戏开发 区块链 嵌入式 安全
C-plus-plus

ZeroTier — 你的全球化网络交换机

想象一下,你所有的设备——云服务器、家里的笔记本电脑、咖啡馆里的手机——都在同一个局域网中。无需复杂的 VPN 配置,也不用为端口转发烦恼。这正是 ZeroTier 提供的——一个在 GitHub 上拥有 15.7k 星的项目。

为什么开发者钟爱 ZeroTier?

从事分布式系统工作时,我经常面临这个问题:如何安全地连接分散在不同位置的服务?传统 VPN 通常过于繁琐。ZeroTier 优雅而简单地解决了这个问题。

它是如何工作的?

ZeroTier 创建了一个行星级规模的虚拟以太网交换机。所有连接的设备都会获得:

  • 自动点对点连接(尽可能时)
  • 端到端流量加密
  • 统一地址空间中的本地 IP 地址
  • 细粒度的访问控制规则配置

从技术上讲,这是通过以下方式实现的:

  1. VL1 — 具有加密节点识别的 P2P 网络
  2. VL2 — 具有 SDN 功能的虚拟以太网层

现在尝试 ZeroTier 的 5 个理由

  1. 简单设置 — 安装客户端并输入网络 ID 即可
  2. 跨平台 — Windows、macOS、Linux、iOS、Android,甚至嵌入式系统
  3. 安全性 — E2E 加密和网络级访问控制
  4. 灵活性 — 使用云控制器或自行部署
  5. 性能 — 流量尽可能在节点间直接传输
# Пример подключения к сети после установки клиента
sudo zerotier-cli join 8056c2e21c000001

实际应用场景

以下是一些来自我实践中的场景:

  • 微服务开发 — 所有组件就像在同一个局域网中一样互相可见
  • 远程办公 — 无需公司 VPN 即可安全访问办公资源
  • 游戏服务器 — 易于设置并连接到朋友的服务器
  • 物联网项目 — 将不同位置的设备作为同一个网络进行管理

技术细节

  • 使用 C++ 编写,辅以 Rust(用于 OIDC)
  • 支持 Prometheus 指标用于监控
  • 内置 HTTP 服务器用于托管 SPA 应用
  • 即使在对称 NAT 后面也能工作(有一定限制)
# Пример конфигурации Prometheus для мониторинга ZeroTier - job_name: zerotier-one metrics_path: /metrics static_configs: - targets: ['localhost:9993']

值得一试吗?

如果你:

  • 开发分布式系统
  • 管理跨多个位置的基础设施
  • 想要简化家庭或办公室网络的访问
  • 正在寻找传统 VPN 的替代方案

……那么 ZeroTier 绝对值得你关注。一个开源项目(BSL 1.1),拥有活跃的社区和长达 10 年的历史。

入门链接:

P.S. 第一次设置 ZeroTier 时,我惊讶于它比我想象的简单得多。你试过了吗?

相关项目