更改Azure网络接口的IP地址

问题描述

已要求我更改Azure网络接口IP地址。我了解可以按照here所述通过门户网站或Powershell轻松完成。

但是,我想通过REST进行相同的操作。根据我的发现,只能通过REST(https://docs.microsoft.com/en-us/rest/api/virtualnetwork/networkinterfaceipconfigurations)来检索网络接口的IP配置,但是我看不到可以通过其与网络接口关联/解除关联IP地址的端点。我是否正在忽略某些内容,或者目前尚不支持功能

解决方法

要更改Azure网络接口IP地址,重要的一点是,一个网络接口必须始终至少分配有一个专用IPv4地址。所以正确的顺序是:

  1. 使用新的IP地址创建一个新的IP配置;
  2. 按预期删除旧的IP配置。

您可以使用REST API:Network Interfaces - Create Or Update来实现它,下面是一个示例,我假设您的网络接口只有一个名为ipconfig1的IP配置,然后将REST API与主体一起使用下方:

{
  "name": "nicName","id": "nicResourceId","location": "region","properties": {
    "provisioningState": "Succeeded","ipConfigurations": [
        {
            "name": "ipconfig2","properties": {
                "privateIPAllocationMethod": "Dynamic","subnet": {
                    "id": "subnetResourceId"
                },"primary": true,"privateIPAddressVersion": "IPv4"
            }
        }
    ],"dnsSettings": {
      "dnsServers": [],"appliedDnsServers": []
    },"enableAcceleratedNetworking": true,"enableIPForwarding": false
  },"type": "Microsoft.Network/networkInterfaces"
}

完成后,您的网络接口将只有一个名为ipconfig2的IP配置,并带有新的IP地址。您还可以使用静态分配方法,并根据需要使用特殊的IP地址。