Ferramentas
Guias

Calculadora CIDR / sub-rede IP

Conversão

Calcula o endereço de rede, broadcast, máscara, intervalos de hosts e classe para blocos CIDR IPv4/IPv6 com BigInt.

100% no cliente Sem backend
Endereço de rede
Máscara de rede
Wildcard
Broadcast
Primeiro host
Último host
Endereços totais
Hosts utilizáveis
Classe IP
Versão IP
Âmbito
Nesta página

O que é CIDR?#

CIDR — Classless Inter-Domain Routing — é a notação a.b.c.d/n usada para descrever um bloco de endereços IP. O número após a barra é o comprimento do prefixo: quantos bits iniciais ficam fixos enquanto os restantes identificam hosts individuais dentro do bloco. 192.168.1.0/24 fixa os primeiros 24 bits (a parte 192.168.1) e deixa o último octeto livre, o que dá exatamente 256 endereços — a clássica gama de rede doméstica.

O CIDR existe porque o antigo sistema “classe A / B / C” entregava blocos em apenas três tamanhos rígidos, desperdiçando enormes quantidades de espaço. O CIDR permite recortar um espaço de endereçamento em blocos de qualquer tamanho potência de dois (um /23, um /27, um /29…) para que o espaço não seja desperdiçado. A mesma notação é também como se escrevem listas de permissão de firewall, entradas de tabela de encaminhamento, grupos de segurança na nuvem e ACLs de DNS.

Esta página analisa um CIDR (ou um endereço nu) e mostra-lhe a decomposição completa da sub-rede: endereço de rede, broadcast, máscara, wildcard, primeiro e último host utilizável, contagens total e utilizável, a classe IP legada, a versão de IP e se o endereço cai num intervalo privado (RFC 1918 / ULA). Tanto IPv4 como IPv6 são suportados, com precisão total de 128 bits via BigInt — um Number simples do JavaScript corromperia silenciosamente a matemática de IPv6 além de 2^53.

Como usar#

  1. Escreva um CIDR ou endereço no campo CIDR / IP. A página arranca com 192.168.1.130/24 como exemplo; substitua pelo seu. Um endereço nu é tratado como /32 para IPv4 ou /128 para IPv6.
  2. O painel de resultado preenche-se à medida que escreve. Os campos são: Endereço de rede (o endereço-base da sub-rede, bits de host a zero), Máscara de rede (a máscara implícita no prefixo), Wildcard (só IPv4 — o NOT bit-a-bit da máscara, usado em ACLs estilo Cisco), Broadcast (só IPv4; IPv6 não tem), Primeiro host e Último host (a gama atribuível), endereços Totais, hosts Utilizáveis, Classe (A/B/C/D/E legadas), Versão e Âmbito (Privada ou Pública).
  3. Clique em Exemplo para recarregar o exemplo padrão, ou em Limpar para esvaziar o campo.

Principais recursos#

  • Precisão IPv6 total. Todos os cálculos correm em BigInt, pelo que um bloco IPv6 /48 ou /64 — cujas contagens de endereços chegam aos quatrilhões — são exatos, não aproximações de vírgula flutuante.
  • Contagens de host corretas, incluindo prefixos-limite. /31 é tratado como o par ponto-a-ponto da RFC 3021 (2 utilizáveis, sem broadcast reservado); /32 é um único host; /30 dá corretamente 2 utilizáveis. A página não aplica cegamente 2^(32-p) − 2 a todos os prefixos.
  • Deteção RFC 1918 e ULA. Intervalos privados (10/8, 172.16/12, 192.168/16 para IPv4; fc00::/7, fe80::/10, ::1 para IPv6) são sinalizados no campo Âmbito, para que se perceba num relance se um bloco é encaminhável na internet pública.
  • Máscara wildcard. Útil quando se escrevem regras estilo permit ip any 192.168.1.0 0.0.0.255, onde a máscara está invertida relativamente à máscara de rede.
  • IPv6 comprimido por RFC 5952. Os endereços de saída colapsam a maior sequência de zeros para ::, em minúsculas, sem zeros à esquerda — a forma canónica que firewalls e routers esperam.
  • IPv6 mapeado de IPv4. Entradas como ::ffff:192.168.1.1 são analisadas corretamente e normalizadas.

