Cloud NAT 概览

Cloud NAT 可为出站流量(到互联网、虚拟私有云 [VPC] 网络、本地网络和其他云服务商网络)提供网络地址转换 (NAT)。

Cloud NAT 为以下 Google Cloud 资源提供 NAT:

Cloud NAT 仅支持对已建立的入站响应数据包执行地址转换。它不允许未经请求的入站连接。

通过使用 Cloud NAT 网关,您的 Google Cloud 资源可以连接到来源 VPC 网络之外的资源。

Cloud NAT 网关支持以下类型的 NAT:

  • Public NAT
  • 专用 NAT

您可以同时使用公共 NAT 和专用 NAT 为 VPC 网络中的同一子网提供 NAT 服务。

用于 Public NAT 或 Private NAT 的 Cloud NAT 网关会将地址从 IPv4 转换为 IPv4。公共 NAT 还支持从 IPv6 到 IPv4 的 NAT(预览版)。

Public NAT

Public NAT 允许 Google Cloud 没有外部 IPv4 地址的资源与互联网上的 IPv4 目的地进行通信。这些虚拟机使用一组共享的外部 IP 地址连接到互联网。Cloud NAT 不依赖于代理虚拟机。相反,Cloud NAT 网关会为使用网关创建与互联网的出站连接的每个虚拟机分配一组外部 IP 地址和来源端口。

考虑以下场景:subnet-1 中有 VM-1,其网络接口没有外部 IP 地址。不过,VM-1 需要连接到互联网才能下载更新。如需启用互联网连接,您可以创建一个配置为应用于 subnet-1 IP 地址范围的 Cloud NAT 网关。现在,VM-1 可以使用 subnet-1 的内部 IP 地址将流量发送到互联网。

如需了解详情,请参阅 Public NAT

专用 NAT

Private NAT 支持为以下流量实现专用到专用 NAT。

流量 说明
从一个 VPC 网络连接到另一个 VPC 网络 Private NAT 支持将 VPC 网络作为 VPC spoke 连接到 Network Connectivity Center hub 的私有到私有 NAT。如需了解详情,请参阅用于 Network Connectivity Center spoke 的 Private NAT
从 VPC 网络到 Google Cloud以外的网络 Private NAT 支持针对 VPC 网络与本地网络或其他云服务商网络之间的流量使用以下选项:

假设您 Google Cloud VPC 网络中的资源需要与其他业务部门拥有的 VPC、本地网络或其他云服务提供商网络中的目的地进行通信。但是,目标网络包含的子网的 IP 地址与 VPC 网络的 IP 地址重叠。在此场景中,您将为 Private NAT 创建一个 Cloud NAT 网关,用于将 VPC 网络中的子网之间的流量转换到其他网络的非重叠子网。

如需了解详情,请参阅 Private NAT

支持的资源

下表列出了 Google Cloud 每种类型的 Cloud NAT 支持的资源。对勾标记表示支持相应资源,符号表示不支持相应资源。

资源 Public NAT 专用 NAT
Compute Engine 虚拟机实例
GKE 集群
Cloud Run、Cloud Run functions 和 App Engine 标准环境
区域级互联网 NEG 不适用

架构

Cloud NAT 是一种软件定义的分布式代管式服务。它并非基于代理虚拟机或设备。Cloud NAT 会配置 Andromeda 软件,该软件为您的 Virtual Private Cloud (VPC) 网络提供支持,从而为资源提供来源网络地址转换(来源 NAT 或 SNAT)。此外,Cloud NAT 还会对建立的入站响应数据包执行目标网络地址转换(目标 NAT 或 DNAT)。

传统 NAT 与 Cloud NAT。
传统 NAT 与 Cloud NAT(点击可放大)。

优势

Cloud NAT 具有以下优势:

  • 安全性

    将 Cloud NAT 网关用于 Public NAT 时,您可以减少各个虚拟机对外部 IP 地址的需求。根据出站防火墙规则,没有外部 IP 地址的虚拟机可以访问互联网上的目标。例如,您的虚拟机可能只需访问互联网即可下载更新或完成预配。

    如果您使用手动 NAT IP 地址分配来为 Public NAT 配置 Cloud NAT 网关,则可以放心地与目标方共享一组常用的外部来源 IP 地址。例如,目标服务可能只允许来自已知外部 IP 地址的连接。

    Private NAT 可在 VPC 网络之间或 VPC 与本地网络或其他云服务商网络之间实现专用到专用 NAT。配置 Private NAT 后,Cloud NAT 网关会使用 Private NAT 子网范围内的 IP 地址执行 NAT。

  • 可用性

    Cloud NAT 是一种软件定义的分布式代管式服务。它既不依赖于项目中的任何虚拟机,也不依赖于单个物理网关设备。您可以在 Cloud Router 路由器上配置 NAT 网关,以便为 NAT 提供控制平面,并保存您指定的配置参数。 Google Cloud 可在运行虚拟机的物理机器上运行和维护进程。 Google Cloud

  • 可伸缩性

    您可配置 Cloud NAT 来自动扩缩其使用的 NAT IP 地址数量,Cloud NAT 还支持属于代管式实例组的虚拟机,包括已启用自动扩缩的实例组。

  • 性能

    Cloud NAT 不会降低每个虚拟机的网络带宽。Cloud NAT 可直接与 Google 的 Andlomeda 软件定义网络配合使用。如需了解详情,请参阅 Compute Engine 文档中的网络带宽

  • Logging

    对于 Cloud NAT 流量,您可以跟踪连接和带宽,以便进行合规性、调试、分析和会计核算。

  • 监控

    Cloud NAT 向 Cloud Monitoring 提供关键指标,可让您深入了解机群的 NAT 网关使用情况。系统会自动将指标发送至 Cloud Monitoring。在这里,您可以创建自定义信息中心、设置提醒以及查询指标。

    此外,网络分析器还会发布 Cloud NAT 数据分析。网络分析器会自动监控您的 Cloud NAT 配置,以检测和生成这些数据分析。

产品交互

如需详细了解 Cloud NAT 与其他 Google Cloud 产品之间的重要交互,请参阅 Cloud NAT 产品交互

后续步骤