Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Fn::Cidr
Die systeminterne Funktion Fn::Cidr
gibt ein Array von Adressblöcken zurück. CIDR Die Anzahl der zurückgegebenen CIDR Blöcke hängt vom Parameter ab. count
Deklaration
YAML
Syntax für den vollständigen Funktionsnamen:
Fn::Cidr: -
ipBlock
-count
-cidrBits
Syntax für die Kurzform:
!Cidr [
ipBlock
,count
,cidrBits
]
Parameter
- ipBlock
-
Der vom Benutzer angegebene CIDR Adressblock, der in kleinere CIDR Blöcke aufgeteilt werden soll.
- count
-
Die Anzahl der CIDRs zu generierenden. Der gültige Bereich liegt zwischen 1 und 256.
- cidrBits
-
Die Anzahl der Subnetz-Bits für dieCIDR. Wenn Sie beispielsweise den Wert „8“ für diesen Parameter angeben, wird ein Wert CIDR mit der Maske „/24“ erstellt.
Anmerkung
Subnetz-Bits ist der invertierte Wert der Subnetzmaske. Um die erforderlichen Hostbits für ein bestimmtes Subnetz zu berechnen, subtrahieren Sie die Subnetzbits von 32 für oder 128 für. IPv4 IPv6
Rückgabewert
Eine Reihe von Adressblöcken. CIDR
Beispiel
Grundlegende Verwendung
In diesem Beispiel werden 6 CIDRs mit der Subnetzmaske „/27" innerhalb von A CIDR mit der Maske „/24" erstellt.
JSON
{ "Fn::Cidr" : [ "192.168.0.0/24", "6", "5"] }
YAML
!Cidr [ "192.168.0.0/24", 6, 5 ]
Erstellen eines aktivierten IPv6 VPC
Diese Beispielvorlage erstellt ein IPv6 aktiviertes Subnetz.
JSON
{ "Resources": { "ExampleVpc": { "Type": "AWS::EC2::VPC", "Properties": { "CidrBlock": "10.0.0.0/16" } }, "IPv6CidrBlock": { "Type": "AWS::EC2::VPCCidrBlock", "Properties": { "AmazonProvidedIpv6CidrBlock": true, "VpcId": { "Ref": "ExampleVpc" } } }, "ExampleSubnet": { "Type": "AWS::EC2::Subnet", "DependsOn": "IPv6CidrBlock", "Properties": { "AssignIpv6AddressOnCreation": true, "CidrBlock": { "Fn::Select": [ 0, { "Fn::Cidr": [ { "Fn::GetAtt": [ "ExampleVpc", "CidrBlock" ] }, 1, 8 ] } ] }, "Ipv6CidrBlock": { "Fn::Select": [ 0, { "Fn::Cidr": [ { "Fn::Select": [ 0, { "Fn::GetAtt": [ "ExampleVpc", "Ipv6CidrBlocks" ] } ] }, 1, 64 ] } ] }, "VpcId": { "Ref": "ExampleVpc" } } } } }
YAML
Resources: ExampleVpc: Type: AWS::EC2::VPC Properties: CidrBlock: 10.0.0.0/16 IPv6CidrBlock: Type: AWS::EC2::VPCCidrBlock Properties: AmazonProvidedIpv6CidrBlock: true VpcId: !Ref ExampleVpc ExampleSubnet: Type: AWS::EC2::Subnet DependsOn: IPv6CidrBlock Properties: AssignIpv6AddressOnCreation: true CidrBlock: !Select - 0 - !Cidr - !GetAtt ExampleVpc.CidrBlock - 1 - 8 Ipv6CidrBlock: !Select - 0 - !Cidr - !Select - 0 - !GetAtt ExampleVpc.Ipv6CidrBlocks - 1 - 64 VpcId: !Ref ExampleVpc
Unterstützte Funktionen
Sie können die folgenden Funktionen in einer Fn::Cidr
-Funktion verwenden: