Assigns one or more secondary private IP addresses to an elastic network interface (ENI). You can specify available private IP addresses within the CIDR block of the vSwitch that is connected to the ENI. Alternatively, you can specify a number of private IP addresses to automatically assign from the CIDR block of the vSwitch to the ENI.

Description

  • The ENI to which you want to assign private IP addresses must be in the Available (Available) or Bound (InUse) state.
  • When you perform operations on the primary ENI, the instance to which the ENI is bound must be in the Running or Stopped state.
  • When an ENI is in the Available state, up to 10 secondary private IP addresses can be assigned to it. When an ENI is bound to an instance, the number of private IP addresses that can be assigned to the ENI is subject to the instance type. For more information, see Instance families.
  • After the operation is called, you can obtain the private IP addresses assigned to the ENI from the response.

Debugging

OpenAPI Explorer automatically calculates the signature value. For your convenience, we recommend that you call this operation in OpenAPI Explorer. OpenAPI Explorer dynamically generates the sample code of the operation for different SDKs.

Request parameters

Parameter Type Required Example Description
Action String Yes AssignPrivateIpAddresses

The operation that you want to perform. Set the value to AssignPrivateIpAddresses.

RegionId String Yes cn-hangzhou

The region ID of the ENI. You can call the DescribeRegions operation to query the most recent region list.

NetworkInterfaceId String Yes eni-bp67acfmxazb4p****

The ID of the ENI.

SecondaryPrivateIpAddressCount Integer No 1

The number of private IP addresses to be automatically assigned from within the CIDR block of the vSwitch.

To assign secondary private IP addresses, you must specify PrivateIpAddress.N or SecondaryPrivateIpAddressCount but not both.

ClientToken String No 123e4567-e89b-12d3-a456-426655440000

The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must make sure that it is unique among different requests. The ClientToken value can contain only ASCII characters and cannot exceed 64 characters in length. For more information, see How to ensure idempotence.

PrivateIpAddress.N String No 10.1.**.**

Secondary private IP address N, which is selected from within the CIDR block of the vSwitch. Valid values of N:

  • When the ENI is in the Available (Available) state, the valid values of N are 1 to 10.
  • When the ENI is in the Bound (InUse) state, the valid values of N are subject to the instance type. For more information, see Instance families.
Note To assign secondary private IP addresses, you must specify PrivateIpAddress.N or SecondaryPrivateIpAddressCount but not both.

Response parameters

Parameter Type Example Description
RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

The ID of the request.

AssignedPrivateIpAddressesSet Object

Details about the ENI.

NetworkInterfaceId String eni-bp125p95hhdhn3ot****

The ID of the ENI.

PrivateIpSet Array of String [ "192.168.**.**" ]

The private IP addresses assigned.

Examples

Sample requests

https://ecs.aliyuncs.com/?Action=AssignPrivateIpAddresses
&NetworkInterfaceId=eni-bp67acfmxazb4p****
&RegionId=cn-hangzhou
&PrivateIpAddress.1=10.1.**.**
&PrivateIpAddress.2=10.1.**.**
&<Common request parameters>

Sample success responses

XML format

HTTP/1.1 200 OK
Content-Type:application/xml

<AssignPrivateIpAddressesResponse>
    <RequestId>473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E</RequestId>
    <AssignedPrivateIpAddressesSet>
        <PrivateIpSet>
            <PrivateIpAddress>192.168.**.**</PrivateIpAddress>
        </PrivateIpSet>
        <NetworkInterfaceId>eni-bp125p95hhdhn3ot****</NetworkInterfaceId>
    </AssignedPrivateIpAddressesSet>
</AssignPrivateIpAddressesResponse>

JSON format

HTTP/1.1 200 OK
Content-Type:application/json

{
  "RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E",
  "AssignedPrivateIpAddressesSet" : {
    "PrivateIpSet" : {
      "PrivateIpAddress" : [ "192.168.**.**" ]
    },
    "NetworkInterfaceId" : "eni-bp125p95hhdhn3ot****"
  }
}

