Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
CIDR (Classless Inter-Domain Routing) är en metod för att allokera IP-adresser och dirigera IP-paket (Internet Protocol). Den här artikeln beskriver Bicep-funktionerna för att arbeta med CIDR.
parseCidr
parseCidr(network)
Parsar ett IP-adressintervall i CIDR-notation för att hämta olika egenskaper för adressintervallet.
Namnområde: sys.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning |
|---|---|---|---|
| network | Ja | sträng | Sträng i CIDR-notation som innehåller ett IP-adressintervall som ska konverteras. |
Returvärde
Ett objekt som innehåller olika egenskaper för adressintervallet.
Exempel
I följande exempel parsas en IPv4 CIDR-sträng:
output v4info object = parseCidr('10.144.0.0/20')
Föregående exempel returnerar följande objekt:
{
"network":"10.144.0.0",
"netmask":"255.255.240.0",
"broadcast":"10.144.15.255",
"firstUsable":"10.144.0.1",
"lastUsable":"10.144.15.254",
"cidr":20
}
I följande exempel parsas en IPv6 CIDR-sträng:
output v6info object = parseCidr('fdad:3236:5555::/48')
Föregående exempel returnerar följande objekt:
{
"network":"fdad:3236:5555::",
"netmask":"ffff:ffff:ffff::",
"firstUsable":"fdad:3236:5555::",
"lastUsable":"fdad:3236:5555:ffff:ffff:ffff:ffff:ffff",
"cidr":48
}
cidrSubnet
cidrSubnet(network, newCIDR, subnetIndex)
Delar upp det angivna IP-adressintervallet i CIDR-notationen i undernät med ett nytt CIDR-värde och returnerar IP-adressintervallet för undernätet med det angivna indexet.
Namnområde: sys.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning |
|---|---|---|---|
| network | Ja | sträng | Sträng som innehåller ett IP-adressintervall som ska konverteras i CIDR-notation. |
| newCIDR | Ja | heltal | Ett heltal som representerar den CIDR som ska användas för undernät. Det här värdet ska vara lika med eller större än CIDR-värdet i parametern network . |
| undernätIndex | Ja | heltal | Index för det önskade IP-adressintervallet för undernätet som ska returneras. |
Returvärde
En sträng med IP-adressintervallet för undernätet med det angivna indexet.
Exempel
I följande exempel beräknas de första fem /24 undernätsintervallen från angiven /20:
output v4subnets array = [for i in range(0, 5): cidrSubnet('10.144.0.0/20', 24, i)]
Föregående exempel returnerar följande matris:
[
"10.144.0.0/24",
"10.144.1.0/24",
"10.144.2.0/24",
"10.144.3.0/24",
"10.144.4.0/24"
]
I följande exempel beräknas de första fem /52 undernätsintervallen från angiven /48:
output v6subnets array = [for i in range(0, 5): cidrSubnet('fdad:3236:5555::/48', 52, i)]
Föregående exempel returnerar följande matris:
[
"fdad:3236:5555::/52"
"fdad:3236:5555:1000::/52"
"fdad:3236:5555:2000::/52"
"fdad:3236:5555:3000::/52"
"fdad:3236:5555:4000::/52"
]
cidrHost
cidrHost(network, hostIndex)
Beräknar värdens användbara IP-adress med det angivna indexet för det angivna IP-adressintervallet i CIDR-notationen. När det gäller finns det till exempel 192.168.1.0/24reserverade IP-adresser: 192.168.1.0 fungerar som nätverksidentifieraradress, medan 192.168.1.255 fungerar som sändningsadress. Endast IP-adresser från 192.168.1.1 till 192.168.1.254 kan tilldelas till värdar, som vi kallar "användbara" IP-adresser. När funktionen skickas returneras alltså ett hostIndex för 0. 192.168.1.1
I Azure finns det ytterligare IP-adresser reserverade i varje undernät, som inkluderar de fyra första och sista IP-adresserna, totalt fem reserverade IP-adresser. När det till exempel gäller IP-adressintervallet 192.168.1.0/24är följande adresser reserverade:
192.168.1.0: Nätverksadress.192.168.1.1: Reserverad av Azure för standardgatewayen.192.168.1.2,192.168.1.3: Reserverad av Azure för att mappa Azure DNS-IP-adresserna till det virtuella nätverkets utrymme.192.168.1.255: Nätverkssändningsadress.
Namnområde: sys.
Parametrar
| Parameter | Obligatoriskt | Type | Beskrivning |
|---|---|---|---|
| network | Ja | sträng | Sträng som innehåller ett IP-nätverk som ska konverteras. Den angivna strängen måste ha rätt nätverksformat. |
| hostIndex | Ja | heltal | Indexet avgör vilken värd-IP-adress som ska returneras. Om du använder värdet 0ger det dig den första användbara IP-adressen för ett icke-Azure-nätverk. Men om du använder 3ger det dig den första användbara IP-adressen för ett Azure-undernät. |
Returvärde
En sträng med IP-adressen.
Exempel
I följande exempel beräknas de första fem användbara värd-IP-adresserna från angivna /24 i icke-Azure-nätverk:
output v4hosts array = [for i in range(0, 5): cidrHost('10.144.3.0/24', i)]
Föregående exempel returnerar följande matris:
[
"10.144.3.1"
"10.144.3.2"
"10.144.3.3"
"10.144.3.4"
"10.144.3.5"
]
I följande exempel beräknas de första fem användbara värd-IP-adresserna från angivna /52 i icke-Azure-nätverk:
output v6hosts array = [for i in range(0, 5): cidrHost('fdad:3236:5555:3000::/52', i)]
Föregående exempel returnerar följande matris:
[
"fdad:3236:5555:3000::1"
"fdad:3236:5555:3000::2"
"fdad:3236:5555:3000::3"
"fdad:3236:5555:3000::4"
"fdad:3236:5555:3000::5"
]
Nästa steg
- En beskrivning av avsnitten i en Bicep-fil finns i Förstå strukturen och syntaxen för Bicep-filer.