Nesta aula, vamos mergulhar fundo no sistema de endereçamento IPv4. Entenderemos como os endereços são estruturados, a função das máscaras de sub-rede, a evolução do endereçamento classful para o CIDR, e como calcular sub-redes na prática. Este é um dos tópicos mais importantes para a certificação em redes e para o dia a dia de quem trabalha com infraestrutura.
Revisão do Endereço IPv4
O protocolo IPv4 define um endereço de 32 bits, dividido em 4 octetos (8 bits cada). Representamos esses octetos na forma decimal pontuada, como 192.168.1.1. Cada endereço possui duas partes lógicas: o prefixo de rede e o identificador de host. A fronteira entre essas duas partes é determinada pela máscara de sub-rede.
Por exemplo, no endereço 192.168.1.1 com máscara 255.255.255.0, os primeiros 24 bits (192.168.1) representam a rede, e o último octeto (1) representa o host específico.
Exemplo:
IP: 192.168.1.1 = 11000000.10101000.00000001.00000001
Máscara: 255.255.255.0 = 11111111.11111111.11111111.00000000
-------------------------------------------
Rede: 192.168.1.0 = 11000000.10101000.00000001.00000000
Máscaras de Sub-rede e Notação CIDR
Antes do CIDR (Classless Inter-Domain Routing), as máscaras eram fixas por classe (Classe A = /8, Classe B = /16, Classe C = /24). Isso gerava muito desperdício de endereços. Uma empresa que precisasse de 300 endereços receberia uma Classe B (/16), que oferece 65.534 endereços — um enorme desperdício.
O CIDR permitiu que as máscaras tivessem tamanhos arbitrários. Assim, podemos usar máscaras como /23 (que fornece 510 hosts) para atender exatamente a demanda.
Vamos revisar algumas máscaras comuns:
| Notação CIDR | Máscara Decimal | Nº de Hosts (2(32-mask)-2) |
|---|---|---|
| /24 | 255.255.255.0 | 254 |
| /25 | 255.255.255.128 | 126 |
| /26 | 255.255.255.192 | 62 |
| /27 | 255.255.255.224 | 30 |
| /28 | 255.255.255.240 | 14 |
| /29 | 255.255.255.248 | 6 |
| /30 | 255.255.255.252 | 2 |
Lembre-se: o primeiro endereço de uma sub-rede é o endereço de rede, e o último é o de broadcast. Eles não podem ser atribuídos a interfaces!
Cálculo Prático de Sub-redes
Vamos a um exemplo prático. Recebemos o bloco 10.0.0.0/8 e precisamos criar várias sub-redes para diferentes filiais.
Se utilizarmos uma máscara /16, criamos 2(16-8) = 256 sub-redes. Cada sub-rede terá 2(32-16) = 65.536 endereços, dos quais 65.534 são utilizáveis.
Para uma filial com 500 funcionários, uma sub-rede /23 (máscara 255.255.254.0) seria ideal, pois oferece 510 hosts utilizáveis.
A regra de ouro para calcular o endereço de rede é aplicar um AND lógico entre o IP e a máscara. O endereço de broadcast é obtido fazendo um OR do IP com a máscara invertida.
Vamos detalhar um cálculo para uma sub-rede /27:
IP: 192.168.1.35 = 11000000.10101000.00000001.00100011
Máscara: 255.255.255.224 = 11111111.11111111.11111111.11100000
AND:
Rede: 192.168.1.32 = 11000000.10101000.00000001.00100000
IP de Broadcast: Host bits da máscara são 0 -> 00011111
Broadcast = 192.168.1.32 + 31 = 192.168.1.63
Hosts válidos: 192.168.1.33 a 192.168.1.62
Outra forma rápida de achar as sub-redes com uma máscara /27 (224) é subtrair 256 de 224: o salto é 32. As redes são 0, 32, 64, 96, 128, 160, 192, 224.
Roteamento e Tabelas de Roteamento
O roteamento é o processo de encaminhamento de pacotes entre redes. Cada roteador mantém uma tabela de roteamento, que contém pares de (rede de destino / máscara, próximo salto, interface de saída).
Quando um pacote chega ao roteador, ele extrai o endereço IP de destino e aplica o AND lógico com a máscara de cada entrada da tabela. A entrada que tiver a correspondência mais longa (maior prefixo) é a escolhida. Isso se chama "longest prefix match".
Imagine a tabela de roteamento do roteador como uma placa de sinalização. Cada destino (endereço de rede) tem uma placa apontando para o próximo roteador (next hop). Quando um pacote com destino a 10.1.1.5 chega, o roteador consulta sua tabela. Se existir uma rota para 10.0.0.0/8 apontando para um vizinho, e uma rota para 10.1.0.0/16 apontando para outro, o roteador escolhe a rota mais específica (/16). Se houver um empate, o menor custo (metric) decide.
Existem protocolos de roteamento dinâmico como OSPF (Open Shortest Path First) e BGP (Border Gateway Protocol) que trocam essas informações automaticamente. O OSPF calcula a melhor rota baseada no custo (largura de banda), enquanto o BGP é o protocolo da Internet global, baseado em políticas.
Roteamento estático é configurado manualmente e é útil em links ponto-a-ponto ou redes muito simples (stub networks).
Endereços Especiais e IPv6
É importante lembrar dos endereços reservados: rede (último octeto 0 com máscara /24), broadcast (último octeto 255 com máscara /24), loopback (127.0.0.0/8), e link-local (169.254.0.0/16, usado pelo DHCP quando não obtém resposta).
Os endereços privados (10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) não são roteados na Internet global. Para acessar a Internet, eles precisam passar por NAT (Network Address Translation), que geralmente é feito no roteador de borda.
Embora o IPv6 (128 bits, notação hexadecimal) seja o futuro, o IPv4 ainda é dominante em redes internas. O conhecimento de sub-redes IPv4 continua sendo fundamental para qualquer profissional de TI.
Perguntas Frequentes
- Qual a diferença entre roteamento estático e dinâmico? O estático é configurado manualmente pelo administrador. O dinâmico utiliza protocolos (OSPF, BGP, RIP) para aprender as rotas automaticamente. O estático é mais seguro e não consome banda, mas não escala. O dinâmico é tolerante a falhas e se adapta a mudanças na topologia.
- O que é VLSM? Variable Length Subnet Mask. É a capacidade de usar máscaras de sub-rede de tamanhos diferentes dentro do mesmo bloco de rede, otimizando o uso dos endereços. Por exemplo, uma rede /30 para um link ponto-a-ponto e uma /24 para uma LAN.
- Como calcular rapidamente uma sub-rede? Use o valor do octeto da máscara. Para /26 (192), o salto é 256 - 192 = 64. As redes são 0, 64, 128, 192. Para /27 (224), o salto é 256 - 224 = 32. Redes: 0, 32, 64, 96, 128, 160, 192, 224. E assim por diante.
- Qual a utilidade do endereço de broadcast? Enviar pacotes para todos os hosts da rede. Muito usado por protocolos como ARP e DHCP, que precisam descobrir dispositivos na rede local.