如今,国内运营商分配公网 IPv4 的门槛越来越高,即使你有 IPv6,在公司内网或者外面某些蜂窝网络环境下,也可能面临无法直接访问家中设备的问题。
为了实现随时随地无缝接入家中的内网(如访问 NAS 里的文件,重启远程服务器),搭建一个虚拟局域网(Mesh VPN / SD-WAN)已经成了折腾 Homelab 的必修课。
今天在市场上有三个极其主流的玩家:原生 WireGuard、ZeroTier 以及如日中天的 Tailscale。到底它们各有什么特色?我们该选哪一个?
1. 原生 WireGuard (WG)
WireGuard 并不是一个具体的服务商,而是一个被内置于 Linux 内核(自 5.6 版本起)的现代 VPN 协议。相比于臃肿且老旧的 OpenVPN 或 IPSec,它极简、极快、安全性极高。
- 工作方式:它就像公钥密码学(SSH),每个节点生成一对公私钥,互相配置对方的公钥和 Endpoint(端点)。
- 优点:
- 极致性能:在内核态运行,几乎可以说是目前最快的加密 VPN 协议。
- 省电:手机端挂在后台耗电很低。
- 无中心化瓶颈:不依赖任何第三方服务商的服务器,数据完全是直连。
- 缺点:
- 配置极其折腾:需要你手动管理所有节点的公钥和 IP 地址。如果你的节点多,比如手机、平板、笔电、NAS 和 VPS,它们互相建立连接的路由表能把人看晕。
- NAT 穿透差:如果通信双方都在大内网里,原生 WG 几乎没有打洞能力,你必须有一台带有公网 IP 的 VPS 作为中转(Endpoint)。
2. ZeroTier (ZT)
这是老牌的 SD-WAN 选手,它创造了一个虚拟的全局交换机,把全世界各地的设备接入同一个大局域网。
- 工作方式:你只需要在云端面板创建一个 Network ID。在任何设备上安装客户端并输入这个 ID,审批通过后,设备就像插上了同一台交换机一样。
- 优点:
- 真正的二层网络支持:ZeroTier 可以处理二层网络广播包(比如 mDNS,游戏局域网联机等),在这一点上它比基于三层路由的方案更强。
- 极简接入:仅需一个 ID,打洞能力不错。
- 缺点:
- 国内网络环境堪忧:ZeroTier 的 Planet(根服务器)都在海外,国内很多运营商对其 UDP 流量要么丢包严重,要么阻断。
- 移动端体验一般:经常出现 App 断联或者在后台被休眠的问题。
- 需要自建 Moon/Planet:为了解决国内打洞慢的问题,你往往需要去购买国内云服务器自建 Moon 节点,这违背了“即插即用”的初衷。
3. Tailscale (当前版本答案)
毫无疑问,Tailscale 是目前最受欢迎的工具组合——它底层使用了 WireGuard 协议 的强悍性能,同时在外层包装了一套极其优雅的控制平面和打洞算法。
- 工作方式:用微软、Google 或 GitHub 账号一键登录,不需要配置任何 IP 和公钥,Tailscale 控制平面会自动协商并把秘钥分发给所有设备。
- 核心优势:
- 无敌的打洞技术(DERP 与 STUN):它能穿透各种复杂 NAT(包括臭名昭著的对称 NAT),成功率极高。
- 魔术 DNS (MagicDNS):连 IP 都不用记,直接用机器名访问彼此,例如你在浏览器输入
http://nas/就能直接打开 NAS 面板。 - Exit Node (出口节点):一键将家里的路由设置为出口节点,在星巴克连公共 Wi-Fi 时,把所有流量全盘加密传回家再上网。
- Subnet Router (子网路由):你不必在家的每一个智能家庭设备上装客户端,只需在一个 Linux 节点(比如软路由)上开启子网路由,就能从外网访问家中没有装 Tailscale 的普通设备。
- 缺点:
- 在某些极端严格的公司防火墙下也会被阻断(但可以用自定义的 DERP 服务器解决)。
- 闭源的控制平面(但你可以选择开源的替代方案 Headscale)。
总结建议
- 如果你有海外高速公网服务器作为跳板机,希望通过它配置科学上网网关,并且有足够的技术能力,用 原生 WireGuard 最纯粹。
- 如果你需要异地局域网联机打游戏(比如星际争霸、红警等需要二层广播域的游戏),用 ZeroTier。
- 其他所有场景的个人开发者和 Homelab 玩家,闭上眼睛选择 Tailscale。 它是现阶段在多端体验、穿透成功率和易用性上最完美的解药。