DEV Community

Levi Gomes
Levi Gomes

Posted on

(2/8) IPv4 e IPv6: Conceitos, Configuração e Testes

1. Introdução

Antes de pensar em roteamento, firewall ou qualquer outro serviço, tudo começa pelo endereçamento. É aqui que uma máquina “descobre” onde ela está dentro da rede e como alcançar o resto do mundo. Se esse ponto ficar nebuloso, o restante desmorona. Por isso, este artigo mergulha no básico sem enrolação: entender como IPv4 e IPv6 organizam o espaço de endereços e como colocar isso para funcionar no Linux de forma direta.


2. Conceitos fundamentais de IPv4

O IPv4 organiza a rede dividindo o espaço de endereços em blocos. A ideia de máscara de rede surgiu exatamente para isso: separar o que é “parte da rede” e o que é “parte dos hosts”. Por exemplo, uma máscara /24 diz que os primeiros 24 bits identificam a rede, e os 8 restantes ficam para as máquinas. Essa separação é o que permite que o sistema entenda se dois endereços estão na mesma rede local ou se precisam passar por um roteador.

O padrão CIDR simplifica essa notação e evita a antiga confusão das classes (A, B, C). Com CIDR, você é livre para definir redes do tamanho que quiser, desde um /8 gigantesco até um /30 quase individual. Essa flexibilidade foi crucial para organizar melhor os endereços conforme o IPv4 foi se aproximando da saturação.

Além disso, cada rede tem um endereço de broadcast, usado para enviar mensagens para todos os hosts ao mesmo tempo — útil para protocolos como ARP. E, claro, sempre existe um gateway padrão, o endereço do roteador que sabe para onde mandar tudo que não pertence à rede local. Sem esse gateway, a máquina vive isolada: conversa com os vizinhos, mas nunca alcança nada além.


3. Conceitos fundamentais de IPv6

O IPv6 surgiu para resolver a limitação de endereços e propor uma rede muito mais organizada. Nele, cada interface recebe automaticamente um endereço link-local (fe80::/10). Esse endereço sempre existe e serve para comunicação dentro do mesmo segmento, especialmente para descoberta de vizinhos — o equivalente ao ARP, só que bem mais limpo.

A partir daí, entram os endereços globais (válidos na internet) e os endereços ULA (fd00::/8), que são equivalentes ao “IPv6 privado”. Ambos são definidos por prefixos, que substituem a velha ideia de máscara. Assim como no IPv4, o prefixo determina o tamanho da rede, mas agora o espaço é tão amplo que você não precisa se preocupar com desperdício.

E o mais interessante é o mecanismo de autoconfiguração. No IPv6, o roteador pode anunciar o prefixo da rede usando RA (Router Advertisement), e os hosts conseguem montar seus próprios endereços sem precisar de servidor DHCP. Esse processo se chama SLAAC (Stateless Address Autoconfiguration). Quando você quer controle mais rígido — como registrar cada máquina — entra o DHCPv6, que complementa ou substitui o SLAAC. Nada impede usar os dois juntos, mas é importante saber que cada abordagem mexe de um jeito diferente no fluxo da rede.


4. Fluxo de comunicação (diagrama)

Quando um host precisa enviar um pacote, ele realiza primeiro uma decisão local de alcance: compara o endereço de destino com a sua própria configuração de rede (IP e máscara). Se o destino estiver dentro do mesmo prefixo, o pacote é entregue diretamente ao host de destino por meio de resolução de endereço (ARP). Caso contrário, o pacote é encaminhado ao gateway configurado na interface, que se torna o primeiro salto para alcançar redes externas. Essa decisão é puramente local ao host e antecede qualquer mecanismo de roteamento entre roteadores.

A figura ilustra o processo inicial de decisão feito por um host ao enviar um pacote. Primeiro, o host compara o endereço de destino com sua própria configuração de IP e máscara. Se o destino estiver no mesmo prefixo, a entrega é direta e depende apenas da resolução de endereço (ARP). Caso o endereço pertença a outra rede, o host não tenta descobrir o caminho por conta própria: ele encaminha o pacote ao gateway configurado, que se torna o primeiro salto para alcançar redes externas.


