AWS::EC2::VPCCidrBlock - AWS CloudFormation
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

AWS::EC2::VPCCidrBlock

将 CIDR 块与 VPC 关联。您只能将一个 IPv6 CIDR 块与您的 VPC 关联。IPv6 CIDR 块大小固定为 /56。

有关将 CIDR 块与您的 VPC 和适用的限制关联的更多信息,请参阅 Amazon Virtual Private Cloud 用户指南 中的 VPC 和子网大小调整

语法

要在 AWS CloudFormation 模板中声明此实体,请使用以下语法:

JSON

{ "Type" : "AWS::EC2::VPCCidrBlock", "Properties" : { "AmazonProvidedIpv6CidrBlock" : Boolean, "CidrBlock" : String, "VpcId" : String } }

YAML

Type: AWS::EC2::VPCCidrBlock Properties: AmazonProvidedIpv6CidrBlock: Boolean CidrBlock: String VpcId: String

属性

AmazonProvidedIpv6CidrBlock

为 VPC 请求 Amazon 提供的 IPv6 CIDR 块(前缀长度为 /56)。您无法指定 IPv6 地址的范围或 CIDR 块的大小。

必需:否

类型:布尔值

Update requires: Replacement

CidrBlock

要与 VPC 关联的 IPv4 CIDR 块。

必需:否

类型:字符串

Update requires: Replacement

VpcId

VPC 的 ID。

必需:是

类型:字符串

Update requires: Replacement

返回值

Ref

在将此资源的逻辑 ID 传递给内部 Ref 函数时,Ref 返回 VPC CIDR 块的关联 ID。

For more information about using the Ref function, see Ref.

示例

关联 Amazon 提供的 IPv6 CIDR 块

以下示例将 Amazon 提供的 IPv6 CIDR 块(前缀长度为 /56)与 TestVPCIpv6 VPC 相关联。

JSON

"Ipv6VPCCidrBlock": { "Type": "AWS::EC2::VPCCidrBlock", "Properties": { "AmazonProvidedIpv6CidrBlock": true, "VpcId": { "Ref" : "TestVPCIpv6" } } }

YAML

Ipv6VPCCidrBlock: Type: AWS::EC2::VPCCidrBlock Properties: AmazonProvidedIpv6CidrBlock: true VpcId: !Ref TestVPCIpv6

关联 IPv4 CIDR 块和 Amazon 提供的 IPv6 CIDR 块

以下示例将 IPv4 CIDR 块和 Amazon 提供的 IPv6 CIDR 块与 VPC 相关联。它还输出与 VPC 关联的 IPv4 CIDR 块关联 ID 和 IPv6 CIDR 块的列表。

JSON

{ "Resources": { "VPC": { "Type": "AWS::EC2::VPC", "Properties": { "CidrBlock": "10.0.0.0/24" } }, "VpcCidrBlock": { "Type": "AWS::EC2::VPCCidrBlock", "Properties": { "VpcId": { "Ref": "VPC" }, "CidrBlock": "192.0.0.0/24" } }, "VpcCidrBlockIpv6": { "Type": "AWS::EC2::VPCCidrBlock", "Properties": { "VpcId": { "Ref": "VPC" }, "AmazonProvidedIpv6CidrBlock": true } } }, "Outputs": { "VpcId": { "Value": { "Ref": "VPC" } }, "PrimaryCidrBlock": { "Value": { "Fn::GetAtt": [ "VPC", "CidrBlock" ] } }, "Ipv6CidrBlock": { "Value": { "Fn::Select": [ 0, { "Fn::GetAtt": [ "VPC", "Ipv6CidrBlocks" ] } ] } }, "CidrBlockAssociation": { "Value": { "Fn::Select": [ 0, { "Fn::GetAtt": [ "VPC", "CidrBlockAssociations" ] } ] } } } }

YAML

Resources: VPC: Type: AWS::EC2::VPC Properties: CidrBlock: 10.0.0.0/24 VpcCidrBlock: Type: AWS::EC2::VPCCidrBlock Properties: VpcId: !Ref VPC CidrBlock: 192.0.0.0/24 VpcCidrBlockIpv6: Type: AWS::EC2::VPCCidrBlock Properties: VpcId: !Ref VPC AmazonProvidedIpv6CidrBlock: true Outputs: VpcId: Value: !Ref VPC PrimaryCidrBlock: Value: !GetAtt VPC.CidrBlock Ipv6CidrBlock: Value: !Select [ 0, !GetAtt VPC.Ipv6CidrBlocks ] CidrBlockAssociation: Value: !Select [ 0, !GetAtt VPC.CidrBlockAssociations ]