Cloud VPN 概览

本页面介绍 Google Cloud VPN 的相关概念。如需了解 Cloud VPN 文档中使用的术语定义,请参阅关键术语

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

选择混合网络解决方案

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

自行试用

如果您是 Google Cloud 新手,请创建一个帐号来评估 Cloud VPN 在实际场景中的表现。新客户还可获享 $300 赠金,用于运行、测试和部署工作负载。

免费试用 Cloud VPN

如果您需要 IPsec 加密并且希望不通过公共互联网进行连接,则可以部署通过 Cloud Interconnect 实现的高可用性 VPN

Cloud VPN 的类型

Google Cloud 提供了两种类型的 Cloud VPN 网关:高可用性 VPN 和传统 VPN。不过,某些传统 VPN 功能已弃用。如需了解详情,请参阅传统 VPN 部分弃用

如需了解如何迁移到高可用性 VPN,请参阅迁移到高可用性 VPN

高可用性 VPN

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

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

使用高可用性 VPN 的一个方法是部署通过 Cloud Interconnect 实现的高可用性 VPN。通过 Cloud Interconnect 实现的高可用性 VPN 不仅让您可以通过 Cloud VPN 实现 IPsec 加密,还可以部署容量更大的 Cloud Interconnect 互连。此外,由于您使用的是 Cloud Interconnect,因此网络流量完全不需要在公共互联网上传输。向 Cloud Interconnect 流量添加 IPsec 加密对于满足数据加密要求和其他合规性需求非常重要,尤其是在您必须连接到第三方服务提供商的情况下(连接到第三方服务提供商是使用合作伙伴互连的前提)。

在 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 隧道所在区域中的子网。

    如需了解详情,请参阅动态路由模式

  • 将一个高可用性 VPN 网关连接到另一个高可用性 VPN 网关时,这两个网关必须使用相同的 IP 堆栈类型。例如,如果您创建了一个使用堆栈类型 IPV4_IPV6 的高可用性 VPN 网关,那么另一个高可用性 VPN 网关也必须设置为 IPV4_IPV6

  • 在外部 VPN 网关资源中配置 Google Cloud IP 地址(例如,将虚拟机实例的外部 IP 地址用作外部 VPN 网关资源的外部 IP 地址)时,高可用性 VPN 会拒绝这些地址。Google Cloud 网络之间唯一支持的高可用性 VPN 拓扑是两端都使用高可用性 VPN,如在 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 之前创建的所有 Cloud VPN 网关均被视为传统 VPN 网关。如需从传统 VPN 改用高可用性 VPN,请参阅详细说明

相比高可用性 VPN,传统 VPN 网关具有单个接口、单个外部 IP 地址,并支持使用静态路由(基于政策或基于路由)的隧道。您还可以为传统 VPN 配置动态路由 (BGP),但仅适用于连接到 Google Cloud 虚拟机实例上运行的第三方 VPN 网关软件的隧道。

传统 VPN 网关提供服务可用性达 99.9% 的服务等级协议 (SLA)。

传统 VPN 网关不支持 IPv6。

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

在 API 文档和 Google Cloud CLI 中,传统 VPN 被称为目标 VPN 网关

对照表

下表比较了高可用性 VPN 功能与传统 VPN 功能。

特征 高可用性 VPN 传统 VPN
服务等级协议 在配置了两个接口和两个外部 IP 地址时,可提供 99.99% 的 SLA。 提供了 99.9% 的 SLA。
创建外部 IP 地址和转发规则 从池创建的外部 IP 地址;无需转发规则。 必须创建外部 IP 地址和转发规则。
支持的路由选项 仅限动态路由 (BGP)。 静态路由(基于政策、基于路由)。只有连接到 Google Cloud 虚拟机实例上运行的第三方 VPN 网关软件的隧道才支持动态路由。
从一个 Cloud VPN 网关到相同对等网关的两条隧道 支持 不支持
API 资源 称为 vpn-gateway 资源。 称为 target-vpn-gateway 资源。
IPv6 流量 支持(双堆栈 IPv4 和 IPv6 配置) 不支持

规格

