ipv6_is_in_any_range()
Comprueba si una dirección de cadena IPv6 está en cualquiera de los intervalos de direcciones IPv6 especificados.
Syntax
ipv6_is_in_any_range(
Ipv6Address,
Ipv6Range [ ,
Ipv6Range ...] )
ipv6_is_in_any_range(
Ipv6Address,
Ipv6Ranges)
Más información sobre las convenciones de sintaxis.
Parámetros
Nombre | Tipo | Requerido | Descripción |
---|---|---|---|
Ipv6Address | string |
✔️ | Expresión que representa una dirección IPv6. |
Ipv6Range | string |
✔️ | Expresión que representa un intervalo IPv6 mediante la notación de prefijo IP. |
Ipv6Ranges | dynamic |
✔️ | Matriz que contiene intervalos IPv6 mediante notación de prefijo IP. |
Nota
Se requieren una o varias cadenas IPv6Range o una matriz dinámica IPv6Ranges .
Notación de prefijo IP
La notación de prefijo IP (también conocida como notación CIDR) es una forma concisa de representar una dirección IP y su máscara de red asociada. El formato es <base IP>/<prefix length>
, donde la longitud del prefijo es el número de 1 bits iniciales en la máscara de red. La longitud del prefijo determina el intervalo de direcciones IP que pertenecen a la red.
Para IPv4, la longitud del prefijo es un número entre 0 y 32. Por lo tanto, la notación 192.168.2.0/24 representa la dirección IP 192.168.2.0 con una máscara de red de 255.255.255.0. Esta máscara de red tiene 24 bits iniciales o una longitud de prefijo de 24.
Para IPv6, la longitud del prefijo es un número entre 0 y 128. Por lo tanto, la notación fe80::85d:e82c:9446:7994/120 representa la dirección IP fe80::85d:e82c:9446:7994 con una máscara de red de ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00. Esta máscara de red tiene 120 bits iniciales o una longitud de prefijo de 120.
Devoluciones
true
: si la dirección IPv6 está en el intervalo de cualquiera de las redes IPv6 especificadas.false
:Lo contrario.null
: si la conversión de una de las dos cadenas IPv6 no se realizó correctamente.
Ejemplo
let LocalNetworks=dynamic([
"a5e:f127:8a9d:146d:e102:b5d3:c755:f6cd/112",
"0:0:0:0:0:ffff:c0a8:ac/60"
]);
let IPs=datatable(IP:string) [
"a5e:f127:8a9d:146d:e102:b5d3:c755:abcd",
"a5e:f127:8a9d:146d:e102:b5d3:c755:abce",
"a5e:f127:8a9d:146d:e102:b5d3:c755:abcf",
"a5e:f127:8a9d:146d:e102:b5d3:c756:abd1",
];
IPs
| extend IsLocal=ipv6_is_in_any_range(IP, LocalNetworks)
Salida
IP | IsLocal |
---|---|
a5e:f127:8a9d:146d:e102:b5d3:c755:abcd | True |
a5e:f127:8a9d:146d:e102:b5d3:c755:abce | True |
a5e:f127:8a9d:146d:e102:b5d3:c755:abcf | True |
a5e:f127:8a9d:146d:e102:b5d3:c756:abd1 | False |
Contenido relacionado
- Introducción a las funciones IPv4/IPv6
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de