調用CreateNatGateway介面建立增強型公網NAT Gateway或VPC NAT Gateway。

使用說明

在調用本介面時,請瞭解以下內容:

  • 首次建立NAT Gateway時,系統會自動建立一個名稱為AliyunServiceRoleForNatgw的服務關聯角色,並且為該角色添加名稱為AliyunServiceRolePolicyForNatgw的權限原則,授予NAT Gateway擁有訪問其他雲資源的許可權。更多資訊,請參見服務關聯角色
  • 增強型公網NAT Gateway建立後,系統會在VPC的路由表中自動添加一條目標網段為0.0.0.0/0,下一跳為NAT Gateway的路由條目,用於將流量路由到NAT Gateway。
  • CreateNatGateway介面屬於非同步介面,即系統會先返回一個NAT Gateway(公網NAT Gateway或VPC NAT Gateway)執行個體ID,但該NAT Gateway執行個體並未建立完成,系統背景建立任務仍在進行。您可以調用DescribeNatGateways查詢NAT Gateway的狀態。
    • 當NAT Gateway處於Creating狀態時,表示NAT Gateway正在建立中,在該狀態下,您只能執行查詢操作,不能執行其他動作。
    • 當NAT Gateway處於Available狀態時,表示NAT Gateway建立完成。

      NAT Gateway建立一般需要1~3分鐘,請您耐心等待。

  • CreateNatGateway介面在同一個VPC內不支援並發建立NAT Gateway(公網NAT Gateway或VPC NAT Gateway)。

調試

您可以在OpenAPI Explorer中直接運行該介面,免去您計算簽名的困擾。運行成功後,OpenAPI Explorer可以自動產生SDK程式碼範例。

請求參數

名稱 類型 是否必選 樣本值 描述
Action String CreateNatGateway

系統規定參數。取值:CreateNatGateway

RegionId String cn-hangzhou

NAT Gateway所在的地區ID。

您可以通過調用DescribeRegions介面擷取地區ID。

VpcId String vpc-bp1di7uewzmtvfuq8****

需要建立NAT Gateway的VPC的ID。

Name String fortest

NAT Gateway的名稱。

名稱長度為2~128個字元,以大小寫字母或中文開頭,可包含數字、底線(_)和短劃線(-)。

如果沒有指定該參數,系統會為NAT Gateway建立預設的名稱。

Description String testnat

NAT Gateway的描述。

描述可以為空白;或填寫2~256個字元,不能以http://https://開頭。

ClientToken String 5A2CFF0E-5718-45B5-9D4D-70B3FF3898

用戶端Token,用於保證請求的等冪性。

由用戶端產生該參數值,要保證在不同請求間唯一。

说明 若您未指定,則系統自動使用API請求的RequestId作為ClientToken標識。每次API請求的RequestId可能不一樣。
Spec String 無效參數

訂用帳戶公網NAT Gateway已停止新購,該參數不再使用。

InstanceChargeType String PostPaid

NAT Gateway的付費模式,取值:

PostPaid(預設值):隨用隨付。

更多資訊,請參見公網NAT Gateway計費VPC NAT Gateway計費

PricingCycle String 無效參數

訂用帳戶公網NAT Gateway已停止新購,該參數不再使用。

Duration String 無效參數

訂用帳戶公網NAT Gateway已停止新購,該參數不再使用。

AutoPay Boolean 無效參數

訂用帳戶公網NAT Gateway已停止新購,該參數不再使用。

VSwitchId String vsw-bp1e3se98n9fq8hle****

NAT Gateway所屬的交換器的ID。

建立NAT Gateway時,您必須指定NAT Gateway所屬的交換器,系統會為NAT Gateway分配一個交換器內的空閑私網IP地址。

  • 如果您要在存量交換器中建立NAT Gateway,請確保交換器所屬的可用性區域支援建立NAT Gateway,且交換器有可用的IP。
  • 如果您還未建立交換器,請先在支援建立NAT Gateway的可用性區域建立交換器,然後再指定NAT Gateway所屬的交換器。
