Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
La funzione intrinseca Fn::Cidr
restituisce una matrice di blocchi di indirizzi CIDR. Il numero di blocchi CIDR restituiti dipende dal parametro count
.
Dichiarazione
YAML
Sintassi per il nome completo della funzione:
Fn::Cidr:
- ipBlock
- count
- cidrBits
Sintassi per la forma breve:
!Cidr [ ipBlock
, count
, cidrBits
]
Parametri
- ipBlock
-
Il blocco di indirizzi CIDR specificato dall'utente da suddividere in blocchi CIDR più piccoli.
- count
-
Il numero di CIDRs da generare. L'intervallo valido è 1–256.
- cidrBits
-
Il numero di bit di sottorete per il CIDR. Ad esempio, specificando un valore "8" per questo parametro, verrà creato un CIDR con una mask "/ 24".
Nota
I bit di sottorete sono l'inverso della subnet mask. Per calcolare i bit host richiesti per un determinato bit di sottorete, sottraete i bit di sottorete da 32 per o 128 per. IPv4 IPv6
Valore restituito
Una matrice di blocchi di indirizzi CIDR.
Esempio
Utilizzo di base
Questo esempio crea 6 CIDRs con una maschera di sottorete «/27" all'interno di un CIDR con una maschera di «/24".
JSON
{ "Fn::Cidr" : [ "192.168.0.0/24", "6", "5"] }
YAML
!Cidr [ "192.168.0.0/24", 6, 5 ]
Creazione di un IPv6 VPC abilitato
Questo modello di esempio crea una sottorete IPv6 abilitata.
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
Funzioni supportate
È possibile utilizzare le funzioni seguenti in una funzione Fn::Cidr
.