Partager via


ipv4_is_in_range()

Vérifie si l’adresse de chaîne IPv4 est comprise dans la plage de notation de préfixe IPv4.

Syntax

ipv4_is_in_range(Ipv4Address,Ipv4Range)

Découvrez les conventions de syntaxe.

Paramètres

Nom Type Obligatoire Description
Ipv4Address string ✔️ Expression représentant une adresse IPv4.
Ipv4Range string ✔️ Une plage IPv4 ou une liste de plages IPv4 écrites avec une notation de préfixe IP.

Notation de préfixe IP

La notation de préfixe IP (également appelée notation CIDR) est un moyen concis de représenter une adresse IP et son masque réseau associé. Le format est <base IP>/<prefix length>, où la longueur du préfixe est le nombre de 1 bits de début dans le masque de réseau. La longueur du préfixe détermine la plage d’adresses IP qui appartiennent au réseau.

Pour IPv4, la longueur du préfixe est un nombre compris entre 0 et 32. Ainsi, la notation 192.168.2.0/24 représente l’adresse IP 192.168.2.0 avec un masque réseau de 255.255.255.0. Ce masque de réseau a 24 1 bits de début, ou une longueur de préfixe de 24.

Pour IPv6, la longueur du préfixe est un nombre compris entre 0 et 128. Ainsi, la notation fe80 ::85d :e82c :9446 :7994/120 représente l’adresse IP fe80 ::85d :e82c :9446 :7994 avec un masque de réseau de ffff :ffff :ffff :ffff :ffff :ffff :ff00. Ce masque réseau a 120 bits de début, ou une longueur de préfixe de 120.

Retours

  • true: si la représentation longue du premier argument de chaîne IPv4 se trouve dans la plage du deuxième argument de chaîne IPv4.
  • false:Sinon.
  • null: si la conversion de l’une des deux chaînes IPv4 n’a pas réussi.

Exemple

datatable(ip_address:string, ip_range:string)
[
 '192.168.1.1',    '192.168.1.1',       // Equal IPs
 '192.168.1.1',    '192.168.1.255/24',  // 24 bit IP-prefix is used for comparison
]
| extend result = ipv4_is_in_range(ip_address, ip_range)

Sortie

ip_address ip_range result
192.168.1.1 192.168.1.1 true
192.168.1.1 192.168.1.255/24 true