parse_ipv6_mask()
Gilt für: ✅Microsoft Fabric✅Azure Data Explorer✅Azure Monitor✅Microsoft Sentinel
Konvertiert IPv6/IPv4-Zeichenfolge und Netmaske in eine kanonische IPv6-Zeichenfolgendarstellung.
Syntax
parse_ipv6_mask(
IP-Präfix,
)
Erfahren Sie mehr über Syntaxkonventionen.
Parameter
Name | Type | Erforderlich | Beschreibung |
---|---|---|---|
ip | string |
Die IPv6/IPv4-Netzwerkadresse, die in eine kanonische IPv6-Darstellung konvertiert werden soll. Der Wert kann eine Netmaske mit IP-Präfixnotation enthalten. | |
Präfix | int |
Eine ganze Zahl zwischen 0 und 128, die die Anzahl der wichtigsten Bits darstellt, die berücksichtigt werden. |
IP-Präfixnotation
Ip-Präfixnotation (auch als CIDR-Notation bezeichnet) ist eine präzise Möglichkeit, eine IP-Adresse und die zugehörige Netzwerkmaske darzustellen. Das Format ist <base IP>/<prefix length>
, wobei die Präfixlänge die Anzahl der führenden 1 Bits in der Netzmaske ist. Die Präfixlänge bestimmt den Bereich der IP-Adressen, die zum Netzwerk gehören.
Bei IPv4 ist die Präfixlänge eine Zahl zwischen 0 und 32. Die Notation 192.168.2.0/24 stellt also die IP-Adresse 192.168.2.0 mit einer Netmask von 255.255.255.255.0 dar. Diese Netmaske hat 24 führende 1 Bit oder eine Präfixlänge von 24.
Bei IPv6 ist die Präfixlänge eine Zahl zwischen 0 und 128. Daher stellt die Notation fe80::85d:e82c:9446:7994/120 die IP-Adresse fe80::85d:e82c:9446:7994 mit einer Netmaske von ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00 dar. Diese Netmaske hat 120 führende 1 Bit oder eine Präfixlänge von 120.
Gibt zurück
Wenn die Konvertierung erfolgreich ist, ist das Ergebnis eine Zeichenfolge, die eine kanonische IPv6-Netzwerkadresse darstellt. Wenn die Konvertierung nicht erfolgreich ist, ist das Ergebnis eine leere Zeichenfolge.
Beispiel
datatable(ip_string: string, netmask: long)
[
// IPv4 addresses
'192.168.255.255', 120, // 120-bit netmask is used
'192.168.255.255/24', 124, // 120-bit netmask is used, as IPv4 address doesn't use upper 8 bits
'255.255.255.255', 128, // 128-bit netmask is used
// IPv6 addresses
'fe80::85d:e82c:9446:7994', 128, // 128-bit netmask is used
'fe80::85d:e82c:9446:7994/120', 124, // 120-bit netmask is used
// IPv6 with IPv4 notation
'::192.168.255.255', 128, // 128-bit netmask is used
'::192.168.255.255/24', 128, // 120-bit netmask is used, as IPv4 address doesn't use upper 8 bits
]
| extend ip6_canonical = parse_ipv6_mask(ip_string, netmask)
Output
ip_string | Netmask | ip6_canonical |
---|---|---|
192.168.255.255 | 120 | 0000:0000:0000:0000:0000:ffff:c0a8:ff00 |
192.168.255.255/24 | 124 | 0000:0000:0000:0000:0000:ffff:c0a8:ff00 |
255.255.255.255 | 128 | 0000:0000:0000:0000:0000:ffff:ffff:ffff |
fe80::85d:e82c:9446:7994 | 128 | fe80:0000:0000:0000:085d:e82c:9446:7994 |
fe80::85d:e82c:9446:7994/120 | 124 | fe80:0000:0000:0000:085d:e82c:9446:7900 |
::192.168.255.255 | 128 | 0000:0000:0000:0000:0000:ffff:c0a8:ffff |
::192.168.255.255/24 | 128 | 0000:0000:0000:0000:0000:ffff:c0a8:ff00 |