Cloud VPN 概览

本页面介绍了与 Google Cloud VPN 相关的概念。

Cloud VPN 通过 IPsec VPN 连接,将您的对等网络安全地连接到 Virtual Private Cloud (VPC) 网络。两个网络之间传输的流量由一个 VPN 网关加密,再由另一个 VPN 网关解密。此举可以保护您的数据在互联网上传输时的安全。您还可以将两个 Cloud VPN 实例相互连接。

如需了解 Cloud VPN 文档中使用的术语定义,请参阅关键术语

选择混合网络解决方案

如需确定是使用 Cloud VPN、专用互连、合作伙伴互连还是 Cloud Router 来与 Google Cloud 进行混合网络连接,请参阅选择网络连接产品

Cloud VPN 的类型

Google Cloud 提供了两种类型的 Cloud VPN 网关:高可用性 VPN 和传统 VPN。

如需了解如何转为高可用性 VPN,请参阅从传统 VPN 转为高可用性 VPN

高可用性 VPN

高可用性 VPN 是一种高可用性 (HA) Cloud VPN 解决方案,可让您在单个地区中通过 IPsec VPN 连接将您的本地网络安全地连接到 Virtual Private Cloud (VPC) 网络。高可用性 VPN 提供服务可用性达 99.99% 的服务等级协议 (SLA)。

创建高可用性 VPN 网关时,Google Cloud 会自动选择两个外部 IP 地址,两个固定数量的接口各对应一个地址。每个 IP 地址都是从唯一地址池中自动选取的,以支持高可用性。每个高可用性 VPN 网关接口都支持多个隧道。您也可以创建多个高可用性 VPN 网关。删除高可用性 VPN 网关时,Google Cloud 会释放 IP 地址以供重复使用。您可以将高可用性 VPN 网关配置为只有一个活动接口和一个公共 IP 地址;但是,此配置不会提供服务可用性达到 99.99% 的 SLA。

在 API 文档和 gcloud 命令中,高可用性 VPN 网关称为 VPN 网关,而不是目标 VPN 网关。您无需为高可用性 VPN 网关创建任何转发规则。

高可用性 VPN 使用 Google Cloud 中的外部 VPN 网关资源向 Google Cloud 提供有关您的一个或多个对等 VPN 网关的信息。

高可用性 VPN 要求

Cloud VPN 配置必须满足以下要求,才能让高可用性 VPN 达到 99.99% 的服务级可用性:

  • 当您将高可用性 VPN 网关连接到对等网关后,只能在连接的 Google Cloud 端保证 99.99% 的可用性。端到端可用性取决于对等 VPN 网关的正确配置。

  • 如果双方均为 Google Cloud 网关且已正确配置,则可保证端到端 99.99% 的可用性。

  • 当两个 VPN 网关都位于 VPC 网络中时,如需实现高可用性,您必须使用两个高可用性 VPN 网关,且这两个网关必须位于同一地区。

    虽然两个网关必须位于同一地区,但如果您的 VPC 网络使用了全球动态路由模式,则它们彼此共享的子网的路由可位于任何地区。如果您的 VPC 网络使用地区动态路由模式,则只有同一地区中的子网的路由才能与对等网络共享,且已知路由仅应用于 VPN 隧道所在地区中的子网

    如需详细了解 VPC 网络的动态路由模式,请参阅 VPC 网络概览

  • 当 Google Cloud IP 地址在外部 VPN 网关资源中配置时,高可用性 VPN 将拒绝这些地址。例如,使用虚拟机实例的外部 IP 地址作为外部 VPN 网关资源的外部 IP 地址。唯一受支持的高可用性 VPN Google Cloud 到 Google Cloud 拓扑出现在两端都使用高可用性 VPN 的情况下,如创建 Google Cloud 到 Google Cloud 的高可用性 VPN 网关中所述。

  • 您必须根据 Cloud VPN 网关来配置两个 VPN 隧道:

    • 如果您有两个对等 VPN 网关设备,则来自 Cloud VPN 网关上每个接口的每个隧道都必须连接到自己的对等网关
    • 如果您有一个包含两个接口的对等 VPN 网关设备,则来自 Cloud VPN 网关上每个接口的每个隧道都必须连接到对等网关上相应隧道自己的接口
    • 如果您有一个包含单个接口的对等 VPN 网关设备,则来自 Cloud VPN 网关上每个接口的两个隧道都必须连接到对等网关上的相同接口
  • 对等 VPN 设备必须配置有足够的冗余。足够冗余的配置的详细信息由设备供应商指定,可能包含也可能不包含多个硬件实例。如需了解详情,请参阅对等 VPN 设备的供应商文档。

    如果需要两个对等设备,则每个对等设备都必须连接到不同高可用性 VPN 网关接口。如果对等方是 AWS 等其他云提供商,则 VPN 连接还必须在 AWS 端配置有足够的冗余。

  • 您的对等 VPN 网关设备必须支持动态 (BGP) 路由。