Exemplo detalhado#

Com o padrão 192.168.1.130/24:

Network:     192.168.1.0
Netmask:     255.255.255.0
Wildcard:    0.0.0.255
Broadcast:   192.168.1.255
First host:  192.168.1.1
Last host:   192.168.1.254
Total:       256
Usable:      254
Class:       C
Version:     IPv4
Scope:       Private

Note que o endereço que escreveu — 192.168.1.130 — é um host dentro do bloco, não o endereço de rede. O endereço de rede é o resultado de mascarar os bits de host. A contagem de 254 utilizáveis é 256 total − 1 rede − 1 broadcast; é por isso que um /24 é muitas vezes chamado vagamente de “254 hosts utilizáveis”.

Para uma ligação ponto-a-ponto, mude para /31:

Input:       10.0.0.0/31
Usable:      2          (RFC 3021: ambos os endereços utilizáveis, sem broadcast reservado)
First host:  10.0.0.0
Last host:   10.0.0.1

Para IPv6, experimente 2001:db8::/64 — o tamanho padrão de sub-rede LAN:

Network:  2001:db8::
Total:    18446744073709551616   (2^64 — todos os endereços do bloco são utilizáveis; IPv6 não tem broadcast)
Scope:    Public

Perguntas frequentes#

Porque é que um /24 dá 254 hosts utilizáveis e não 256?#

Dois endereços em cada sub-rede IPv4 (exceto /31 e /32) estão reservados: o endereço de rede (todos os bits de host a zero) identifica a própria sub-rede, e o endereço de broadcast (todos os bits de host a um) alcança todos os hosts da sub-rede de uma vez. Por isso um /24 tem 2^8 = 256 endereços mas apenas 256 − 2 = 254 que pode atribuir a interfaces.

Para que serve um /31? Parece não ter hosts utilizáveis.#

Sob a regra antiga um /31 teria 2 − 2 = 0 hosts utilizáveis, tornando-o inútil. A RFC 3021 redefiniu /31 para ligações ponto-a-ponto (as que ligam dois routers diretamente): ambos os endereços são utilizáveis e não há broadcast reservado. Esta página segue a RFC 3021, pelo que /31 mostra 2 utilizáveis. Equipamento anterior a 2000 pode ainda esperar o comportamento antigo.

Trata IPv6?#

Sim, totalmente. Os prefixos IPv6 vão até /128 (um único endereço) e a matemática de endereços corre em BigInt, pelo que mesmo um bloco de provedor /48 ou /32 é exato. Note que IPv6 não tem endereço de broadcast nem classe legada — todos os endereços de um bloco são utilizáveis, pelo que a contagem Utilizável iguala a Total. O campo Âmbito continua a sinalizar ULA (fc00::/7) e intervalos link-local (fe80::/10) como privados.

Porque é que a ferramenta mostra um endereço de rede diferente do IP que escrevi?#

Porque o seu IP é um host dentro do bloco, não o endereço-base do bloco. O endereço de rede é seu_ip AND máscara, o que zera os bits de host. Escrever 192.168.1.130/24 descreve “o host .130 dentro de 192.168.1.0/24” — o próprio bloco /24 começa em .0. Se na verdade queria um bloco que comece em .128, escreva 192.168.1.128/25.

Porque é que o meu endereço aparece como “Privada”?#

Porque cai dentro de um dos intervalos reservados a uso interno e não encaminháveis na internet pública: IPv4 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16, ou IPv6 fc00::/7 (local único) e fe80::/10 (link-local). Tráfego desses intervalos não consegue chegar à internet sem NAT ou um túnel. Se está configurando um grupo de segurança na nuvem ou um serviço virado para o público, quase sempre quererá antes um endereço público.