Cloud VPN 具有以下规范:

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

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

  • Cloud VPN 可与 VPC 网络和旧式网络搭配使用。对于 VPC 网络,我们建议使用自定义模式 VPC 网络,以便您可以完全控制网络中子网使用的 IP 地址范围。

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

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

  • 以下 Cloud VPN 流量保留在 Google 的生产网络中:

    • 两个高可用性 VPN 网关之间
    • 两个传统 VPN 网关之间
    • 传统 VPN 网关与充当 VPN 网关的 Compute Engine 虚拟机的外部 IP 地址之间
  • Cloud VPN 可与本地主机的专用 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 支持 GRE 流量。对 GRE 的支持让您可以从互联网(外部 IP 地址)和 Cloud VPN 或 Cloud Interconnect(内部 IP 地址)终止虚拟机上的 GRE 流量。然后,解封的流量将被转发到可达目标。GRE 可让您使用安全访问服务边缘 (SASE) 和 SD-WAN 等服务。您必须创建防火墙规则才能允许 GRE 流量。

  • 高可用性 VPN 隧道支持 IPv6 流量交换,但传统 VPN 隧道不提供此项支持。

网络带宽

每个 Cloud VPN 隧道最多支持 25 万个数据包/秒(入站流量和出站流量的总和)。根据隧道的平均数据包大小,每秒 25 万个数据包相当于 1 Gbps 到 3 Gbps 带宽。

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

如需了解如何创建提醒政策,请参阅定义 VPN 隧道带宽提醒

如需了解如何使用 VPN 隧道利用率 Recommender,请参阅检查 VPN 隧道利用率是否过高

影响带宽的因素

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

  • Cloud VPN 网关与对等网关之间的网络连接:

    • 两个网关之间的网络带宽。如果您已与 Google 建立直接对等互连关系,则相较于通过公共互联网发送 VPN 流量,此吞吐量更高。

    • 往返时间 (RTT) 和丟包率。RTT 或丟包率过高会大大降低 TCP 的性能。

  • 对等 VPN 网关的功能。如需了解详情,请参阅设备的文档。

  • 数据包大小。Cloud VPN 使用的最大传输单元 (MTU) 为 1460 个字节。因此必须配置对等 VPN 网关,将其使用的 MTU 限制为 1460 个字节以内。由于是按数据包进行处理,在数据包速率一定的情况下,如果存在大量较小数据包可能会降低整体吞吐量。考虑到 ESP 开销,您可能还需要为通过 VPN 隧道发送流量的系统设置一个小于隧道 MTU 值的 MTU 值。如需详细了解相关讨论和建议,请参阅 MTU 注意事项

  • 数据包速率。对于入站流量和出站流量,建议每个 Cloud VPN 隧道的最大数据包速率为每秒 250,000 个数据包 (pps)。如果您需要以更高的速率发送数据包,则必须创建更多的 VPN 隧道。

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

隧道 MTU

Cloud VPN 使用的 MTU 始终为 1460 字节。如果隧道任一端的虚拟机和网络具有更高的 MTU,则 Cloud VPN 会使用“MSS 固定”将 TCP MTU 设置减少到 1460。VPN 网关还可以使用 ICMP 错误消息来启用路径 MTU 发现 (PMTUD),从而将 UDP 数据包的 MTU 设置为较低。

如果 UDP 数据包丢失,您可以减少通过隧道通信的特定虚拟机的 MTU。对于 Windows 虚拟机和用户提供的映像,将 MTU 设置为较低就已足够。对于 Google 提供的 Linux 映像,您还必须为这些虚拟机停用 DHCP MTU 更新。

IPv6 支持

Cloud VPN 支持高可用性 VPN 中的 IPv6,但不支持传统 VPN 中的 IPv6。

您可以创建高可用性 VPN 网关和隧道,用于将启用 IPv6 的 VPC 网络与其他启用 IPv6 的网络连接起来。这些网络可以是本地网络、多云网络或其他 VPC 网络。如需在高可用性 VPN 隧道中传输 IPv6 流量,启用 IPv6 的 VPC 网络必须包含双栈子网。此外,您还必须为子网分配内部 IPv6 范围

在为启用了 IPv6 的高可用性 VPN 网关创建 VPN 隧道时,您还必须配置关联的 Cloud Router 路由器,以在 BGP 会话中启用 IPv6 前缀交换。Cloud Router 路由器使用多协议 BGP (MP-BGP),并通过 BGP IPv4 地址通告 IPv6 前缀。为了通告 IPv6 前缀,Cloud Router 路由器上的 BGP 会话必须配置 IPv6 下一个跃点地址。您可以自动或手动为 BGP 会话配置 IPv6 下一个跃点地址。

手动配置 IPv6 下一个跃点地址时,必须从 2600:2d00:0:2::/642600:2d00:0:3::/64 范围中选择这些地址。这些范围已由 Google 预先分配。您指定的 IPv6 下一个跃点地址在 VPC 网络全部区域中的所有 Cloud Router 路由器之间必须唯一。

如果您选择自动配置,则 Google Cloud 会从 2600:2d00:0:2::/642600:2d00:0:3::/64 范围为您创建 IPv6 下一个跃点地址。