下图演示了高可用性 VPN 概念,其中显示了一个拓扑,该拓扑包含连接到两个对等 VPN 网关的高可用性 VPN 网关的两个接口。如需详细了解高可用性 VPN 拓扑(配置场景),请参阅 Cloud VPN 拓扑

连接到两个对等 VPN 网关的高可用性 VPN 网关(点击可放大)
连接到两个对等 VPN 网关的高可用性 VPN 网关(点击可放大)

传统 VPN

相比之下,传统 VPN 网关具有单个接口、单个外部 IP 地址,并支持使用动态 (BGP) 或静态路由(基于路由或基于政策)的隧道。它们提供服务可用性达 99.9% 的服务等级协议 (SLA)。

对于受支持的传统 VPN 拓扑,请参阅“传统 VPN 拓扑”页面

在 API 文档和 gcloud 命令中,传统 VPN 被称为目标 VPN 网关

对照表

下表比较了高可用性 VPN 与传统 VPN 的特性。

特性 高可用性 VPN 传统 VPN
服务等级协议 (SLA) 在配置了两个接口和两个外部 IP 时,可提供 99.99% 的 SLA 提供了 99.9% 的 SLA
创建外部 IP 和转发规则 通过池创建的外部 IP。无需转发规则 必须创建外部 IP 和转发规则
支持路由选项 仅限动态路由 (BGP) 静态路由(基于政策、基于路由)或使用 BGP 的动态路由
从一个 Cloud VPN 网关到相同对等网关的两条隧道 支持 不支持
API 资源 称为“vpn 网关”资源 称为“目标 vpn 网关”资源

规范

Cloud VPN 具有以下规范:

  • Cloud VPN 仅支持站点到站点的 IPsec VPN 连接,具体取决于本部分中列出的要求。它不支持客户端到网关 (Road Warrior) 方案。换句话说,Cloud VPN 不支持客户端计算机需要使用客户端 VPN 软件“拨号加入”VPN 的使用场景。

    Cloud VPN 仅支持 IPsec,不支持其他 VPN 技术(例如 SSL VPN)。

  • Cloud VPN 可与 VPC 网络和旧式网络搭配使用。对于 VPC,建议您使用自定义模式,该模式可让您完全控制网络中子网所用的 IP 地址范围。如需了解详情,请参阅一般的 VPC 网络旧式网络自定义模式网络的相关文档。

    • 传统 VPN 和高可用性 VPN 网关使用外部(可通过互联网路由)IPv4 地址。这些地址仅允许 ESP、UDP 500 和 UDP 4500 流量。如此既可实现为传统 VPN 手动配置 Cloud VPN 地址,也可实现为高可用性 VPN 自动分配地址。

    • 如果本地子网的 IP 地址范围与 VPC 网络中子网所使用的 IP 地址重叠,请参阅路由顺序确定路由冲突的解决方式。

  • 本地主机可结合使用 Cloud VPN 与专用 Google 访问通道。如需了解详情,请参阅专用 Google 访问通道选项

  • 每个 Cloud VPN 网关都必须连接到另一个 Cloud VPN 网关或对等 VPN 网关。

  • 对等 VPN 网关必须具有静态外部(可通过互联网路由)IPv4 地址。您需要知道其 IP 地址才可以配置 Cloud VPN。

    • 如果您的对等 VPN 网关受防火墙保护,则必须配置防火墙,使 ESP (IPsec) 协议和 IKE(UDP 500 和 UDP 4500)流量可以传送至该网关。如果防火墙提供网络地址转换 (NAT),有关信息请参阅 UDP 封装和 NAT-T
  • Cloud VPN 要求将对等 VPN 网关配置为支持预分段。数据包必须先分段,然后再封装。

  • Cloud VPN 使用窗口大小为 4096 个数据包的重放检测。您无法关闭此检测。

网络带宽

对于入站流量和出站流量,每个 Cloud VPN 隧道最多可支持 3 Gbps。

