為一台ECS執行個體分配一個公網IP地址。推薦您使用介面ModifyInstanceNetworkSpec分配公網IP。
介面說明
使用須知
-
分配公網 IP 位址之前,執行個體必須處於運行中(
Running)或者已停止(Stopped)狀態。 -
被安全控制的執行個體的
OperationLocks中標記了"LockReason" : "security"時,不能分配公網 IP 位址。 -
調用該介面時請確保執行個體頻寬大於 0,您可以調用 ModifyInstanceNetworkSpec 介面調整頻寬。
注意事項
-
僅白名單使用者支援指定公網 IP 參數
IpAddress,若公網頻寬大於 0,您可以設定InstanceId進行隨機分配;若公網頻寬為 0,您需要調用 ModifyInstanceNetworkSpec 調整頻寬之後再通過該介面分配。 -
一台執行個體只能分配一個公網 IP 位址。如果執行個體已經擁有一個公網 IP 位址,將返回已綁定的公網 IP 位址
IpAddress。 -
重啟執行個體( RebootInstance )或者啟動執行個體( StartInstance )後,新的公網 IP 位址生效。
除分配公網 IP 之外,您還可以給 VPC 類型 ECS 執行個體綁定彈性公網 IP(EIP)。更多資訊,請參見 AssociateEipAddress 。
調試
您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。
調試
授權資訊
|
操作 |
存取層級 |
資源類型 |
條件關鍵字 |
關聯操作 |
|
ecs:AllocatePublicIpAddress |
create |
*Instance
|
無 | 無 |
請求參數
|
名稱 |
類型 |
必填 |
描述 |
樣本值 |
| InstanceId |
string |
是 |
待分配 IP 位址的執行個體 ID。 說明
該執行個體頻寬必須大於 0。 |
i-bp1gtjxuuvwj17zr**** |
| IpAddress |
string |
否 |
執行個體的公網 IP 位址。如果該參數值為空白,則預設由系統隨機分配 IP 位址。 說明
該參數只支援白名單使用者指定,普通使用者不支援指定 IP 位址。 |
112.124.**.** |
| VlanId |
string |
否 |
執行個體的 VLAN ID。 說明
該參數即將被棄用,為提高相容性,請盡量使用其他參數。 |
720 |
返回參數
|
名稱 |
類型 |
描述 |
樣本值 |
|
object |
|||
| IpAddress |
string |
執行個體的公網 IP 位址。 |
112.124.**.** |
| RequestId |
string |
請求 ID。 |
473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E |
樣本
正常返回樣本
JSON格式
{
"IpAddress": "112.124.**.**",
"RequestId": "473469C7-AA6F-4DC5-B3DB-A3DC0DE3C83E"
}
異常返回樣本
JSON格式
{
"RequestId": "F2EF6A3B-E345-46B9-931E-0EA094818567",
"IpAddress": "10.1.149.159"
}
錯誤碼
|
HTTP status code |
錯誤碼 |
錯誤資訊 |
描述 |
|---|---|---|---|
| 400 | InvalidOperation.AllocateFailed | The current instance failed to allocate public IP, please try again later. | |
| 400 | InvalidIpAddress.Malformed | The specified parameter "IpAddress" is not valid. | |
| 400 | OperationDenied | Specified operation is denied as your instance is in VPC. | 由於執行個體存在於 VPC 中,指定的操作不合法。 |
| 400 | InsufficientPublicIp | Ip address not found. | |
| 400 | AllocateIpInvalidInstanceBandwidth | OperationDenied The InternetMaxBandwidthOut of the specified instance cannot be less than 0. | 當前操作無效,請保證最大輸出頻寬大於0。 |
| 400 | OperationDenied.CloudboxNotSupport | This operation is denied, because the specified ECS instance which is in the Cloudbox dose not support PublicIp or Eip. | |
| 400 | OperationDenied.DedicatedRegionNotSupported | This operation is denied, because the specified ECS instance which is in the dedicated region dose not support PublicIp or Eip. | 專屬雲不支援的api的報錯 |
| 500 | InternalError | The request processing has failed due to some unknown error. | |
| 500 | InvalidOperation.AllocateIpFailed | Failed to allocate the specific IP, please ensure the IP is available. | 分配特定IP失敗,請確保該IP可用。 |
| 403 | IncorrectInstanceStatus | The current status of the resource does not support this operation. | |
| 403 | InstanceLockedForSecurity | The specified operation is denied as your instance is locked for security reasons. | 執行個體被安全鎖定。 |
| 403 | InstanceExpiredOrInArrears | The specified operation is denied as your prepay instance is expired (prepay mode) or in arrears (afterpay mode). | |
| 403 | IpInUse | The specified IP is already in use. | 使用指定IP進行綁定時,IP已經被使用在別的機器上。 |
| 403 | AllocatedAlready | There is an IpAddress allocated already for the specified instance. | 使用指定 IP 進行綁定時,該執行個體已經被分配了別的 IP 位址。 |
| 403 | AllocateIp.Fail | The specified instance fails to allocate ip, please try again. | |
| 403 | NAT_PUBLIC_IP_BINDING_FAILED | Binding nat public ip failed. | |
| 403 | NAT_PUBLIC_IP_ALLOCATE_FAILED | Nat public ip binding failed. | 公網 IP 綁定失敗。 |
| 403 | InvalidIpAddress.NotPublic | The specified IP is not public address. | |
| 404 | InvalidInstanceId.NotFound | The specified InstanceId does not exist. | 指定的執行個體ID無效。 |
| 404 | InvalidVlanId.NotFound | The VlanId provided does not exist in our records. | 指定的虛擬區域網路 ID 不存在。 |
| 404 | InvalidIpAddress.NotFound | The specified IP is not in the specified vlan. | 指定的 IP 不在指定的虛擬區域網路內。 |
訪問錯誤中心查看更多錯誤碼。
變更歷史
更多資訊,參考變更詳情。