M3 · Endereçamento IP

VLSM — Sub-redes de Tamanho Variável

O que é

VLSM (Variable Length Subnet Masks) é a técnica de dividir um bloco de endereços IP em sub-redes com prefixos de comprimentos diferentes — cada sub-rede recebe exatamente o tamanho que precisa, nem mais, nem menos.

O oposto é o FLSM (Fixed Length Subnet Masks): todas as sub-redes usam o mesmo prefixo. Com FLSM, o tamanho é determinado pela maior rede, o que gera desperdício brutal nas menores. Se a maior filial tem 200 hosts, todas as sub-redes recebem um /24 — incluindo o link ponto-a-ponto entre dois roteadores, que só precisa de 2 endereços e acaba com 252 endereços inutilizáveis.

Com VLSM, cada segmento ganha o prefixo certo:

  • Filial com 200 hosts → /24 (254 endereços utilizáveis)
  • Filial com 50 hosts → /26 (62 endereços utilizáveis)
  • Filial com 10 hosts → /28 (14 endereços utilizáveis)
  • Link entre roteadores → /30 (2 endereços utilizáveis)

Como funciona

A regra de ouro do VLSM é alocar sempre do maior para o menor. Isso evita fragmentação do espaço de endereçamento e garante que sub-redes maiores comecem em endereços alinhados ao bloco.

Passos:

  1. Liste todos os segmentos em ordem decrescente de hosts necessários.
  2. Comece pelo primeiro endereço disponível do bloco principal.
  3. Para cada segmento, escolha o menor prefixo que acomoda o número de hosts (lembre: 2ⁿ − 2 endereços utilizáveis).
  4. O endereço de rede da próxima sub-rede é o broadcast da anterior + 1.
  5. Repita até esgotar a lista.

Exemplo completo com o bloco 192.168.1.0/24 e cinco segmentos:

Segmento Hosts necessários Prefixo Endereço de rede Broadcast Utilizáveis
Filial A 110 /25 192.168.1.0 192.168.1.127 126
Filial B 45 /26 192.168.1.128 192.168.1.191 62
Filial C 29 /27 192.168.1.192 192.168.1.223 30
Filial D 8 /28 192.168.1.224 192.168.1.239 14
Link P2P 2 /30 192.168.1.240 192.168.1.243 2

O bloco /24 inteiro tem 256 endereços. Ao final, sobraram apenas 192.168.1.244–255 (12 endereços) sem uso — um aproveitamento muito superior ao que o FLSM permitiria.

Por que não /29 para 8 hosts? Um /29 tem 8 endereços totais, mas 2 são reservados (rede e broadcast), sobrando apenas 6 utilizáveis. Para 8 hosts é preciso /28 (14 utilizáveis).


Na prática

Cenário real: uma empresa brasileira com sede em São Paulo e duas filiais (Campinas e Ribeirão Preto) recebe o bloco 10.20.0.0/24 do provedor.

  • Sede SP: 100 hosts → /25 → 10.20.0.0/25 (hosts: .1–.126)
  • Filial Campinas: 50 hosts → /26 → 10.20.0.128/26 (hosts: .129–.190)
  • Filial Ribeirão: 20 hosts → /27 → 10.20.0.192/27 (hosts: .193–.222)
  • Link SP→Campinas: 2 hosts → /30 → 10.20.0.224/30 (hosts: .225–.226)
  • Link SP→Ribeirão: 2 hosts → /30 → 10.20.0.228/30 (hosts: .229–.230)

Sem VLSM, usando /25 para tudo, seriam necessários cinco blocos /25 — um /24 inteiro não bastaria.

Links ponto-a-ponto: use /30 (2 hosts utilizáveis) ou /31 (RFC 3021, sem endereço de rede nem broadcast — os dois IPs são utilizáveis). O /31 é aceito pelos equipamentos Cisco modernos e pelo exame CCNA 200-301 atual; economiza dois endereços por link, o que faz diferença em redes com dezenas de links WAN.


Por que cai no exame

O CCNA cobra VLSM em pelo menos uma questão de cálculo, geralmente pedindo:

  • O prefixo correto para um segmento com N hosts.
  • O endereço de broadcast de uma sub-rede específica dentro do esquema VLSM.
  • Identificação de sobreposição entre sub-redes (overlap) — erro clássico de quem não respeita a ordem maior→menor.
  • Qual prefixo usar para um link ponto-a-ponto (/30 vs /31).

O erro mais frequente dos candidatos é calcular o prefixo de um segmento com 8 hosts como /29 (esquecendo de subtrair rede e broadcast) e causar sobreposição na sub-rede seguinte.

Memorize: para N hosts, você precisa de pelo menos ⌈log₂(N + 2)⌉ bits de host. Na prática: 2 hosts → /30, 6 → /29, 14 → /28, 30 → /27, 62 → /26, 126 → /25, 254 → /24.


Resumo em uma linha

VLSM elimina o desperdício de endereços ao atribuir a cada sub-rede exatamente o tamanho que ela precisa — sempre alocando do maior segmento para o menor dentro do bloco disponível.