保留外部 IP 地址

外部 IP 地址允许从互联网到工作负载虚拟机 (VM) 实例、设备或在私有云中运行的负载均衡器的入站连接。例如,如果您在工作负载虚拟机上运行网络服务器,则可以通过互联网使用外部 IP 地址传送 Web 流量。

进出外部 IP 地址的流量遵循外部访问防火墙规则

为资源分配外部 IP 地址还具有以下优势:

  • 防范分布式拒绝服务 (DDoS 攻击) 攻击。系统会自动为外部 IP 地址启用此保护功能。
  • 始终开启流量监控,并实时缓解常见的网络等级攻击。
  • 在整个网络范围内保护和缓解攻击。该网络可用于跨区域分配和缓解攻击流量。

行为

一个外部 IP 地址只能分配给一个内部 IP 地址,除非您取消分配该外部 IP 地址,否则该外部 IP 地址会专供该内部 IP 地址使用。与外部 IP 地址关联的资源始终使用外部 IP 地址访问互联网。您最多可以为连接到 VMware Engine 的主要 VPC 网络预留 100 个外部 IP 地址。

默认情况下,系统会拒绝来自外部 IP 地址的传入流量,仅允许出站互联网访问。如需允许入站流量,请为外部 IP 地址为特定端口创建外部访问规则

  • 您只能为 vCenter 和 NSX-T 的端口 443 分配规则。
  • 虽然并非强制性要求,但我们强烈建议您同时为 HCX 打开端口 443。

准备工作

  • 为工作负载虚拟机分配外部 IP 地址之前,您必须在适用于您的私有云的区域中创建网络政策并启用互联网访问服务和外部 IP 地址服务。

保留外部 IP 地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 为内部工作负载虚拟机或管理设备预留外部 IP 地址,请执行以下操作:

控制台

如需使用 Google Cloud 控制台为内部工作负载虚拟机或管理设备预留外部 IP 地址,请完成以下步骤:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击外部 IP 地址
  3. 点击预留
  4. 名称字段中,输入用于标识外部 IP 地址的名称。
  5. 私有云列表中,选择包含工作负载虚拟机或管理设备的私有云。
  6. 目标工作负载或设备虚拟机字段中,输入要分配此外部 IP 地址的临时 IP 地址。
  7. 点击预留。新预留的外部 IP 地址会显示在外部 IP 地址列表中。

gcloud

如需为内部工作负载虚拟机或管理设备预留外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses create 命令:

gcloud vmware private-clouds external-addresses create EXTERNAL_ADDRESS_NAME \
  --internal-ip=IP_ADDRESS \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • EXTERNAL_ADDRESS_NAME:此外部 IP 地址的名称
  • IP_ADDRESS:与此请求对应的内部 IP 地址,例如 192.168.1.11
  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 为内部工作负载虚拟机或管理设备预留外部 IP 地址,请发出 POST 请求:

  POST "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses?EXTERNAL_ADDRESS_NAME=EXTERNAL_ADDRESS_NAME"

'{ "internal_ip": "IP_ADDRESS" }'

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此外部 IP 地址的名称
  • IP_ADDRESS:与此请求对应的内部 IP 地址,例如 192.168.1.11

列出外部 IP 地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 查看所有外部 IP 地址的列表,请执行以下操作:

控制台

如需使用 Google Cloud 控制台列出所有外部 IP 地址,请按以下步骤操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击外部 IP 地址

gcloud

如果要列出所有外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses list 命令:

gcloud vmware private-clouds external-addresses list \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 列出所有外部 IP 地址,请发出 GET 请求:

GET "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses"

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称

修改外部地址

您只能修改现有外部 IP 资源的说明和内部 IP 地址。您无法更改任何其他属性。

控制台

如需修改 IP 地址,请执行以下操作:

  1. 访问 Google Cloud 控制台
  2. 在主导航栏中,点击外部 IP 地址
  3. 点击行末的更多 图标,然后选择修改

gcloud

如果要修改外部 IP 地址,请使用 gcloud vmware private-clouds external-addresses update 命令:

gcloud vmware private-clouds external-addresses update EXTERNAL_ADDRESS_NAME 
--internal-ip=IP_ADDRESS

API

如需使用 VMware Engine API 修改外部地址,请发出 PATCH 请求:

PATCH "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses/EXTERNAL_ADDRESS_NAME?update_mask=internal_ip"

'{
  "internal_ip": "IP_ADDRESS"
}'

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 名称
  • IP_ADDRESS:此请求的 IP 地址,例如 192.168.1.11

删除外部地址

如需使用 Google Cloud 控制台、Google Cloud CLI 或 VMware Engine API 删除外部地址,请执行以下操作:

控制台

如需使用 Google Cloud 控制台删除外部地址,请执行以下操作:

  1. 在 Google Cloud 控制台的主导航栏中,点击外部 IP 地址
  2. 点击行末的删除 图标,然后选择删除

gcloud

如需使用 Google Cloud 控制台删除外部地址,请使用 gcloud vmware private-clouds external-addresses delete 命令:

gcloud vmware private-clouds external-addresses delete EXTERNAL_ADDRESS_NAME \
  --private-cloud=PRIVATE_CLOUD_ID \
  --location=ZONE

替换以下内容:

  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 地址 ID
  • PRIVATE_CLOUD_ID:此私有云的名称
  • ZONE:此请求对应的区域

API

如需使用 VMware Engine API 删除外部地址,请发出 DELETE 请求:

  DELETE "https://vmwareengine.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/privateClouds/PRIVATE_CLOUD_ID/externalAddresses/EXTERNAL_IP_ADDRESS"

替换以下内容:

  • PROJECT_ID:此请求的项目
  • ZONE:此请求对应的区域
  • PRIVATE_CLOUD_ID:此私有云的名称
  • EXTERNAL_ADDRESS_NAME:此请求的外部 IP 名称

出站流量配置

系统允许外部 IP 地址的出站流量。在 NSX Manager 中设置规则来控制此流量。

后续步骤