与此限制相关的指标是 Sent bytesReceived bytesCloud VPN 的监控指标中介绍了这些指标。请注意,指标的单位是字节数,而 3 Gbps 上限是指每秒位数。转换为字节时,上限为 375 MB/秒 (MBps)。根据上限衡量用量时,请使用 Sent bytesReceived bytes 的总和,与转换后的上限 375 MBps 相比较。

影响带宽的因素

实际带宽取决于以下几个因素:

  • Cloud VPN 网关与对等网关之间的网络连接:
    • 两个网关之间的网络带宽。相较于通过公共互联网发送 VPN 流量,与 Google 建立直接对等互连关系的吞吐量更高。
    • 往返时间 (RTT) 和丟包率。RTT 和/或丟包率过高会大大降低 TCP 的性能。
  • 对等 VPN 网关的功能。如需了解详情,请参阅设备随附的文档。
  • 数据包大小。Cloud VPN 使用的最大传输单元 (MTU) 为 1460 个字节。因此必须配置对等 VPN 网关,将其使用的 MTU 限制为 1460 个字节以内。由于是按数据包进行处理,在数据包速率一定的情况下,如果存在大量较小数据包可能会降低整体吞吐量。考虑到 ESP 开销,您可能还需要为通过 VPN 隧道发送流量的系统设置一个小于隧道 MTU 值的 MTU 值。如需详细了解相关讨论和建议,请参阅 MTU 注意事项
  • 数据包速率。对于入站流量和出站流量,建议每个 Cloud VPN 隧道的最大数据包速率为每秒 250000 个数据包 (pps)。如果您需要以更高的速率发送数据包,则必须创建更多的 VPN 隧道。

在测量 VPN 隧道的 TCP 带宽时,您应当测量多个同时进行的 TCP 流。如果您使用的是 iperf 工具,请使用 -P 参数指定同时进行的流数量。

IPsec 和 IKE 支持

请注意,Cloud VPN 不会对传入的身份验证数据包执行与政策相关的过滤。传出数据包根据在 Cloud VPN 网关上配置的 IP 范围进行过滤。

  • Cloud VPN 仅支持预共享密钥(共享密钥)用于身份验证。您必须在创建 Cloud VPN 隧道时指定共享密钥。在对等网关上创建隧道时必须指定相同的密钥。请参阅用于创建强共享密钥的相关准则

  • 如需了解 Cloud VPN 支持的加密方式和配置参数,请参阅支持的 IKE 加密方式

UDP 封装和 NAT-T

如需了解如何配置对等设备以支持 NAT-T 与 Cloud VPN 结合使用,请参阅高级概览中的 UDP 和 NAT-T 部分

Cloud VPN 作为中转网络

请先仔细阅读 Google Cloud 服务专用条款,然后再使用 Cloud VPN。

请勿仅以通过 VPC 网络(作为中转网络)传输流量为目的使用 Cloud VPN 隧道连接两个或多个本地网络。像这样的中心辐射型配置违反了 Google Cloud 服务专用条款。

高可用性 VPN 的主动/主动和主动/被动路由选项

如果 Cloud VPN 隧道关闭,它会自动重启。如果整个虚拟 VPN 设备发生故障,Cloud VPN 会自动使用相同的配置实例化一个新的虚拟 VPN 设备。新网关和隧道会自动连接。

连接到高可用性 VPN 网关的 VPN 隧道必须使用动态 (BGP) 路由。您可以创建主动/主动或主动/被动路由配置,具体取决于您为高可用性 VPN 隧道配置路由优先级的方式。对于这两种路由配置,两个 VPN 隧道都会保持活跃状态。

下表比较了主动/主动或主动/被动路由配置的特性。

特性 主动/主动 主动/被动
吞吐量 有效总吞吐量是两个隧道的合并吞吐量 从两个活跃隧道减少为一个后,有效总吞吐量会减少一半,从而导致连接速度变慢或数据包丢失
路由通告 对等网关会通告对等网络的路由,对每个隧道采用相同的 MED 值。管理 Cloud VPN 隧道的 Cloud Router 路由器采用相同的优先级将它们作为 VPC 网络中的自定义动态路由导入

发送到对等网络的出站流量使用等价多路径 (ECMP) 路由。同一个 Cloud Router 路由器还会采用相同的优先级向您的 VPC 网络通告路由。您的对等网关也可以使用这些路由,通过 ECMP 将出站流量发送到 Google Cloud
对等网关会通告对等网络的路由,对每个隧道采用不同的 MED 值。管理 Cloud VPN 隧道的 Cloud Router 路由器采用不同的优先级将它们作为 VPC 网络中的自定义动态路由导入

