调用AssignPrivateIpAddresses为一块弹性网卡分配一个或多个辅助私网IP地址。可以为网卡指定在所属交换机(vSwitch)的空闲私网IP地址,或者通过指定私网地址数量自动分配私网IP地址。
接口说明
- 只支持可用(Available)或者已附加(InUse)状态下的弹性网卡。
- 操作主网卡时,网卡附加的实例必须处于运行中(Running)或者已停止(Stopped)状态。
- 网卡处于可用(Available)状态时,最多可以分配50个辅助私网IP地址。一旦挂载到实例上,网卡能分配的辅助私网IP地址数将受到实例规格限制。更多详情,请参见实例规格族。
- 成功调用该接口后,您可以从返回结果中获取已分配的辅助私网IP地址信息。
调试
您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。
请求参数
名称 | 类型 | 是否必选 | 示例值 | 描述 |
---|---|---|---|---|
Action | String | 是 | AssignPrivateIpAddresses | 系统规定参数。取值:AssignPrivateIpAddresses。 |
RegionId | String | 是 | cn-hangzhou | 弹性网卡所属的地域。您可以调用DescribeRegions查看最新的阿里云地域列表。 |
NetworkInterfaceId | String | 是 | eni-bp67acfmxazb4p**** | 弹性网卡ID。 |
SecondaryPrivateIpAddressCount | Integer | 否 | 1 | 指定私网IP地址数量,自动从交换机的空闲IP地址中分配IP地址。 分配辅助私网IP地址时,您不能同时指定 |
ClientToken | String | 否 | 123e4567-e89b-12d3-a456-426655440000 | 保证请求幂等性。从您的客户端生成一个参数值,确保不同请求间该参数值唯一。ClientToken只支持ASCII字符,且不能超过64个字符。更多信息,请参见如何保证幂等性。 |
PrivateIpAddress.N | String | 否 | 10.1.**.** | 从弹性网卡所属交换机的空闲IP地址中选择一个或多个辅助私网IP地址。N的取值范围:
说明 分配辅助私网IP地址时,您不能同时指定 PrivateIpAddress.N 和SecondaryPrivateIpAddressCount 。 |
Ipv4Prefix.N | String | 否 | 192.168.**.**/28 | 为弹性网卡指定一个或多个IPv4前缀。N的取值范围:1~10。 说明 如果您需要为弹性网卡设置IPv4前缀,则必须设置Ipv4Prefix.N或者Ipv4PrefixCount的其中一个,但不能同时设置这两个参数。 |
Ipv4PrefixCount | Integer | 否 | 1 | 为弹性网卡指定随机生成的IPv4前缀数量。取值范围:1~10。 说明 如果您需要为弹性网卡设置IPv4前缀,则必须设置Ipv4Prefix.N或者Ipv4PrefixCount的其中一个,但不能同时设置这两个参数。 |
返回数据
名称 | 类型 | 示例值 | 描述 |
---|---|---|---|
RequestId | String | 473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E | 请求ID。 |
AssignedPrivateIpAddressesSet | Object | 已分配辅助私网IP地址的弹性网卡信息组成的集合。 |
|
NetworkInterfaceId | String | eni-bp125p95hhdhn3ot**** | 弹性网卡ID。 |
PrivateIpSet | Array of String | 192.168.**.** | 已分配的私网IP地址。 |
Ipv4PrefixSet | Array of String | 192.168.**.**/28 | 已分配的IPv4前缀。 |
示例
请求示例
https://ecs.aliyuncs.com/?Action=AssignPrivateIpAddresses
&NetworkInterfaceId=eni-bp67acfmxazb4p****
&RegionId=cn-hangzhou
&PrivateIpAddress.1=10.1.**.**
&PrivateIpAddress.2=10.1.**.**
&<公共请求参数>
正常返回示例
XML
格式
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
格式
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E",
"AssignedPrivateIpAddressesSet" : {
"PrivateIpSet" : {
"PrivateIpAddress" : [ "192.168.**.**" ]
},
"NetworkInterfaceId" : "eni-bp125p95hhdhn3ot****"
}
}
错误码
HttpCode | 错误码 | 错误信息 | 描述 |
---|---|---|---|
400 | Throttling | Request was denied due to request throttling. | 请求被流控。 |
400 | UnsupportedParameter | %s | 不支持参数。 |
400 | InvalidParameter | %s | 无效的参数。 |
400 | InvalidInstanceID.Malformed | %s | 参数 InstanceId 格式错误。 |
400 | InvalidOperation.InvalidEcsState | %s | 实例当前的状态不支持此操作。 |
400 | InvalidOperation.InvalidEniState | %s | 弹性网卡当前的状态不支持此操作。 |
400 | InvalidOperation.DetachPrimaryEniNotAllowed | %s | 由于不允许分离网卡,不允许此操作。 |
400 | MissingParameter | %s | 缺失参数,请检查参数是否完整。 |
400 | Forbidden.RegionId | %s | 当前地域暂时没有提供该服务。 |
400 | InvalidAction | %s | 操作无效。 |
400 | IncorrectVSwitchStatus | The current status of vSwitch does not support this operation. | vSwitch当前状态不支持该操作。 |
400 | InvalidPrivateIpAddress.Duplicated | Specified private IP address is duplicated. | 指定的私网 IP 已经被使用,请您更换 IP 再重试。 |
400 | InvalidParameter.Conflict | %s | 您输入的参数无效,请检查参数之间是否冲突。%s为变量,将根据调用API的实际情况动态返回错误信息。 |
403 | InvalidUserType.NotSupported | %s | 您当前的账号不支持此操作。 |
403 | Abs.InvalidAccount.NotFound | %s | 您的阿里云账号不存在,或者您的 AccessKey 已经过期。 |
403 | Forbidden.NotSupportRAM | %s | 暂不支持RAM用户执行该操作。 |
403 | Forbidden.SubUser | %s | 您的账号没有操作此资源的权限,请向主账号申请相关的权限。 |
403 | MaxEniCountExceeded | %s | 已超过可以操作的最大弹性网卡数。 |
403 | EniPerInstanceLimitExceeded | %s | 实例附加的弹性网卡数量已经达到了最大限度,不能再为实例附加弹性网卡。 |
403 | InvalidOperation.AvailabilityZoneMismatch | %s | 该操作无效。 |
403 | InvalidOperation.VpcMismatch | %s | 您的操作无效,请确认该操作中的 VPC 与其它参数是否匹配。 |
403 | SecurityGroupInstanceLimitExceed | %s | 该安全组内已有的实例数量已达到最大限制。 |
403 | InvalidSecurityGroupId.NotVpc | %s | 参数 SecurityGroupId 无效,该安全组的网络类型不是专有网络。 |
403 | InvalidOperation.InvalidEniType | %s | 当前弹性网卡的类型不支持此操作。 |
403 | InvalidVSwitchId.IpNotEnough | %s | 指定的交换机内 IP 数量不足。 |
403 | InvalidVSwitchId.IpInvalid | %s | 指定的私网 IP 无效。 |
403 | InvalidIp.IpAssigned | %s | 指定的 IP 已被分配。 |
403 | MaxEniPrivateIpsCountExceeded | %s | 指定的ENI分配的辅助私网IP数量超过限制,具体信息请参见错误信息%s占位符的实际返回结果。 |
403 | Operation.Conflict | %s | 您当前的操作与其它正在执行的操作有冲突,请稍后重试。 |
403 | InvalidOperation.Ipv4CountExceeded | %s | IPv4 数量达到上限,导致该操作无效。 |
403 | InvalidOperation.EniServiceManaged | %s | 操作无效。 |
403 | InvalidIp.IpRepeated | %s | 指定的 IP 重复。 |
403 | InvalidIp.IpPrefixIllegal | The ip prefixes %s is/are illegal. | IP前缀无效,不是cidr格式。 |
403 | InvalidIp.IpPrefixMaskIllegal | The ip prefix mask is illegal. | IP前缀掩码非法。 |
403 | InvalidIp.IpPrefixMaskInvalid | The ip prefixes mask %s is illegal which must be between %s and %s. | IP前缀掩码非法,不在有效范围内。 |
403 | InvalidIp.IpPrefixMaskNotSame | The ip prefixes %s are illegal which mask must be same. | IP前缀掩码不相同。 |
403 | InvalidIp.IpPrefixMustInReserveSegment | The ip prefix must in vswitch reserve segment. | IP前缀无效,不在交换机的预留地址段内。 |
403 | InvalidIp.IpPrefixNotAvailable | The ip prefix is/are not available. | IP前缀非空闲。 |
403 | InvalidIp.IpPrefixNotStrict | The ip prefix must be strict cidr format. | IP前缀无效,不是严格的cidr。 |
403 | InvalidVSwitchId.IpPrefixNotEnough | The specified vSwitch has not enough ip prefix. | 指定的交换机内 IP前缀数量不足。 |
403 | MissingParameter | These parameters %s cannot be both empty. | 请求中参数缺失,所需参数不可全部为空 |
404 | InvalidEcsId.NotFound | %s | 指定的实例 ID 不存在。 |
404 | InvalidEniId.NotFound | %s | 指定的弹性网卡 ID 不存在。 |
404 | InvalidVSwitchId.NotFound | %s | 指定的交换机不存在。 |
404 | InvalidSecurityGroupId.NotFound | %s | 指定的安全组 ID 不存在。 |
404 | InvalidInstanceId.NotFound | %s | 指定的实例不存在,请确认参数 InstanceId 是否正确。 |
404 | InvalidOperation.VSwitchCidrReservationNotExist | The specified vSwitch has no cidr reservation. | 指定的交换机没有可用的预留段。 |
500 | InvalidOperation.RegionNotSupportIpPrefix | The current region does not support ip prefix. | 该地域不支持分配IP前缀。 |
访问错误中心查看更多错误码。