ALIYUN::VPC::NatGateway类型用于创建NAT网关。
语法
{
  "Type": "ALIYUN::VPC::NatGateway",
  "Properties": {
    "Description": String,
    "NatGatewayName": String,
    "InstanceChargeType": String,
    "VSwitchId": String,
    "DeletionProtection": Boolean,
    "InternetChargeType": String,
    "NatType": String,
    "DeletionForce": Boolean,
    "VpcId": String,
    "Tags": List,
    "NetworkType": String,
    "EipBindMode": String,
    "IcmpReplyEnabled": Boolean,
    "SecurityProtectionEnabled": Boolean
  }
}属性
| 属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 | 
| Description | String | 否 | 否 | NAT网关的描述。 | 长度为2~256个字符,不能以 | 
| NatGatewayName | String | 否 | 否 | NAT网关的名称。 | 长度为2~128个字符,必须以英文字母或汉字开头,不能以 如果没有指定该参数,默认使用网关ID作为名称。 | 
| InstanceChargeType | String | 否 | 否 | NAT网关的付费模式。 | 取值: 
 | 
| VSwitchId | String | 是 | 否 | NAT网关所属的交换机ID。 | 创建增强型NAT网关时,您必须指定NAT网关所属的交换机,系统会为增强型NAT网关分配一个交换机内的空闲私网IP地址。 
 您可以通过ListEnhanhcedNatGatewayAvailableZones接口查询增强型NAT网关的资源可用区,通过DescribeVSwitches接口查询交换机中的可用IP数。 | 
| DeletionProtection | Boolean | 否 | 是 | 是否开启删除保护功能。 | 取值: 
 | 
| InternetChargeType | String | 否 | 否 | NAT网关的计费类型。 | 取值:PayByLcu,表示按使用量计费。 | 
| NatType | String | 否 | 否 | NAT网关的类型。 | 取值:Enhanced,表示增强型NAT网关。 | 
| DeletionForce | Boolean | 否 | 否 | 是否强制删除NAT网关。 | 取值: 
 | 
| VpcId | String | 是 | 否 | 需要创建NAT网关的专有网络ID。 | 如果您要创建的NAT网关类型为普通型NAT网关,请确保专有网络路由表中没有目标网段为0.0.0.0/0的路由条目。否则,请先删除该路由条目。 说明  如果您创建的NAT网关类型是增强型NAT网关,则无此限制。 | 
| NetworkType | String | 否 | 否 | NAT网关的网络类型。 | 取值: 
 | 
| Tags | List | 否 | 是 | 标签。 | 最多可绑定20个标签。 | 
| EipBindMode | String | 否 | 否 | NAT网关的EIP绑定模式。 | 取值: 
 | 
| IcmpReplyEnabled | Boolean | 否 | 否 | 是否开启ICMP不代回功能。 | 取值: 
 | 
| SecurityProtectionEnabled | Boolean | 否 | 否 | 是否开启防火墙功能。 | 取值: 
 | 
Tags语法
"Tags": [
  {
    "Key": String,
    "Value": String
  }
]Tags属性
| 属性名称 | 类型 | 必须 | 允许更新 | 描述 | 约束 | 
| Key | String | 是 | 否 | 标签键。 | 长度为1~64个字符,必须以英文字母或汉字开头,不能以 | 
| Value | String | 否 | 否 | 标签值。 | 长度为0~128个字符,必须以英文字母或汉字开头,不能以 | 
返回值
Fn::GetAtt
- NatGatewayId:NAT网关ID。 
- SNatTableId:SNAT条目ID。 
- ForwardTableId:DNAT条目ID。 
示例
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{
  "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"
        ]
      }
    }
  }
}