说明 您可以通過ListEnhanhcedNatGatewayAvailableZones介面查詢NAT Gateway的資源可用性區域,通過DescribeVSwitches介面查詢交換器中的可用IP數。
NatType String Enhanced

NAT Gateway的類型,取值:Enhanced,增強型NAT Gateway。

InternetChargeType String PayByLcu

NAT Gateway的計費類型,取值:PayByLcu,表示按使用量計費。

NetworkType String internet

建立的NAT Gateway類型,取值:

  • internet:公網NAT Gateway。
  • intranet:VPC NAT Gateway。
SecurityProtectionEnabled Boolean false

是否開啟防火牆功能,取值:

  • false(預設值):不開啟。
  • true:開啟。
IcmpReplyEnabled Boolean false

是否開啟ICMP不代回功能,取值:

  • false(預設值):不開啟。
  • true:開啟。
EipBindMode String MULTI_BINDED

NAT Gateway的EIP繫結模式,取值:

  • MULTI_BINDED(預設值):多EIP網卡可見度模式。
  • NAT:EIP普通模式,相容IPv4網關。
    说明 NAT Gateway的EIP繫結模式為EIP普通模式時,EIP將佔用NAT Gateway所在交換器的一個私網IP,請確保NAT Gateway所在交換器內私網IP地址充足,如果NAT Gateway所在的交換器沒有可用的空閑私網地址時,將無法綁定新的EIP。NAT Gateway的EIP繫結模式為EIP普通模式時,NAT Gateway支援綁定的EIP數量上限為50個。

返回資料

名稱 類型 樣本值 描述
NatGatewayId String ngw-112za33e4****

建立的NAT Gateway的執行個體ID。

RequestId String 2315DEB7-5E92-423A-91F7-4C1EC9AD97C3

請求ID。

ForwardTableIds Array of String ftb-11tc6xgmv****

DNAT列表。

SnatTableIds Array of String stb-SnatTableIds****

SNAT列表。

FullNatTableIds Array of String fulltb-gw88z7hhlv43rmb26****

FULLNAT列表。

樣本

請求樣本

http(s)://[Endpoint]/?Action=CreateNatGateway
&RegionId=cn-hangzhou
&VpcId=vpc-bp1di7uewzmtvfuq8****
&Name=fortest
&Description=testnat
&ClientToken=5A2CFF0E-5718-45B5-9D4D-70B3FF3898
&Spec=無效參數
&InstanceChargeType=PostPaid
&PricingCycle=無效參數
&Duration=無效參數
&AutoPay=false
&VSwitchId=vsw-bp1e3se98n9fq8hle****
&NatType=Enhanced
&InternetChargeType=PayByLcu
&NetworkType=internet
&SecurityProtectionEnabled=false
&IcmpReplyEnabled=false
&EipBindMode=MULTI_BINDED
&公用請求參數

正常返回樣本

XML格式

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

<CreateNatGatewayResponse>
    <NatGatewayId>ngw-112za33e4****</NatGatewayId>
    <RequestId>2315DEB7-5E92-423A-91F7-4C1EC9AD97C3</RequestId>
    <ForwardTableIds>ftb-11tc6xgmv****</ForwardTableIds>
    <SnatTableIds>stb-SnatTableIds****</SnatTableIds>
    <FullNatTableIds>fulltb-gw88z7hhlv43rmb26****</FullNatTableIds>
</CreateNatGatewayResponse>

JSON格式

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

{
  "NatGatewayId" : "ngw-112za33e4****",
  "RequestId" : "2315DEB7-5E92-423A-91F7-4C1EC9AD97C3",
  "ForwardTableIds" : [ "ftb-11tc6xgmv****" ],
  "SnatTableIds" : [ "stb-SnatTableIds****" ],
  "FullNatTableIds" : [ "fulltb-gw88z7hhlv43rmb26****" ]
}

錯誤碼

