有多种方式将流量从私有网络入组到 Cloudflare。本页面涵盖了通常用于替代 VPN 的两种基于软件的方法:Cloudflare Mesh 和 Cloudflare Tunnel。两者都涉及在网络中的主机上安装轻量级软件,以建立到 Cloudflare 全球网络的安全连接。
Cloudflare Mesh(原 WARP Connector)在 Linux 服务器上无界面模式运行 Cloudflare One Client (warp-cli)。它作为第 3 层代理工作,支持双向流量(TCP、UDP、ICMP),并为每个参与者分配一个私有 Mesh IP。在以下情况下使用 Mesh:
- 用户到网络的访问(替代 VPN)
- 网络到网络 / 站点到站点的连通性
- 服务器发起的连接(VoIP、SIP、AD 更新、SCCM、DevOps)
- 已注册设备之间的客户端到客户端连通性
Cloudflare Tunnel 在主机上运行 cloudflared 守护进程。它创建仅出站的连接,并将流量从 Cloudflare 代理到内部应用程序或网络。在以下情况下使用 Tunnel:
- 按主机名发布特定应用程序
- 仅出站的连通性(不打开任何入站端口)
- 将 HTTP/S、TCP 或 SSH 流量代理到特定服务
- 在非 Linux 平台上运行(macOS、Windows)
| Cloudflare Mesh | Cloudflare Tunnel | |
|---|---|---|
| 双向流量 | ✅ | ❌ |
| 高可用性 | ✅ (主备/active-passive) | ✅ (双活副本/active-active replicas) |
| 请求源 IP | 请求设备的虚拟 IP | cloudflared 主机 |
| 主机系统 | Linux (amd64, arm64) | Linux, macOS, Windows |
| IPv4 | ✅ | ✅ |
| IPv6 | ✅ | ✅ |
| OSI 层 | L3 | L7 |
| 协议 | MASQUE | QUIC 或 HTTP/2 |
| 代理协议 | TCP, UDP, ICMP | HTTP/S, TCP, SSH, RDP, SMB |
| 连接处理 | 端到端——在整个路径上保留长连接 TCP 连接 | 代理——TCP 连接在 Cloudflare 处终止并重新建立,当 cloudflared 重新连接时可能会中断长连接会话(例如,SAP 事务、数据库复制流或持久 RDP 会话可能掉线) |
对于大多数替代 VPN 的场景,Cloudflare Tunnel 是最容易入门的方式。它在所有平台(Linux、macOS、Windows、容器、树莓派)上运行,不需要配置返回路由(流量源地址 NAT 到 cloudflared 主机),并且不会干扰同一台机器上的现有 VPN 软件。
当你需要服务器发起流量的双向连通性(VoIP、SIP、AD 更新、SCCM)、多个位置之间的站点到站点网络连接、保留原始源 IP 很重要的部署或对中断敏感的长期 TCP 连接工作负载(SAP、数据库复制、ERP 系统)时,请使用 Cloudflare Mesh。
这两种方法可以配合使用。例如,使用 Tunnel 进行直观的用户到应用访问,并在需要双向或站点到站点连通的地方添加 Mesh 节点。