使用 Cloudflare WAN(前称 Magic WAN)将 Ubiquiti UniFi Gateway 连接到 Cloudflare 的网络。这些步骤使用 Cloud Gateway Max (UCG-Max),但适用于支持基于路由的 IPsec(互联网安全协议)VPN(虚拟专用网络)的其他 UniFi 网关,例如 Dream Machine 系列。
- 已启用 Cloudflare WAN 的 Cloudflare 账户(请联系您的账户团队)
- 支持 IPsec 的 UniFi Cloud Gateway 或 Dream Machine
- UniFi Network Application(自托管或云端)
- 来自您的 ISP 的静态公网 IP
- Cloudflare 和 UniFi 的管理员访问权限
- 从仪表板的 Leased IPs(租用的 IP) 部分获取 Magic Anycast IPv4 地址
- Go to Address space ↗
- 如果您未看到列出的任何 IP 地址,请联系您的账户团队。
- 参阅添加隧道以了解如何添加 IPsec 隧道。
- 选择 IPsec tunnel(IPsec 隧道) > Next(下一步),然后填写以下设置:
- Name(名称):
unifi-gw-primary - IPv4 Interface Address(IPv4 接口地址):
10.252.2.28/31或参阅隧道端点文档 - Customer Endpoint(客户端点):这应该是您的 UniFi Gateway 的 WAN IP(例如,
203.0.113.10) - Cloudflare Endpoint(Cloudflare 端点):这应该是从 Leased IPs(租用的 IP) 获取的 IPv4 地址之一。
- 在 Tunnel Health checks(隧道运行状况检查) 下,选择:
- Health check rate(健康检查频率):设置为所需的级别
- Health check type(运行状况检查类型):Request
- Health check direction(健康检查方向):Bidirectional
- Health check target(健康检查目标):Default
- 在 Pre-shared key(预共享密钥) 下:
- 选择 Add pre-shared key later(稍后添加预共享密钥)。该密钥将在 UniFi 站点到站点 VPN 配置期间提供。
- Name(名称):
- 在 UniFi Network 中,转到 Settings(设置) > VPN > Site-to-Site VPN(站点到站点 VPN)。
- 选择 Create New(新建)。
- 配置以下设置:
- VPN Type(VPN 类型):
IPsec。 - Name(名称):
Cloudflare-Magic-WAN。 - Pre-shared key(预共享密钥):复制此密钥。您在配置 IPsec 隧道时需要它。
- Local IP(本地 IP):选择 WAN 接口(例如,
WAN1)。 - Remote IP(远程 IP):输入步骤 1中的 Cloudflare 端点 IP。
- VPN Method(VPN 方法):Route Based。
- Tunnel IP(隧道 IP):
10.252.2.29/31或参阅隧道端点文档。 - Remote Networks(远程网络):Cloudflare 隧道内部地址(例如,
10.252.2.28/31)以及要通过 Cloudflare WAN 访问的其他远程子网。
- VPN Type(VPN 类型):
- 设置高级设置:
- Key Exchange Version(密钥交换版本):IKEv2。
- IKE Encryption:AES-256。
- IKE Hash:SHA256。
- IKE DH Group:14。
- IKE Lifetime:28800。
- ESP Encryption:AES-256。
- ESP Hash:SHA256。
- ESP DH Group:14。
- ESP Lifetime:28800。
- PFS:已启用。
- Local Authentication ID(本地身份验证 ID):Auto。
- Remote Authentication ID(远程身份验证 ID):取消勾选 Auto,并输入步骤 1中的 Cloudflare 端点 IP。
- MTU:1436。
- 选择 Apply(应用)
- 转到 Connectors(连接器) 页面。
- 在 IPsec/GRE tunnels(IPsec/GRE 隧道) 选项卡中,找到您刚刚创建的 IPsec 隧道。
- 选择您的隧道,然后选择 Edit(编辑)。
- 粘贴步骤 2中的预共享密钥。
- 选择 Save(保存)。
- 转到 Routes(路由) 页面。
- 选择 Create static route(创建静态路由)。
- 输入以下设置:
- Prefix(前缀):您的本地网络(例如,
192.168.1.0/24)。 - Tunnel/Next hop(隧道/下一跳):选择您的隧道。
- Priority(优先级):
100。
- Prefix(前缀):您的本地网络(例如,
- 选择 Add routes(添加路由) 以添加您的静态路由。
等待几分钟,然后访问 Cloudflare 和 UniFi 以验证隧道的状态:
Cloudflare
- 转到 Cloudflare WAN 的 Network Health(网络健康) 页面。
- 转到 Connector health(连接器运行状况) 选项卡。
- 找到您刚刚创建的隧道,并确保其状态显示为 Up。参阅在仪表板中检查隧道健康状况以了解更多信息。
UniFi
转到 Settings(设置) > VPN,并确保状态为 Connected(已连接)。
Tunnel down(隧道关闭):
- 验证两端的 Peer IP、预共享密钥和 IPsec 设置是否匹配
- 检查 ISP 是否未阻止 UDP 端口
500/4500
Traffic not routing(流量未路由):
- 验证 UniFi VPN 配置中的 Remote Subnets 设置
- 检查防火墙规则是否未阻止 VPN 流量
Health check fails(健康检查失败):
- 允许从 Cloudflare 到客户侧隧道 IP 的 ICMP
- 目标应该是
/31接口 IP,而不是您的 LAN 网关
仅通过 Cloudflare 路由特定设备 (UniFi Network Application):
- 从 VPN 配置中的 Remote Subnets 中删除不必要的路由。
- 转到 Settings(设置) > Policy Table(策略表)。
- 在 Policy Engine(策略引擎) 下,选择 Create New Policy(创建新策略) 并进行以下设置:
- 选择
Route。 - Name(名称):为策略提供名称。
- Type(类型):Policy-Based。
- Interface/VPN Tunnel(接口/VPN 隧道):选择 VPN 隧道(例如,
Cloudflare-Magic-WAN)。 - Kill Switch(终止开关):Enabled(推荐)。
- Source(源):选择
Device/Network,然后选择设备或网络。 - Destination(目标):Any。
- Interface(接口):您的 VPN 隧道。
- 选择
- 使用 Cloudflare Network Firewall 来制定网络策略。
- 配置第二个隧道以实现冗余。
- 在 Cloudflare WAN 仪表板中监控流量。
您现在正使用 Cloudflare WAN 通过 Cloudflare 的网络路由流量。