创建公共地址范围

您可以通过定义其大小来创建一个公共地址范围,并可选地指定一个 VPC,将其与该地址范围关联,该 VPC 可在该账户内的任意可用区中。

如果 VPC 在与公共地址范围绑定时被删除,则地址范围将继续存在,并可在以后与任何可用性区域中的不同 VPC 绑定。

你可以通过控制台、CLI、API 和 Terraform 创建公共地址范围。

准备工作

确保审查公共广播范围的 规划注意事项

在控制台中创建公共地址范围

要在 IBM Cloud 控制台中创建公共地址范围,请按照以下步骤操作:

  1. IBM Cloud 控制台,选择导航菜单 菜单图标,然后单击基础架构 VPC 图标 > 网络 > 公共地址范围。 出现“VPC 的公共地址范围”页面。

  2. 点击 “创建” 进入配置页面。

  3. 在“位置”部分,请指定您希望创建公共地址范围的区域。

  4. 在“详细信息”部分,请填写以下信息:

    • 大小:选择地址范围的大小(IP地址数量)。 您可以选择将 1、2、4、8 或 16 个 IP 包含在区块中。

      创建公共地址范围后,无法更改其大小。

    • 名称:(可选):为公共地址范围输入一个名称,例如 my-public-address-range

    • 资源组:为公共地址范围选择一个资源组。

      创建公共地址范围后,无法更改资源组。

    • 标签:(可选)添加标签,以便您整理和查找资源。 您可以随时在以后添加更多标签。 有关更多信息,请参阅使用标记

  5. (可选)如果您想将公共地址范围绑定到现有的 VPC,请将“绑定” 开关切换为“开”。 然后,选择要绑定的 VPC 和可用性区域。

    您可以将公共地址范围绑定到账户中已存在的单个可用性区域中的任何 VPC。 您也可以稍后将地址范围绑定到 VPC。 有关更多信息,请参阅 绑定公共地址范围

  6. 单击创建。 请求使用公共地址范围。

在“VPC 的公共地址范围”页面,您的地址范围现在显示在表中。 对于 IBM Cloud 服务,公共地址范围的状态将从 Updating 变为 Stable

通过 CLI 创建公共地址范围

要从命令行创建公共地址范围,请按照以下步骤操作:

  1. 设置 CLI 环境

  2. 登录 CLI 环境。 输入密码后,系统会提示您要使用哪个账户和地区:

    ibmcloud login --sso
    
  3. 启用以下功能标志:

    export IBMCLOUD_IS_FEATURE_PUBLIC_ADDRESS_RANGE=true
    

    当 IBM Cloud 命令行界面及其插件有更新可用时,您将在命令行中收到通知。 更新 CLI 以访问最新命令非常重要。 要检查所有已安装插件的当前版本,请运行 ibmcloud plugin list.

  4. 运行以下命令:

    ibmcloud is public-address-range-create --ipv4-address-count IPV4_ADDRESS_COUNT [--name NAME] [--vpc VPC --zone ZONE] [--resource-group-id RESOURCE_GROUP_ID | --resource-group-name RESOURCE_GROUP_NAME] [--output JSON] [-q, --quiet]
    

    其中:

    --ipv4-address-count
    所需的公共 IPv4 地址的总数。 必须是 2 的幂。
    --name
    公共地址范围的名称。 以 ibm- 开头的名称专用于提供商管理的资源,因此不允许使用。
    --vpc
    要将此公共地址范围绑定到的 VPC。 需要安装 --zone
    --zone
    该广播范围所属的区域。 需要安装 --vpc
    --resource-group-id
    资源组的标识。 与 --resource-group-name 互斥。
    --resource-group-name
    资源组的名称。 与 --resource-group-id 互斥。
    --output
    输出格式仅支持 JSON。 之一:JSON.
    -q, --quiet
    禁止冗长输出。

命令示例

创建名为 public-address-range-1 的公共地址范围,地址数为 8:

ibmcloud is public-address-range-create --name public-address-range-1 --ipv4-address-count 8

创建一个名为 public-address-range-2 的公共地址范围,包含 4 个地址,并创建一个名为 Default 的资源组:

ibmcloud is public-address-range-create --name public-address-range-2 --ipv4-address-count 4 --resource-group-name Default

创建名为 public-address-range-3 的公共地址范围,地址数为 8,绑定到 us-south-1 区域中的 VPC cli-test-vpc,资源组 ID 为 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3

ibmcloud is public-address-range-create --name public-address-range-3 --ipv4-address-count 8 --vpc cli-test-vpc --zone us-south-1 --resource-group-id 72b27b5c-f4b0-48bb-b954-5becc7c1dcb3

使用 API 创建公共地址范围

开始之前,请先配置您的 API 环境

选择下列其中一个选项:

  • 从 IBM 管理的IP地址中创建一个公共地址范围,并将其绑定到一个VPC:

    curl -sX POST \
    "$vpc_api_endpoint/v1/public_address_ranges?version=$api_version&generation=2" \
    -H "Authorization: Bearer $iam_token" \
    -H "Content-Type: application/json" \
    -d '{
          "ipv4_address_count": 8,
          "name": "my-public-address-range",
          "target": {
             "vpc": {
                "id": "r006-4727d842-f94f-4a2d-824a-9bc9b02c523b"
             },
             "zone": {
                "name": "us-south-1"
             }
          }
       }'
    
  • 从 IBM 管理的IP地址中创建一个未绑定的公共地址范围:

    curl -sX POST \
    "$vpc_api_endpoint/v1/public_address_ranges?version=$api_version&generation=2" \
    -H "Authorization: Bearer $iam_token" \
    -H "Content-Type: application/json" \
    -d '{
          "ipv4_address_count": 8,
          "name": "my-public-address-range"
       }'
    

如果需要更改地址范围或资源组的大小,必须删除并重新创建地址范围。

使用 Terraform 创建公共地址范围

要使用 Terraform 创建公共地址范围,请使用下面的示例:

resource "ibm_is_public_address_range" "example" {
  ipv4_address_count = 8
  name               = "my-public-address-range"
  resource_group {
    id = data.ibm_resource_group.example.id
  }
  target {
    vpc {
      id = ibm_is_vpc.example.id
    }
    zone {
      name = "us-south-1"
    }
  }
}

相关链接