只要关联的隧道可用,发送到对等网络的出站流量就会使用优先级最高的路由。针对每个隧道,同一个 Cloud Router 路由器还会采用不同的优先级来向 VPC 网络通告路由。您的对等网关只能使用优先级最高的隧道向 Google Cloud 发送流量
故障转移 如果某个隧道不可用,则 Cloud Router 会撤消下一个跃点为此隧道的已知自定义动态路由。这一撤消过程最长需要 40 秒,期间可能会丢失数据包。 应该每次最多使用一个隧道,这样一来,如果第一个隧道出现故障并需要进行故障转移,第二个隧道才能处理您的所有出站流量带宽

如果某个隧道不可用,则 Cloud Router 会撤消下一个跃点为此隧道的已知自定义动态路由。这一撤消过程最长需要 40 秒,期间可能会丢失数据包。

使用多个隧道或网关

利用路由优先级(MED 值),您可以将路由构建为让一部分流量通过一条隧道,让另一部分流量通过另一条隧道,具体视对等网关配置而定。同样,您可以调整 Cloud Router 路由器用于共享您的 VPC 网络路由的基准优先级。这些情况演示了既不完全是主动/主动也不完全是主动/被动的可能的路由配置。

如果使用单个高可用性 VPN 网关,我们建议您使用主动/被动路由配置。使用此配置时,观察到的正常隧道运行时的带宽容量与观察到的故障转移期间的带宽容量一致。此类配置更易于管理,因为观察到的带宽限制保持不变,但前面介绍的多网关场景除外。

如果使用多个高可用性 VPN 网关,我们建议您使用主动/主动配置。采用这种配置时,观察到的正常运行时的带宽容量是保证的带宽容量的两倍。但是,此配置预配的隧道严重不足,并可能导致故障转移时流量下降。

通过 Cloud VPN 隧道限制对等 IP 地址

如果您是组织政策管理员,则可以创建组织政策限制条件,以定义允许用户在特定项目、文件夹或组织中创建新 Cloud VPN 隧道时指定的一组对等 IP 地址。

对等网关 IP 地址可以是本地网关的 IP 地址,也可以是其他 Cloud VPN 网关的 IP 地址。

使用 Resource Manager 限制条件 constraints/compute.restrictVpnPeerIPs 来控制用户在创建新 Cloud VPN 隧道时可以指定的对等 IP 地址列表。

在以下示例中,组织政策管理员创建了一个组织政策限制条件,用于定义允许的对等 VPN 网关 IP 地址。此限制条件的 allowList 仅由 IP 地址 100.1.1.1 组成。

包含 network-a VPC 网络的项目中的网络管理员只能创建连接到对等网关 IP 地址 100.1.1.1 的新 Cloud VPN 隧道。该限制条件不允许创建到其他对等网关 IP 地址的新 Cloud VPN 隧道。

限制 VPN 对等端的组织政策(点击即可放大)
限制 VPN 对等端的组织政策(点击即可放大)

如需了解描述如何限制 IP 地址的步骤,请参阅以下页面:

注意事项

  • 限制对等网关 IP 地址的组织政策限制条件仅适用于新 Cloud VPN 隧道。应用限制条件后创建的 Cloud VPN 隧道会被限制条件禁止。如需了解详情,请参阅了解 Resource Manager 层次结构

  • 您可以将此限制条件应用于将静态路由或动态路由与 BGP 结合使用的传统 VPN 隧道,也可以应用于高可用性 VPN 隧道。

  • 您可以在给定政策中指定多个 allowedListdeniedList 条目,但不能同时使用这两个条目。

  • 您或具有适当权限的网络管理员必须管理和维护 VPN 隧道的生命周期和完整性。

维护和可用性

Cloud VPN 需要定期进行维护。维护期间,Cloud VPN 隧道将离线,会导致网络流量短暂下降。维护完成后,Cloud VPN 隧道会自动重新建立。

Cloud VPN 维护是一项正常的操作任务,可能随时发生,恕不事先通知。维护周期设计得足够短,所以不会影响 Cloud VPN 服务等级协议 (SLA)

高可用性 VPN 是配置高可用性 (HA) VPN 的推荐方法。如需了解配置选项,请参阅“高可用性 VPN 拓扑”页面。如果您将传统 VPN 用于冗余和高吞吐量选项,请参阅“传统 VPN 拓扑”页面

最佳做法

使用这些最佳做法,以最有效的方式构建您的 Cloud VPN。

后续步骤