HttpCode 錯誤碼 錯誤資訊 描述
400 Forbidden.NatPayBySpec Pay-by-specification NAT is no longer supported. Newly purchased pay-as-you-go NAT gateways only support the pay-by-CU metering method. 按規格計費的NAT Gateway已經不再進行售賣,請選擇按CU使用量計費的NAT Gateway
400 InvalidVPCStatus vpc incorrect status. 該 VPC 狀態非法,請您檢查 VPC 狀態是否輸入正確。
400 InvalidNatGatewayName.MalFormed NatGateway name is not valid. 網關名稱不合法。
400 InvalidNatGatewayDescription.MalFormed NatGateway description is not valid. 網關描述不合法。
400 MissingParameter.BandwidthPackage only support one BandwidthPackage be created with NatGateway. 必須指定一個共用頻寬包。
400 MissingParameter Miss mandatory parameter. 缺少必要參數,請您檢查必填參數是否都已填後再進行操作。
400 QuotaExceeded.BandwidthPackageIps The specified ipCount exceeded quota. IP數量超過上限,可以在配額管理頁面申請增加配額。
400 InvalidParameter.Name.Malformed The specified Name is not valid. 該名稱不合法,請您按照正確的格式書寫名稱。
400 InvalidParameter.Description.Malformed The specified Description is not valid. 該描述不合法。
400 ZONE_NO_AVAILABLE_IP The Zone have no available ip. 該可用性區域沒有可用IP。
400 InvalidParameter.BandwidthPackage.n.ISP.ValueNotSupport The specified ISP of BandwidthPackage is not valid. 該共用頻寬包的ISP不合法。
400 InvalidNatGatewayId.NotFound The NatGatewayId not exist. 指定的 NatGatewayId 不存在,請您檢查填寫的 NatGatewayId 是否正確。
400 VswitchStatusError The VSwitch is creating . 交換器正在建立中。
400 VpcStatusError The Vpc is creating . 正在建立VPC。
400 InvalidParameter.Spec.ValueNotSupported The specified Spec is not valid. 該規格不合法。
400 Forbidden.CheckEntryRuleQuota Route entry quota rule check error. 檢查路由條目配額時發生了錯誤。
400 OperationFailed.UnpaidBillsExist The account has unpaid bills. Please pay your overdue bill first. 此賬戶有未支付的訂單。
400 OperationFailed.EnhancedQuotaExceed Enhanced nat gateway per vpc quota is exceeded 當前vpc下建立增強型nat網關配額超限
400 OperationFailed.VswNotBelongToVpc Operation failed because the specified VSwitch is not bound to the same VPC with NAT gateway. 操作失敗,因為交換器和NAT Gateway不屬於同一個VPC。
400 OperationFailed.EnhancedUserIsUnAuthorized Operation failed because the user is not authorized to create an enhanced NAT gateway. 操作失敗因為使用者未授權建立增強型NAT Gateway。
400 OperationUnsupported.PrePaidPyByLcu The operation failed because the subscription NAT gateway does not support the pay-by-LCU billing method. 預付費的NAT Gateway執行個體不支援PayByLcu的計費方式。
400 OperationFailed.NormalInventoryNotEnough Standard NAT gateways are no longer offered. You can create enhanced NAT gateways and set the correct natType. 普通型nat網關已經不再支援建立了,請建立的nat網關時設定natType,建立增強型nat。
404 InvalidRegionId.NotFound The specified RegionId does not exist in our records. 指定的RegionId不存在。
404 InvalidVpcId.NotFound Specified value of VpcId is not found in our record. 該 VPC 不存在,請您檢查輸入的 VPC 是否正確。
404 InvalidZoneId.NotFound Specified value of ZoneId is not exists. 該可用性區域不存在。
404 InvalidZoneId.NotFound Can not find ZoneId for allocated ip. 該IP的可用性區域不正確。
404 UnsupportedZoneForFwNat The zone is unsupported for FW NAT. 該可用性區域不支援防護型NAT Gateway。

訪問錯誤中心查看更多錯誤碼。