You can call this operation to assign 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 hosts the ENI. Alternatively, you can specify a number of private IP addresses for ECS to assign them automatically.

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 a 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, you can assign up to 10 secondary private IP addresses to the ENI. 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.

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.

NetworkInterfaceId String Yes eni-bp67acfmxazb4p****

The ID of the ENI.

RegionId String Yes cn-hangzhou

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

PrivateIpAddress.N RepeatList No 10.1.**. **

One or more secondary private IP addresses selected from within the CIDR block of the VSwitch that hosts the ENI. Valid values of N:

  • When the ENI is in the Available (Available) state: 1 to 10.
  • When the ENI is in the Bound (InUse) state: subject to the instance type. For more information, see Instance families.

To assign secondary private IP addresses, you must specify the PrivateIpAddress.N parameter or the SecondaryPrivateIpAddressCount parameter. You cannot specify both of them.

SecondaryPrivateIpAddressCount Integer No 1

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

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 ensure that it is unique among different requests. The ClientToken value can only contain ASCII characters and cannot exceed 64 characters in length. For more information, see How to ensure idempotence.

Response parameters

Parameter Type Example Description
AssignedPrivateIpAddressesSet Struct

The collection of ENIs that are assigned secondary private IP addresses.

NetworkInterfaceId String eni-bp125p95hhdhn3ot****

The ID of the ENI.

PrivateIpSet List [ "192.168. **. **" ]

The collection of private IP addresses.

RequestId String 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E

The ID of the request.

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

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

JSON format

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

Error codes

HTTP status code Error code Error message Description
403 InvalidUserType.NotSupported %s The error message returned because the current account does not support this operation.
403 Abs.InvalidAccount.NotFound %s The error message returned because your Alibaba Cloud account does not exist or your AccessKey pair has expired.
403 MissingParameter %s The error message returned because a required parameter is not specified.
403 Forbidden.NotSupportRAM %s The error message returned because RAM users are not authorized to perform this operation.
400 UnsupportedParameter %s The error message returned because the specified parameter is not supported.
403 Forbidden.SubUser %s The error message returned because you are not authorized to manage this resource. Apply for permissions from the Alibaba Cloud account.
400 InvalidParameter %s The error message returned because the 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 you cannot unbind the primary ENI from the instance.
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 ENI ID does not exist.
404 InvalidVSwitchId.NotFound %s The error message returned because the specified VSwitch ID does not exist.
404 InvalidSecurityGroupId.NotFound %s The error message returned when the specified security group ID does not exist.
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 this operation is invalid.
403 InvalidOperation.VpcMismatch %s The error message returned because this operation is invalid. Check whether the 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 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 ENI type does not support this operation.
404 InvalidInstanceId.NotFound %s The error message returned because the specified InstanceId does not exist.
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 Operation.Conflict %s The error message returned because this operation conflicts with another operation in progress. Try again later.
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 this operation is invalid.
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 this operation is invalid.
400 InvalidPrivateIpAddress.Duplicated Specified private IP address is duplicated. The error message returned because the specified private IP address has been used. Change the IP address and try again.
403 InvalidIp.IpRepeated %s The error message returned because the specified IP address already exists.

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