虽然 BGP 会话可以交换 IPv6 前缀,但 Cloud Router 路由器 BGP 和 BGP 对等端必须自动或手动分配 IPv4 地址。系统不支持仅使用 IPv6 的 BGP 会话。如需详细了解 IPv6 支持,请参阅关于 Cloud Router 路由器

IPsec 和 IKE 支持

Cloud VPN 使用 IKE 预共享密钥(共享密钥令牌)和 IKE 加密支持 IKEv1IKEv2。Cloud VPN 仅支持用于身份验证的预共享密钥。创建 Cloud VPN 隧道时,请指定预共享密钥。在对等网关上创建隧道时,请指定相同的预共享密钥。

Cloud VPN 支持将隧道模式下的 ESP 与身份验证一起使用,但不支持传输模式下的 AHESP

您必须使用 IKEv2 在高可用性 VPN 中启用 IPv6 流量。

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

如需了解如何创建强预共享密钥,请参阅生成强预共享密钥。如需了解 Cloud VPN 支持的加密方式和配置参数,请参阅支持的 IKE 加密方式

UDP 封装和 NAT-T

如需了解如何配置对等设备以支持使用 Cloud VPN 的 NAT-Traversal (NAT-T),请参阅高级概览中的 UDP 封装

Cloud VPN 作为数据转移网络

在使用 Cloud VPN 之前,请仔细阅读 Google Cloud 的通用服务条款的第 2 部分

利用 Network Connectivity Center,您可以使用高可用性 VPN 隧道将本地网络连接在一起,从而以数据转移网络形式在它们之间传递流量。您可以通过将一对隧道连接到每个本地位置的 Network Connectivity Center Spoke 来连接网络。然后将每个 Spoke 连接到一个 Network Connectivity Center 中心。

如需详细了解 Network Connectivity Center,请参阅 Network Connectivity Center 概览

高可用性 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-60 秒,期间可能会丢失数据包。

如果某个隧道不可用,则 Cloud Router 路由器会撤销下一个跃点为此隧道的已知路由。这一撤销过程需要 40-60 秒,期间可能会丢失数据包。

每次最多使用一个隧道,这样一来,如果第一个隧道出现故障并需要进行故障切换,第二个隧道可以处理您的所有出站流量带宽。

全网状拓扑中的主动/被动路由

如果 Cloud Router 路由器通过给定的 Cloud VPN 接口收到具有不同 MED 值的同一前缀,则它仅会将具有最高优先级的路由导入到 VPC 网络。其他非活跃路由无法在 Google Cloud 控制台中或通过 Google Cloud CLI 显示。如果具有最高优先级的路由变得不可用,则 Cloud Router 路由器将撤消该路由,并自动将下一个最佳路由导入到 VPC 网络。

使用多个隧道或网关

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

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

如果使用多个高可用性 VPN 网关,我们建议您使用主动/主动路由配置。采用这种配置时,隧道正常运行时观测到的带宽容量是保证带宽容量的两倍。但是,此配置实际上造成预配的隧道不足,可能导致故障切换时流量下降。

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

如果您是 Organization Policy Administrator,则可以创建政策限制条件来限制用户可以为对等 VPN 网关指定的 IP 地址。

该限制会应用于特定项目、文件夹或组织中的所有 Cloud VPN 隧道,适用于传统 VPN 和高可用性 VPN。

如需了解限制 IP 地址的步骤,请参阅限制对等 VPN 网关的 IP 地址

直观呈现和监控 Cloud VPN 连接

网络拓扑是一种可视化工具,可显示 VPC 网络的拓扑、与本地网络的混合连接以及相关指标。您可以在网络拓扑视图中将 Cloud VPN 网关和 VPN 隧道视为实体。

基础实体是特定层次结构的最低级层,表示可以通过网络直接与其他资源进行通信的资源。 网络拓扑会将基础实体聚合到可以展开或折叠的分层实体中。首次查看网络拓扑图时,它会将所有基础实体聚合到其顶级层次结构中。

例如,网络拓扑会将 VPN 隧道聚合到其 VPN 网关连接中。您可以通过展开或收起 VPN 网关图标来查看层次结构。

如需了解详情,请参阅网络拓扑概览

维护和可用性

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

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

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

最佳做法

如需有效地构建 Cloud VPN,请使用这些最佳做法

后续步骤

  • 如需使用高可用性和高吞吐量场景或多个子网方案,请参阅高级配置

  • 如需帮助解决使用 Cloud VPN 时可能会遇到的常见问题,请参阅问题排查