ipv4_is_private()
Verifica se o endereço da cadeia IPv4 pertence a um conjunto de IPs de rede privada.
Os endereços de rede privada foram originalmente definidos para ajudar a atrasar o esgotamento do endereço IPv4. Os pacotes IP provenientes ou endereçados a um endereço IP privado não podem ser encaminhados através da Internet pública.
Endereços IPv4 privados
O Grupo de Trabalho de Engenharia da Internet (IETF) direcionou a Autoridade de Números Atribuídos à Internet (IANA) para reservar os seguintes intervalos de endereços IPv4 para redes privadas:
Intervalo de endereços IP | Número de endereços | Maior bloco CIDR (máscara de sub-rede) |
---|---|---|
10.0.0.0 – 10.255.255.255 | 16777216 | 10.0.0.0/8 (255.0.0.0) |
172.16.0.0 – 172.31.255.255 | 1048576 | 172.16.0.0/12 (255.240.0.0) |
192.168.0.0 – 192.168.255.255 | 65536 | 192.168.0.0/16 (255.255.0.0) |
ipv4_is_private('192.168.1.1/24') == true
ipv4_is_private('10.1.2.3/24') == true
ipv4_is_private('202.1.2.3') == false
ipv4_is_private("127.0.0.1") == false
Syntax
ipv4_is_private(
ip)
Saiba mais sobre as convenções de sintaxe.
Parâmetros
Nome | Tipo | Necessário | Descrição |
---|---|---|---|
ip | string |
✔️ | Uma expressão que representa um endereço IPv4. As cadeias IPv4 podem ser mascaradas com notação de prefixo IP. |
Notação de prefixo IP
A notação de prefixo IP (também conhecida como notação CIDR) é uma forma concisa de representar um endereço IP e a máscara de rede associada. O formato é <base IP>/<prefix length>
, em que o comprimento do prefixo é o número de 1 bits à esquerda no netmask. O comprimento do prefixo determina o intervalo de endereços IP que pertencem à rede.
Para IPv4, o comprimento do prefixo é um número entre 0 e 32. Assim, a notação 192.168.2.0/24 representa o endereço IP 192.168.2.0 com uma máscara de rede de 255.255.255.255.0. Este netmask tem 24 bits de 1 bits à esquerda ou um comprimento de prefixo de 24.
Para IPv6, o comprimento do prefixo é um número entre 0 e 128. Assim, a notação fe80::85d:e82c:9446:7994/120 representa o endereço IP fe80::85d:e82c:9446:7994 com um netmask de ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff:ff00. Este netmask tem 120 bits à esquerda ou um comprimento de prefixo de 120.
Devoluções
true
: se o endereço IPv4 pertencer a qualquer um dos intervalos de rede privada.false
: Caso contrário.null
: se a análise da entrada como cadeia de endereço IPv4 não tiver sido bem-sucedida.
Exemplo: Verificar se o IPv4 pertence a uma rede privada
datatable(ip_string:string)
[
'10.1.2.3',
'192.168.1.1/24',
'127.0.0.1',
]
| extend result = ipv4_is_private(ip_string)
Saída
ip_string | result |
---|---|
10.1.2.3 | true |
192.168.1.1/24 | true |
127.0.0.1 | false |
Conteúdo relacionado
- Descrição geral das funções IPv4/IPv6
- Descrição geral das funções de correspondência de texto IPv4
Comentários
https://aka.ms/ContentUserFeedback.
Brevemente: Ao longo de 2024, vamos descontinuar progressivamente o GitHub Issues como mecanismo de feedback para conteúdos e substituí-lo por um novo sistema de feedback. Para obter mais informações, veja:Submeter e ver comentários