Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Dieser Artikel beschreibt die Funktionen für das Arbeiten mit CIDR in Ihrer Azure Resource Manager-Vorlage (ARM-Vorlage).
Tipp
Wir empfehlen Bicep, weil es dieselben Funktionen wie ARM-Vorlagen bietet und die Syntax einfacher zu verwenden ist. Weitere Informationen finden Sie unter cidr-Funktionen.
parseCidr
parseCidr(network)
Parst einen IP-Adressbereich in CIDR-Notation, um verschiedene Eigenschaften des Adressbereichs abzurufen.
Verwenden Sie in Bicep die Funktion parseCidr.
Parameter
Parameter | Erforderlich | Type | BESCHREIBUNG |
---|---|---|---|
network | Ja | Zeichenfolge | Zeichenfolge in CIDR-Notation, die einen zu konvertierenden IP-Adressbereich enthält. |
Rückgabewert
Ein Objekt, das verschiedene Eigenschaften des Adressbereichs enthält.
Beispiele
Im folgenden Beispiel wird eine IPv4-CIDR-Zeichenfolge geparst:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v4info": {
"type": "object",
"value": "[parseCidr('10.144.0.0/20')]"
}
}
}
Im vorherigen Beispiel wird das folgende Objekt zurückgegeben:
{
"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
}
Im folgenden Beispiel wird eine IPv6-CIDR-Zeichenfolge geparst:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v6info": {
"type": "object",
"value": "[parseCidr('fdad:3236:5555::/48')]"
}
}
}
Im vorherigen Beispiel wird das folgende Objekt zurückgegeben:
{
"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)
Teilt den angegebenen IP-Adressbereich in der CIDR-Notation in Subnetze mit einem neuen CIDR-Wert auf und gibt den IP-Adressbereich des Subnetzes mit dem angegebenen Index zurück.
Verwenden Sie in Bicep die Funktion cidrSubnet.
Parameter
Parameter | Erforderlich | Type | BESCHREIBUNG |
---|---|---|---|
network | Ja | Zeichenfolge | Zeichenfolge mit einem IP-Adressbereich, der in CIDR-Notation konvertiert werden soll. |
newCIDR | Ja | INT | Eine ganze Zahl, die das CIDR darstellt, das für das Subnetz verwendet werden soll. Dieser Wert sollte gleich oder größer als der CIDR-Wert im Parameter network sein. |
subnetIndex | Ja | INT | Index des gewünschten IP-Adressbereichs des Subnetzes, der zurückgegeben werden soll. |
Rückgabewert
Eine Zeichenfolge des IP-Adressbereichs des Subnetzes mit dem angegebenen Index.
Beispiele
Im folgenden Beispiel werden die ersten fünf /24-Subnetzbereiche aus dem angegebenen /20 berechnet:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v4subnets": {
"type": "array",
"copy": {
"count": "[length(range(0, 5))]",
"input": "[cidrSubnet('10.144.0.0/20', 24, range(0, 5)[copyIndex()])]"
}
}
}
}
Im vorherigen Beispiel wird das folgende Array zurückgegeben:
[
"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"
]
Im folgenden Beispiel werden die ersten fünf /52-Subnetzbereiche aus dem angegebenen /48 berechnet:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v6subnets": {
"type": "array",
"copy": {
"count": "[length(range(0, 5))]",
"input": "[cidrSubnet('fdad:3236:5555::/48', 52, range(0, 5)[copyIndex()])]"
}
}
}
}
Im vorherigen Beispiel wird das folgende Array zurückgegeben:
[
"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)
Berechnet die verwendbare IP-Adresse des Hosts mit dem angegebenen Index für den angegebenen IP-Adressbereich in CIDR-Notation. Im Fall von 192.168.1.0/24
gibt es beispielsweise reservierte IP-Adressen: 192.168.1.0
dient als Netzwerkbezeichneradresse, während 192.168.1.255
als Broadcastadresse fungiert. Nur IP-Adressen von 192.168.1.1
bis 192.168.1.254
können Hosts zugewiesen werden. Sie werden als „verwendbare“ IP-Adressen bezeichnet. Wenn also die Funktion übergeben wird, wird der hostIndex 0
, 192.168.1.1
zurückgegeben.
Verwenden Sie in Bicep die Funktion cidrHost.
Parameter
Parameter | Erforderlich | Type | BESCHREIBUNG |
---|---|---|---|
network | Ja | Zeichenfolge | Zeichenfolge, die ein zu konvertierendes IP-Netzwerk enthält (muss das richtige Netzwerkformat aufweisen). |
hostIndex | Ja | INT | Der Index der zurückzugebenden Host-IP-Adresse. |
Rückgabewert
Eine Zeichenfolge der IP-Adresse.
Beispiele
Im folgenden Beispiel werden die ersten fünf verwendbaren Host-IP-Adressen aus dem angegebenen /24 berechnet:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v4hosts": {
"type": "array",
"copy": {
"count": "[length(range(0, 5))]",
"input": "[cidrHost('10.144.3.0/24', range(0, 5)[copyIndex()])]"
}
}
}
}
Im vorherigen Beispiel wird das folgende Array zurückgegeben:
[
"10.144.3.1"
"10.144.3.2"
"10.144.3.3"
"10.144.3.4"
"10.144.3.5"
]
Im folgenden Beispiel werden die ersten fünf verwendbaren Host-IP-Adressen aus dem angegebenen /52 berechnet:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [],
"outputs": {
"v6hosts": {
"type": "array",
"copy": {
"count": "[length(range(0, 5))]",
"input": "[cidrHost('fdad:3236:5555:3000::/52', range(0, 5)[copyIndex()])]"
}
}
}
}
Im vorherigen Beispiel wird das folgende Array zurückgegeben:
[
"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ächste Schritte
- Eine Beschreibung der Abschnitte in einer ARM-Vorlage finden Sie unter Grundlegendes zur Struktur und Syntax von ARM-Vorlagen.