为出站流量分配静态 IP 地址

本文档介绍了如何分配您自己的企业 IP 地址或静态 IP 地址,以供安全 Web 代理用于出站流量。 Google Cloud

准备工作

  • 完成初始设置步骤

  • 确保您已预留用于安全 Web 代理的静态 IPv4 地址列表。如果您想在 Google Cloud中预留 IP 地址,请参阅 gcloud compute addresses create 命令,了解如何创建地址资源。

  • 请验证您是否已安装 Google Cloud CLI 406.0.0 或更高版本:

    gcloud version | head -n1
    

    如果您安装的是较低版本的 gcloud CLI,请更新版本:

    gcloud components update --version=406.0.0
    

为安全 Web 代理启用静态 IP 地址

执行以下操作:

  1. 确定在安全 Web 代理预配期间分配的 Cloud Router 名称:

    gcloud compute routers list \
        --region REGION \
        --filter="network:(NETWORK_NAME) AND name:(swg-autogen-router-*)" \
        --format="get(name)"
    

    替换以下内容:

    • REGION:Cloud Router 为安全 Web 代理部署的区域
    • NETWORK_NAME:您的 VPC 网络的名称

    输出类似于以下内容:

    swg-autogen-router-1
    
  2. 列出在安全 Web 代理预配期间分配的自动预配的外部 IP 地址:

    gcloud compute routers get-status ROUTER_NAME  \
        --region=REGION
    

    输出类似于以下内容:

    kind: compute#routerStatusResponse
    result:
      natStatus:
      - autoAllocatedNatIps:
        - 34.144.80.46
        - 34.144.83.75
        - 34.144.88.111
        - 34.144.94.113
        minExtraNatIpsNeeded: 0
        name: swg-autogen-nat
        numVmEndpointsWithNatMappings: 3
      network: https://www.googleapis.com/compute/projects/PROJECT_NAME/global/networks/NETWORK_NAME
    
    自动扩容或缩容预配的 Cloud NAT IP 地址。
  3. 更新 Cloud NAT 网关以使用您预定义的 IP 地址范围:

    gcloud compute routers nats update swg-autogen-nat  \
        --router=ROUTER_NAME \
        --nat-external-ip-pool=IPv4_ADDRESSES... \
        --region=REGION
    

    IPv4_ADDRESSES 替换为您打算使用的外部 IPv4 地址资源的名称(以英文逗号分隔,,)。

  4. 验证您的 IP 地址范围是否已分配给 Cloud NAT 网关:

    gcloud compute routers nats describe swg-autogen-nat \
        --router=ROUTER_NAME  \
        --region=REGION
    

    输出类似于以下内容:

    enableEndpointIndependentMapping: false
    icmpIdleTimeoutSec: 30
    logConfig:
      enable: false
      filter: ALL
    name: swg-autogen-nat
    natIpAllocateOption: MANUAL_ONLY
    natIps:
    - https://www.googleapis.com/compute/projects/PROJECT_NAME/regions/REGION/addresses/ADDRESS
    sourceSubnetworkIpRangesToNat: ALL_SUBNETWORKS_ALL_IP_RANGES
    
  5. 更新 Cloud NAT 网关以使用动态端口分配 (DPA) 模式。DPA 模式允许安全 Web 代理充分使用分配的 IP 地址。

    gcloud compute routers nats update swg-autogen-nat  \
        --router=ROUTER_NAME \
        --min-ports-per-vm=2048 \
        --max-ports-per-vm=4096 \
        --enable-dynamic-port-allocation \
        --region=REGION
    

    对于 --min-ports-per-vm--max-ports-per-vm 标志,我们建议您分别使用值 20484096

    使用 Metrics Explorer 监控以下指标数据,并根据需要调整 DPA 最小值和最大值:

    • Cloud NAT Gateway - Port usage
    • Cloud NAT Gateway - New connection count
    • Cloud NAT Gateway - Open connections
  6. 验证 DPA 是否已启用,以及是否已设置端口数下限和上限:

    gcloud compute routers nats describe swg-autogen-nat \
        --router=ROUTER_NAME \
        --region=REGION
    

    输出类似于以下内容:

    enableDynamicPortAllocation: true
    enableEndpointIndependentMapping: false
    endpointTypes:
    - ENDPOINT_TYPE_SWG
    logConfig:
      enable: true
      filter: ERRORS_ONLY
    maxPortsPerVm: 4096
    minPortsPerVm: 2048
    name: swg-autogen-nat
    natIpAllocateOption: MANUAL_ONLY
    natIps:
    - https://www.googleapis.com/compute/projects/PROJECT_NAME/regions/REGION/addresses/ADDRESS
    sourceSubnetworkIpRangesToNat: ALL_SUBNETWORKS_ALL_IP_RANGES
    type: PUBLIC
    

后续步骤