5. Configuração no Linux

Roteador DMZ/LAN:

auto lo
iface lo inet loopback

# WAN (via DHCP)
auto eth0
iface eth0 inet dhcp
iface eth0 inet6 auto

# DMZ – 10.10.0.0/24
auto eth1
iface eth1 inet static
    address 10.10.0.1
    netmask 255.255.255.0

iface eth1 inet6 static
    address fd00:a1b2::1
    netmask 64

# LAN INTERNA – 192.168.0.0/16
auto eth2
iface eth2 inet static
    address 192.168.0.1
    netmask 255.255.0.0

iface eth2 inet6 static
    address fd00:192::1
    netmask 64

# Ativar roteamento
post-up sysctl -w net.ipv4.ip_forward=1
post-up sysctl -w net.ipv6.conf.all.forwarding=1
Enter fullscreen mode Exit fullscreen mode

Roteador LAN/Convidados:

auto lo
iface lo inet loopback

# LAN INTERNA – 192.168.0.0/16
auto eth0
iface eth0 inet static
    address 192.168.0.2
    netmask 255.255.0.0
    gateway 192.168.0.1

iface eth0 inet6 static
    address fd00:192::2
    netmask 64
    gateway fd00:192::1

# CONVIDADOS – 172.30.10.0/24
auto eth1
iface eth1 inet static
    address 172.30.10.1
    netmask 255.255.255.0

iface eth1 inet6 static
    address fd00:172::1
    netmask 64

# Ativar roteamento
post-up sysctl -w net.ipv4.ip_forward=1
post-up sysctl -w net.ipv6.conf.all.forwarding=1
Enter fullscreen mode Exit fullscreen mode

6. Testes

O ping (e o ping6) são ferramentas básicas para testar conectividade. Eles enviam mensagens ICMP e esperam resposta. Se chegar, ótimo: há comunicação. Se não chegar, você sabe que existe algum bloqueio, rota errada ou interface mal configurada. É o primeiro degrau da análise.

Os comandos ip -4 addr e ip -6 addr mostram exatamente quais endereços suas interfaces receberam. Isso evita surpresas, especialmente no IPv6, onde você pode acabar com múltiplos endereços — estático, SLAAC, temporário — e nem sempre perceber que está usando o errado.

Já o traceroute (e seu equivalente IPv6) revela o caminho que os pacotes percorrem até o destino. Cada salto (hop) é um roteador no meio do caminho. Ele ajuda a diagnosticar onde o tráfego está sendo interrompido ou desviado. Em redes internas ou simples, o trajeto é curto; em redes maiores, entender esse mapa faz toda a diferença.


7. Erros comuns

Um erro frequente é ativar IPv6 estático e SLAAC ao mesmo tempo sem saber o efeito disso. A máquina pode acabar com vários endereços e, pior, usar um inesperado na hora de enviar pacotes. Outro problema clássico é configurar o gateway IPv6 como se fosse IPv4: no IPv6, o gateway precisa ser sempre um endereço link-local, e isso confunde quem está começando.

Também é comum usar prefixos errados, especialmente quando se está migrando de IPv4. No IPv6, praticamente toda rede interna usa /64. Colocar /80 ou /112 porque “parece suficiente” quebra recursos básicos da rede, incluindo SLAAC.
E claro: máscaras incorretas no IPv4 levam a rotas mal calculadas, hosts que não conversam entre si e diagnósticos que parecem mágicos — mas não são.


8. Conclusão

Com IPv4 e IPv6 bem configurados, o resto da rede deixa de ser um labirinto. Nos próximos capítulos, tudo começa a se encaixar: roteamento, NAT, DNS, DHCP… e cada parte depende diretamente de um endereçamento sólido e bem planejado.

Top comments (0)