Diferente do IPv4, que usa decimal separado por pontos (ex: 192.168.1.1), o IPv6 é representado em Hexadecimal separado por dois pontos (:).

1. Estrutura Básica

Um endereço IPv6 completo tem 32 caracteres hexadecimais, divididos em 8 grupos de 4 dígitos (hextetos). Cada dígito hexadecimal representa 4 bits ($8 \times 4 \times 4 = 128$ bits).

Exemplo de formato completo:
2001:0db8:0000:0000:0008:0800:200c:417a


2. Regras de Simplificação (RFC 5952)

Para facilitar a leitura e escrita humana, existem duas regras fundamentais de compressão:

Regra 1: Omissão de Zeros à Esquerda (Leading Zeros)

Dentro de cada grupo de 4 dígitos, os zeros à esquerda podem ser omitidos.
- :0db8: torna-se :db8:
- :0000: torna-se :0:
- :0800: torna-se :800:

Exemplo com a Regra 1:
2001:db8:0:0:8:800:200c:417a

Regra 2: Compressão de Zeros (Double Colon - ::)

Uma sequência contínua de um ou mais grupos compostos apenas por zeros pode ser substituída por dois pontos duplos (::).
IMPORTANTE: Esta regra só pode ser aplicada uma única vez por endereço. Se houver duas sequências de zeros, deve-se comprimir a maior delas.

Exemplo com a Regra 1 e 2:
2001:db8::8:800:200c:417a


3. Endereço de Loopback e Não Especificado

  • Loopback (Localhost):
    • Completo: 0000:0000:0000:0000:0000:0000:0000:0001
    • Comprimido: ::1
  • Não Especificado (Unspecified Address):
    • Completo: 0000:0000:0000:0000:0000:0000:0000:0000
    • Comprimido: ::

4. Representação de Rede (Prefixo)

No IPv6, não existem máscaras de sub-rede no formato decimal (como 255.255.255.0). Usa-se exclusivamente a Notação CIDR para indicar o tamanho do prefixo de rede.

Exemplo:
2001:db8:abcd:12::/64
- O /64 indica que os primeiros 64 bits identificam a rede e os 64 bits restantes identificam a interface (ID de Host).

Padrões Comuns:
- /48: Prefixo comum atribuído por ISPs para empresas/residências.
- /64: Tamanho padrão para uma única sub-rede (exigido para o funcionamento do SLAAC).
- /128: Identifica um único host (equivalente ao /32 no IPv4).