Condividi tramite


ipv6_is_in_any_range()

Si applica a: ✅Microsoft Fabric✅Azure Esplora dati Azure MonitorMicrosoft Sentinel

Controlla se un indirizzo stringa IPv6 si trova in uno degli intervalli di indirizzi IPv6 specificati.

Suggerimenti per incrementare le prestazioni

Nota

Quando vengono usati più di 128 termini di ricerca, l'ottimizzazione della ricerca dell'indice di testo è disabilitata, riducendo così le prestazioni delle query.

Sintassi

ipv6_is_in_any_range(Ipv6Address , Ipv6Range [ , Ipv6Range ...])

ipv6_is_in_any_range(Ipv6Address , Ipv6Ranges )

Altre informazioni sulle convenzioni di sintassi.

Parametri

Nome Digita Obbligatorio Descrizione
Ipv6Address string ✔️ Espressione che rappresenta un indirizzo IPv6.
Ipv6Range string ✔️ Espressione che rappresenta un intervallo IPv6 utilizzando la notazione con prefisso IP.
Ipv6Ranges dynamic ✔️ Matrice contenente intervalli IPv6 tramite la notazione del prefisso IP.

Nota

È necessaria una o più stringhe IPv6Range o una matrice dinamica IPv6Ranges .

Notazione del prefisso IP

La notazione del prefisso IP (nota anche come notazione CIDR) è un modo conciso di rappresentare un indirizzo IP e la relativa maschera di rete associata. Il formato è <base IP>/<prefix length>, dove la lunghezza del prefisso è il numero di 1 bit iniziali nella maschera di rete. La lunghezza del prefisso determina l'intervallo di indirizzi IP che appartengono alla rete.

Per IPv4, la lunghezza del prefisso è un numero compreso tra 0 e 32. La notazione 192.168.2.0/24 rappresenta quindi l'indirizzo IP 192.168.2.0 con una maschera di rete 255.255.255.0. Questa maschera di rete ha 24 bit iniziali 1 o una lunghezza del prefisso pari a 24.

Per IPv6, la lunghezza del prefisso è un numero compreso tra 0 e 128. La notazione fe80::85d:e82c:9446:7994/120 rappresenta l'indirizzo IP fe80::85d:e82c:9446:7994 con una maschera di rete ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00. Questa maschera di rete ha 120 bit iniziali 1 o una lunghezza del prefisso pari a 120.

Valori restituiti

  • true: se l'indirizzo IPv6 è compreso nell'intervallo di una delle reti IPv6 specificate.
  • false:Altrimenti.
  • null: se la conversione per una delle due stringhe IPv6 non è riuscita.

Esempio

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)

Output

IP ÈLocale
a5e:f127:8a9d:146d:e102:b5d3:c755:abcd Vero
a5e:f127:8a9d:146d:e102:b5d3:c755:abce Vero
a5e:f127:8a9d:146d:e102:b5d3:c755:abcf Vero
a5e:f127:8a9d:146d:e102:b5d3:c756:abd1 Falso