本教程介绍如何在 Cloudflare WAN(原 Magic WAN)与 Google Cloud Platform (GCP) Cloud VPN 之间配置 IPsec VPN。
您需要在 GCP 账户中创建一个 GCP VPN 网关。该网关用于在您的 GCP 虚拟私有云 (VPC) 与 Cloudflare WAN 之间路由流量。有关创建 Cloud VPN 网关的更多信息,请参阅 GCP 文档 ↗。
需要使用经典 VPN 网关以支持静态路由。此外,还需要手动配置路由表,以使 VPN 与 Cloudflare WAN 之间的路由正常工作。有关 GCP VPC 路由的更多信息,请参阅 GCP 路由选项 ↗。
- 前往 Network Connectivity(网络连接) > VPN。
- 选择 Cloud VPN Gateways(云 VPN 网关) 选项卡 > Create VPN Gateway(创建 VPN 网关)。
- 为网关起一个描述性名称。
- 选择您希望通过此 Cloud VPN 网关连接的网络 (VPC)。
- 选择此 Cloud VPN 网关所在的区域。
- 选择 IPv4 作为将通过此网关传输的 IP 流量类型。
- 前往 Network Connectivity(网络连接) > VPN。
- 选择 Cloud VPN Tunnels(云 VPN 隧道) 选项卡 > Create VPN Tunnel(创建 VPN 隧道)。
- 选择您已创建的 VPN 网关 > Continue(继续)。
- 为隧道起一个描述性名称。
- 在 Remote Peer IP Address(远程对等 IP 地址) 中,填写分配给您账户的 Cloudflare anycast IP 地址之一,可在 Leased IPs ↗ 中查看。
- 在 IKE version(IKE 版本) 中,选择 IKEv2。
- 您可以生成 IKE 预共享密钥,也可以使用自己已有的密钥。如果在此步骤中生成密钥,请妥善保存,后续配置 Cloudflare WAN 和 GCP 时还需要用到。
- 选择 Route-based(基于路由) 作为路由选项。
- 在 Remote network IP range(远程网络 IP 范围) 中,定义您要通过 Cloudflare WAN 暴露给 GCP 的网络。
- 重复步骤 2-9,使用您的第二个 Cloudflare anycast IP 创建第二条 VPN 隧道。
静态路由是在您的 VPN 与 Cloudflare WAN 之间路由流量所必需的。按照以下步骤为您的 VPC 创建静态路由。有关 VPN 路由的更多信息,请参阅 VPN 路由文档 ↗。
- 前往 VPC network(VPC 网络) > Routes(路由)。
- 选择 Route Management(路由管理)。
- 创建路由。
- 选择您要用于该路由的 VPC 网络。
- 在 Route type(路由类型) 中选择 Static Routing(静态路由)。
- 在 IP Version(IP 版本) 中选择 IPv4。
- 在 Destination IPv4 Range(目标 IPv4 范围) 中配置您希望暴露给 VPN 的网络。
- 为您的静态路由选择优先级。
- (可选)您可以将该路由关联到特定实例标签,这样只有受影响的实例才会使用该路由。
- 在 Next hop(下一跳) 中,选择之前创建的 VPN 隧道。
- 选择 Create(创建)。
按照上述说明配置 Cloud VPN 网关 VPN 和隧道后,前往 Cloudflare 仪表板,在 Cloudflare WAN 侧创建对应的 IPsec 隧道和静态路由。
- 参阅 添加隧道了解如何添加 IPsec 隧道。创建 IPsec 隧道时,请确保定义以下设置:
- Tunnel name(隧道名称):
tunnel01 - Interface address(接口地址):IPsec 隧道内部
/30无类别域间路由 (CIDR) 块。例如,169.254.244.2。 - Customer endpoint(客户端点):GCP VPN 隧道外部 IP 地址。例如,
35.xx.xx.xx。 - Cloudflare endpoint(Cloudflare 端点):填写您的两个 anycast IP 中的第一个。
- Pre-shared key(预共享密钥):选择 Use my own pre-shared key(使用我自己的预共享密钥),并输入您为 GCP VPN 隧道创建的预共享密钥 (PSK)。
- Health check type(运行状况检查类型):选择 Reply(回复)
- Health check destination(运行状况检查目标):选择 custom(自定义) 并设置与隧道接口地址对应的 IP
- Health check direction(健康检查方向):选择 Bidirectional(双向)
- Replay protection(重放保护):选择 Enabled(已启用)。
- Tunnel name(隧道名称):
- 选择 Save(保存)。
- 对
tunnel02重复以上步骤。选择相同的前缀,但在 Tunnel/Next hop(隧道/下一跳) 中选择第二条 IPsec 隧道。
在 Cloudflare WAN 中创建一条静态路由,指向您在 GCP 虚拟私有云内创建的相应虚拟机 (VM) 子网。例如,如果您的虚拟机子网为 192.168.192.0/26,则应将其用作静态路由的前缀。
创建静态路由:
- 参阅 创建静态路由了解如何创建路由。
- 在 Prefix(前缀) 中,输入虚拟机的子网。例如,
192.168.192.0/26。 - 在 Tunnel/Next hop(隧道/下一跳) 中,选择上一步创建的 IPsec 隧道。
- 对您创建的第二条 IPsec 隧道重复以上步骤。