Ideia central

A máscara de subrede define qual parte de um endereço IP identifica a rede e qual parte identifica o host. A notação CIDR (Classless Inter-Domain Routing) simplifica essa informação usando um número após a barra, indicando quantos bits pertencem à parte de rede.

O que é uma máscara de subrede

Um endereço IPv4 tem 32 bits. A máscara de subrede é também um valor de 32 bits onde os bits 1 marcam a parte de rede e os bits 0 marcam a parte de host.

Exemplo com o endereço 192.168.1.10/24:

Endereço IP:   192 . 168 .   1 .  10
Em binário:  11000000.10101000.00000001.00001010

Máscara /24:   255 . 255 . 255 .   0
Em binário:  11111111.11111111.11111111.00000000
                                        ^
                              Os 8 zeros finais = 8 bits de host

A operação AND bit a bit entre o endereço e a máscara revela o endereço de rede:

  11000000.10101000.00000001.00001010   (192.168.1.10)
  11111111.11111111.11111111.00000000   (255.255.255.0)
AND -----------------------------------
  11000000.10101000.00000001.00000000   (192.168.1.0) = endereço de rede

Notação CIDR

O CIDR representa a máscara como um sufixo após o endereço IP, indicando o número de bits 1 da máscara. É mais conciso que escrever a máscara completa.

192.168.1.10/24   equivale a   192.168.1.10  com máscara  255.255.255.0

Tabela de prefixos comuns

Notação CIDRMáscara decimalBits de hostTotal de endereçosHosts utilizáveis
/8255.0.0.02416.777.21616.777.214
/16255.255.0.01665.53665.534
/24255.255.255.08256254
/25255.255.255.1287128126
/26255.255.255.19266462
/27255.255.255.22453230
/28255.255.255.24041614
/29255.255.255.248386
/30255.255.255.252242
/31255.255.255.254122 (ponto a ponto)
/32255.255.255.255011 (host único)

O total de hosts utilizáveis é (2^bits_de_host) - 2. Os dois endereços subtraídos são o endereço de rede (todos os bits de host em 0) e o endereço de broadcast (todos os bits de host em 1).

Explicando /24

O /24 é a máscara mais comum em redes domésticas e pequenos escritórios. Com 24 bits de rede e 8 bits de host:

  • Total de endereços: 2^8 = 256
  • Endereço de rede: o primeiro (ex: 192.168.1.0)
  • Broadcast: o último (ex: 192.168.1.255)
  • Hosts utilizáveis: 254 (de 192.168.1.1 a 192.168.1.254)
Rede 192.168.1.0/24

192.168.1.0    = endereço de rede (não atribuível)
192.168.1.1    = primeiro host utilizável (geralmente o roteador/gateway)
192.168.1.2    = segundo host
...
192.168.1.254  = último host utilizável
192.168.1.255  = broadcast (não atribuível)

Explicando /32

O /32 representa um único host. Com 32 bits de rede e 0 bits de host, não há divisão: o endereço inteiro identifica apenas um dispositivo.

Usos comuns:

  • Regras de firewall direcionadas a um IP específico
  • Rotas de host no roteamento (força o tráfego para um IP exato)
  • Interfaces loopback
  • Endereços em VPNs ponto a ponto
10.0.0.5/32   representa apenas o host 10.0.0.5
Sem rede, sem broadcast: é um endereço de host puro

Explicando /16

Com 16 bits de rede e 16 bits de host, o /16 suporta até 65.534 hosts. Comum em redes corporativas maiores.

Rede 172.16.0.0/16

Hosts de 172.16.0.1 a 172.16.255.254
Total: 65.534 hosts utilizáveis

Explicando /30 e /31

O /30 é usado para links ponto a ponto entre dois roteadores, pois oferece apenas 2 hosts utilizáveis e desperdiça poucos endereços.

Rede 10.0.0.0/30

10.0.0.0   = rede
10.0.0.1   = roteador A
10.0.0.2   = roteador B
10.0.0.3   = broadcast

O /31 (RFC 3021) também é válido para links ponto a ponto e não possui endereço de rede nem broadcast separados. Os dois endereços são usados diretamente pelos hosts.

Como calcular uma subrede manualmente

Dado o endereço 192.168.10.50/26, encontre a rede, o broadcast e o intervalo de hosts.

Passo 1: Identifique a máscara. /26 = 26 bits 1 = 255.255.255.192

Passo 2: Calcule o tamanho do bloco. Bits de host = 32 - 26 = 6. Tamanho = 2^6 = 64.

Passo 3: Encontre o endereço de rede. Divida 50 por 64: quociente 0, então a rede começa em 192.168.10.0.

Passo 4: Derive os demais valores.

Rede:       192.168.10.0
Primeiro host: 192.168.10.1
Último host:   192.168.10.62
Broadcast:  192.168.10.63

Divisão de uma rede em sub-redes (subnetting)

Subnetting é o processo de dividir uma rede maior em redes menores, aumentando o prefixo CIDR.

Exemplo: dividir 192.168.1.0/24 em quatro sub-redes iguais.

Aumentar o prefixo em 2 bits (2^2 = 4 sub-redes) resulta em /26:

Sub-redeEndereço de redeBroadcastHosts utilizáveis
1192.168.1.0/26192.168.1.63.1 a .62
2192.168.1.64/26192.168.1.127.65 a .126
3192.168.1.128/26192.168.1.191.129 a .190
4192.168.1.192/26192.168.1.255.193 a .254

Ferramentas úteis

# Linux: ver endereço e máscara de cada interface
ip addr show
ip a
 
# Linux: ver tabela de roteamento
ip route show
 
# Windows: ver configuração de rede
ipconfig /all
 
# Calcular sub-redes na linha de comando (Linux)
ipcalc 192.168.10.50/26
 
# Verificar se dois IPs estão na mesma rede
# 192.168.1.10/24 e 192.168.1.50/24 -> mesma rede (192.168.1.0)
# 192.168.1.10/24 e 192.168.2.50/24 -> redes diferentes

Conexões