Projeto de suporte à IPv6 no DNS
A importância da migração de IPv4 para IPv6 está justificada nas inúmeras melhorias desenvolvidas no IPv6: maior espaço de endereçamento, mobilidade, segurança, autoconfiguração e QoS (Quality of Service).
A transição deverá ser feita de forma gradual. Atualmente, todos os sistemas operacionais (em versões tanto Desktop como Server) já possuem a pilha de protocolos IPv6 disponível. Experiências de tunelamento (IPv6-over-IPv4, 6to4, etc), assim como algumas aplicações (Apache, FTP) estão utilizando ou podem utilizar IPv6. Como os hosts podem ter endereços IPv4 e IPv6 (por serem Dual-Stack), a configuração de um servidor DNS com suporte a IPv6 torna-se um importante passo em experiências e testes.
DNS com suporte a IPv6 pode ser obtido com o Bind 9.x. Versões mais antigas podem precisar de patches ou não possuírem suporte algum. As referências aqui disponibilizadas foram feitas conforme o Bind 9.3.1
A seguir seguem referências das principais mudanças exigidas em uma configuração de DNSv6. Não é pretensão desenvolver exaustivamente como configurar um DNSv6 para produção, mas sim referenciar as principais mudanças envolvidas.
Dois tipos de consultas feitas em um DNS:
- Resolução de nomes: name to address lookups (forward lookups)
- Resolução de endereço reverso: address to name lookups (reverse lookups)
Para Resolução de Nomes (forward lookups) é utilizado o AAAA record.
Para Resolução de Endereço Reverso (reverse lookups) existem dois formatos:
- Bitstring format: utilizado no domínio ip6.arpa (novo formato)
- Nibble format: utilizado no domínio ip6.int
Resolução de Nomes utilizando Registros AAAA
Os registros AAAA são paralelos e semelhantes aos Registros A no IPv4. Em um único endereço é possível especificar um endereço IPv6 completo. Por exemplo:
$ORIGIN exemplo.com.
host 3600 IN AAAA 3ffe:8050:201:1860:42::1
Resolução de Reverso
Usando o Formato Nibble
ORIGIN 0.6.8.1.1.0.2.0.0.5.0.8.e.f.f.3.ip6.int. 1.0.0.0.0.0.0.0.0.0.0.0.2.4.0.0 14400 IN PTR host.exemplo.com.
Usando o Formato Bitstring Format
$ORIGIN [x3ffe805002011860/64].ip6.arpa. [x0042000000000001/64] 14400 IN PTR host.exemplo.com.