ALIYUN::VPC::NatGateway类型用于创建NAT网关。

语法

{
  "Type": "ALIYUN::VPC::NatGateway",
  "Properties": {
    "Description": String,
    "NatGatewayName": String,
    "InstanceChargeType": String,
    "PricingCycle": String,
    "VSwitchId": String,
    "Duration": Number,
    "DeletionProtection": Boolean,
    "InternetChargeType": String,
    "AutoPay": Boolean,
    "NatType": String,
    "DeletionForce": Boolean,
    "VpcId": String,
    "Tags": List,
    "NetworkType": String,
    "EipBindMode": String
  }
}

属性

属性名称 类型 必须 允许更新 描述 约束
Description String NAT网关的描述。 长度为2~256个字符,不能以http://https://开头。
NatGatewayName String NAT网关的名称。

长度为2~128个字符,必须以英文字母或汉字开头,不能以http://https://开头。可包含英文字母、汉字、数字、半角句号(.)、下划线(_)和短划线(-)。

如果没有指定该参数,默认使用网关ID作为名称。

InstanceChargeType String NAT网关的付费模式。 取值:
  • PostPaid(默认值):按量付费。
  • PrePaid:包年包月。
PricingCycle String 包年包月的计费周期。 取值:
  • Month(默认值):按月付费。
  • Year:按年付费。
当InstanceChargeType取值为PrePaid时,必须指定该参数。
VSwitchId String NAT网关所属的交换机ID。 创建增强型NAT网关时,您必须指定NAT网关所属的交换机,系统会为增强型NAT网关分配一个交换机内的空闲私网IP地址。
  • 如果您要在存量交换机中创建增强型NAT网关,请确保交换机所属的可用区支持创建增强型NAT网关,且交换机有可用的IP。
  • 如果您还未创建交换机,请先在支持创建增强型NAT网关的可用区创建交换机,然后再指定增强型NAT网关所属的交换机。
您可以通过ListEnhanhcedNatGatewayAvailableZones接口查询增强型NAT网关的资源可用区,通过DescribeVSwitches接口查询交换机中的可用IP数。
Duration Number 购买时长。 取值:
  • 当PricingCycle取值Month时:1~9。
  • 当PricingCycle取值Year时:1~3。

当InstanceChargeType取值为PrePaid时,必须指定该参数。

DeletionProtection Boolean 是否开启删除保护功能。 取值:
  • true:开启删除保护功能。
  • false:关闭删除保护功能。
InternetChargeType String NAT网关的计费类型。 取值:PayByLcu,表示按使用量计费。
AutoPay Boolean 是否开启自动付费。 取值:
  • false:关闭自动付费,生成订单后需要到订单中心完成支付。
  • true(默认值):开启自动付费,自动支付订单。
当InstanceChargeType取值为PrePaid时,必须指定该参数。
NatType String NAT网关的类型。 取值:Enhanced,表示增强型NAT网关。
DeletionForce Boolean 是否强制删除NAT网关。 取值:
  • true:强制删除。
  • false:不强制删除。
VpcId String 需要创建NAT网关的专有网络ID。 如果您要创建的NAT网关类型为普通型NAT网关,请确保专有网络路由表中没有目标网段为0.0.0.0/0的路由条目。否则,请先删除该路由条目。
说明 如果您创建的NAT网关类型是增强型NAT网关,则无此限制。
NetworkType String NAT网关的网络类型。 取值:
  • Internet(默认值):公网NAT网关。
  • Intranet:私网NAT网关。
Tags List 标签。 最多可绑定20个标签。

更多信息,请参见Tags语法Tags属性

EipBindMode String NAT网关的EIP绑定模式。 取值:
  • MULTI_BINDED(默认值):多EIP网卡可见模式。
  • NAT:EIP普通模式,兼容IPv4网关。

    当NAT网关的EIP绑定模式为EIP普通模式时,NAT网关支持绑定的EIP数量上限为50个,且EIP将占用NAT网关所在交换机的一个私网IP。

    说明 当NAT网关所在的交换机没有可用的空闲私网地址时,NAT网关将无法绑定新的EIP。

Tags语法

"Tags": [
  {
    "Key": String,
    "Value": String
  }
]

Tags属性

属性名称 类型 必须 允许更新 描述 约束
Key String 标签键。 长度为1~64个字符,必须以英文字母或汉字开头,不能以aliyunacs:开头,不能包含http://https://。可包含英文字母、汉字、数字、半角句号(.)、下划线(_)和短划线(-)。
Value String 标签值。 长度为0~128个字符,必须以英文字母或汉字开头,不能以aliyunacs:开头,不能包含http://https://。可包含英文字母、汉字、数字、半角句号(.)、下划线(_)和短划线(-)。

返回值

Fn::GetAtt

  • NatGatewayId:NAT网关ID。
  • SNatTableId:SNAT条目ID。
  • ForwardTableId:DNAT条目ID。

示例

  • YAML格式

    ROSTemplateFormatVersion: '2015-09-01'
    Description: Test ECS NatGateway
    Parameters:
      VPC:
        AssociationProperty: ALIYUN::ECS::VPC::VPCId
        Type: String
        Label:
          zh-cn: 现有VPC的实例ID
          en: Existing VPC Instance ID
      VSwitch:
        AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
        Type: String
        Label:
          zh-cn: 网络交换机ID
          en: VSwitch ID
        AssociationPropertyMetadata:
          VpcId: VPC
    Resources:
      NatGateway:
        Type: ALIYUN::VPC::NatGateway
        Properties:
          NatGatewayName: mytest
          VpcId:
            Ref: VPC
          VSwitchId:
            Ref: VSwitch
    Outputs:
      NatGatewayId:
        Value:
          Fn::GetAtt:
            - NatGateway
            - NatGatewayId
      BandwidthPackageId:
        Value:
          Fn::GetAtt:
            - BandwidthPackage
            - BandwidthPackageId
      BandwidthPackageIps:
        Value:
          Fn::GetAtt:
            - CommonBandwidthPackageIp
            - IpAddresses
  • JSON格式

    {
      "ROSTemplateFormatVersion": "2015-09-01",
      "Description": "Test ECS NatGateway",
      "Parameters": {
        "VPC": {
          "AssociationProperty": "ALIYUN::ECS::VPC::VPCId",
          "Type": "String",
          "Label": {
            "zh-cn": "现有VPC的实例ID",
            "en": "Existing VPC Instance ID"
          }
        },
        "VSwitch": {
          "AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
          "Type": "String",
          "Label": {
            "zh-cn": "网络交换机ID",
            "en": "VSwitch ID"
          },
          "AssociationPropertyMetadata": {
            "VpcId": "VPC"
          }
        }
      },
      "Resources": {
        "NatGateway": {
          "Type": "ALIYUN::VPC::NatGateway",
          "Properties": {
            "NatGatewayName": "mytest",
            "VpcId": {
              "Ref": "VPC"
            },
            "VSwitchId": {
              "Ref": "VSwitch"
            }
          }
        }
      },
      "Outputs": {
        "NatGatewayId": {
          "Value": {
            "Fn::GetAtt": [
              "NatGateway",
              "NatGatewayId"
            ]
          }
        },
        "BandwidthPackageId": {
          "Value": {
            "Fn::GetAtt": [
              "BandwidthPackage",
              "BandwidthPackageId"
            ]
          }
        },
        "BandwidthPackageIps": {
          "Value": {
            "Fn::GetAtt": [
              "CommonBandwidthPackageIp",
              "IpAddresses"
            ]
          }
        }
      }
    }

更多示例,请参见JSON示例YAML示例