ALIYUN::VPC::NatGateway

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,
    "IcmpReplyEnabled": Boolean,
    "SecurityProtectionEnabled": Boolean
  }
}

属性

属性名称

类型

必须

允许更新

描述

约束

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。

IcmpReplyEnabled

Boolean

是否开启ICMP不代回功能。

取值:

  • true:开启ICMP不代回功能。

  • false(默认值):不开启ICMP不代回功能。

SecurityProtectionEnabled

Boolean

是否开启防火墙功能。

取值:

  • true:开启防火墙功能。

  • false(默认值):不开启防火墙功能。

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"
        ]
      }
    }
  }
}