向虚拟网络接口添加辅助 IP 地址
虚拟网络接口中的辅助 IP 地址可以帮助您操作具有多个 IP 地址的网络设备,例如负载均衡器或防火墙。 这些地址必须与网络接口位于同一子网中,并且将与网络接口所属的安全组相关联。
可以在创建虚拟网络接口时创建辅助 IP 地址,也可以在 VNI 创建后将其添加到虚拟网络接口。 有关在创建 VNI 时添加辅助 IP 的步骤,请参阅 创建虚拟网络接口。
您可以使用控制台、CLI、API 或 Terraform 为 VNI 添加辅助 IP 地址。
在控制台中为现有虚拟网络接口添加辅助 IP 地址
要向现有虚拟网络接口添加辅助 IP 地址,请执行以下步骤。
- 从浏览器打开 IBM Cloud 控制台并登录账户。
- 选择导航菜单
,然后单击基础结构 > 网络 > 虚拟网络接口。
- 单击要在 VPC 表的虚拟网络接口中添加辅助 IP 地址的虚拟网络接口的名称。
- 单击“附加资源”选项卡。
- 在“辅助 IP”部分中,单击 连接。
- 在显示的“连接辅助 IP”面板中,指定是要为您创建地址,还是要输入您自己的地址。
- 如果选择为您创建地址,请指定要创建的地址数量。
- 如果选择指定自己的地址,那么可以从现有 IP 地址的列表中进行选择,或者在提供的字段中输入 IP 地址。
- 选择是否要为辅助 IP 地址启用自动发布。
- 单击 连接 以将辅助 IP 地址连接到虚拟网络接口,或者单击 取消。
从 CLI 向现有虚拟网络接口添加辅助 IP 地址
开始之前,请 设置 CLI 环境。
export IBMCLOUD_IS_FEATURE_VNI_PHASE_II=true
然后运行以下命令:
ibmcloud is virtual-network-interface-update VIRTUAL_NETWORK_INTERFACE --name NEW_NAME [--allow-ip-spoofing false | true] [--auto-delete false | true] [--enable-infrastructure-nat false | true] [--output JSON] [-q, --quiet]
其中:
VIRTUAL_NETWORK_INTERFACE
- 虚拟网络接口的标识或名称。
--name
- 虚拟网络接口的名称。
--allow-ip-spoofing
- 指示此接口上是否允许源 IP 电子欺骗。 如果
false
,则在此接口上防止源 IP 欺骗。 如果true
,则允许在此接口上欺骗源 IP。 其中一个:false
,true
。 --auto-delete
- 指示删除目标时是否将自动删除此虚拟网络接口。 如果虚拟网络接口未绑定,则必须为
false
。 其中一个:false
,true
。 --enable-infrastructure-nat
- 如果
true
,VPC 基础设施会执行任何所需的 NAT 操作。 如果false
,数据包将保持不变地传入/传出网络接口,允许工作负载执行任何所需的 NAT 操作。 其中一个:false
,true
。 --output
- 指定输出格式,仅支持 JSON。 以下项之一:
JSON
。 -q, --quiet
- 禁止详细输出。
命令示例
ibmcloud is virtual-network-interface-update 72251a2e-d6c5-42b4-97b0-b5f8e8d1f479 --name new-vni
ibmcloud is virtual-network-interface-update new-vni --name new-share
ibmcloud is virtual-network-interface-update 7208-8918786e-5958-42fc-9e4b-410c5a58b164 --name cli-vni-1 --allow-ip-spoofing false --auto-delete false --enable-infrastructure-nat false
ibmcloud is virtual-network-interface-update cli-vni-1 --name cli-vni-2 --allow-ip-spoofing false --auto-delete true --enable-infrastructure-nat false
从 API 将辅助 IP 连接到现有虚拟网络接口
-
使用正确的变量 设置 API 环境。
-
存储要在 API 命令中使用的任何其他变量; 例如:
version
(字符串): API 版本,格式为YYYY-MM-DD
。virtual_network_interface_id
(字符串): 虚拟网络接口标识。secondary_ip
(数组):要附加的二级 IP 的相关信息。
-
启动所有变量后,将辅助 IP 添加到现有虚拟网络接口:
curl -X PATCH \ "$vpc_api_endpoint/v1/virtual_network_interfaces/$virtual_network_interface_id?version=$version&generation=2" \ -H "Authorization: Bearer $iam_token" \ -d '{ "name": "my-virtual-network-interface-updated" }'
使用 Terraform 将辅助 IP 添加到现有虚拟网络接口
下面的示例通过使用 Terraform 为现有虚拟网络接口添加辅助 IP:
resource "ibm_is_virtual_network_interface" "my_virtual_network_interface_instance" {
allow_ip_spoofing = true
auto_delete = false
enable_infrastructure_nat = true
name = "my-virtual-network-interface-2"
subnet = ibm_is_subnet.my_subnet.id
}