Error codes

HTTP status code Error code Error message Description
400 Throttling Request was denied due to request throttling. The error message returned because the request is denied due to throttling. Try again later.
400 UnsupportedParameter %s The error message returned because a specified parameter is not supported.
400 InvalidParameter %s The error message returned because a specified parameter is invalid.
400 InvalidInstanceID.Malformed %s The error message returned because the specified InstanceId parameter is invalid.
400 InvalidOperation.InvalidEcsState %s The error message returned because the operation is not supported while the instance is in the current state.
400 InvalidOperation.InvalidEniState %s The error message returned because the operation is not supported while the ENI is in the current state.
400 InvalidOperation.DetachPrimaryEniNotAllowed %s The error message returned because the primary ENI cannot be unbound from the instance.
400 MissingParameter %s The error message returned because a required parameter is not specified.
400 Forbidden.RegionId %s The error message returned because the service is unavailable in the current region.
400 InvalidAction %s The error message returned because the operation is invalid.
400 InvalidPrivateIpAddress.Duplicated Specified private IP address is duplicated. The error message returned because the specified private IP address is already in use. Try another IP address.
403 InvalidUserType.NotSupported %s The error message returned because your account does not support this operation.
403 Abs.InvalidAccount.NotFound %s The error message returned because your Alibaba Cloud account does not exist or because your AccessKey has expired.
403 Forbidden.NotSupportRAM %s The error message returned because RAM users are not authorized to perform this operation.
403 Forbidden.SubUser %s The error message returned because your account is not authorized to manage this resource. Contact the owner of the Alibaba Cloud account for authorization.
403 MaxEniCountExceeded %s The error message returned because the maximum number of ENIs that can be managed has been reached.
403 EniPerInstanceLimitExceeded %s The error message returned because the maximum number of ENIs that can be bound to the specified instance has been reached.
403 InvalidOperation.AvailabilityZoneMismatch %s The error message returned because the operation is invalid.
403 InvalidOperation.VpcMismatch %s The error message returned because the operation is invalid. Check whether the virtual private cloud (VPC) in the operation corresponds to other parameters.
403 SecurityGroupInstanceLimitExceed %s The error message returned because the maximum number of instances in the specified security group has been reached.
403 InvalidSecurityGroupId.NotVpc %s The error message returned because the specified SecurityGroupId parameter is invalid and the network type of the security group is not VPC.
403 InvalidOperation.InvalidEniType %s The error message returned because the operation is not supported while the ENI is of the current type.
403 InvalidVSwitchId.IpNotEnough %s The error message returned because available IP addresses within the CIDR block of the specified vSwitch are insufficient.
403 InvalidVSwitchId.IpInvalid %s The error message returned because the specified private IP address is invalid.
403 InvalidIp.IpAssigned %s The error message returned because the specified IP address is already assigned.
403 MaxEniPrivateIpsCountExceeded %s The error message returned because the maximum number of secondary private IP addresses that can be assigned to the ENI has been reached. For more information, see the return value of the %s placeholder in the error message.
403 Operation.Conflict %s The error message returned because this operation conflicts with another operation in progress. Try again later.
403 InvalidOperation.Ipv4CountExceeded %s The error message returned because the maximum number of IPv4 addresses has been reached.
403 InvalidOperation.EniServiceManaged %s The error message returned because the operation is invalid.
403 InvalidIp.IpRepeated %s The error message returned because the specified IP address already exists.
404 InvalidEcsId.NotFound %s The error message returned because the specified instance ID does not exist.
404 InvalidEniId.NotFound %s The error message returned because the specified NetworkInterfaceId parameter does not exist.
404 InvalidVSwitchId.NotFound %s The error message returned because the specified vSwitch does not exist.
404 InvalidSecurityGroupId.NotFound %s The error message returned because the specified security group ID does not exist.
404 InvalidInstanceId.NotFound %s The error message returned because the specified instance does not exist.

For a list of error codes, visit the API Error Center.