Se você não tem claramente roteamento IPv6, é uma decisão sábia desativá-lo em qualquer daemon que o solicite; como não é incomum ter problemas com ele, também em parte porque o IPv6 tem prioridade sobre o IPv4 quando se trata de falar com nomes DNS que possuem a representação IPv4 e IPv6 ao mesmo tempo.
Mesmo sem ter endereços IP públicos, não é incomum ver daemons tentando fazer conexões IPv6 usando como fonte o endereço IPv6 Link-local, e acreditem que eu testemunhei ao longo dos anos problemas com isso pelo menos com E-mail e DNS Serviços.
O que é mais preocupante com o tipo de erros que você está vendo no IPv6 é que, com frequência, os tempos de espera são eliminados e a transação IPv4 nem poderia ocorrer.
Além disso, não há nada que impeça você de ativar o suporte a IPv6 novamente em um futuro próximo; também não seria necessário misturar as coisas; ter um DNS somente IPv4 não impede que ele resolva endereços IPv6 para que você não tenha uma máquina IPv4 / IPv6 de várias pilhas em algum lugar da sua rede em um futuro próximo.
Então, vá em frente e torne o BIND apenas IPv4; Eu correria nomeado com -4; no Debian você pode editar /etc/default/bind9
e alterá-lo para:
OPTIONS="-u bind -4"
Eu também tiraria todos os endereços AAAA do db.root como em:
grep -v "AAAA" /etc/bind/db.root > /tmp/a
mv /tmp/a /etc/bind/db.root
Também gostaria de editar /etc/gai.conf
e adicionar a seguinte linha para dar prioridade ao IPv4 sobre o IPv6:
precedence ::ffff:0:0/96 100
Eu também aconselharia a leitura da minha resposta aqui:
O primeiro e-mail é devolvido; o segundo e os e-mails subsequentes passam por
Quanto a tempos limite, quando um pedido TCP DNS expira, após x tentativas, o DNS RFC define que o mesmo pedido será tentado novamente usando UDP n tentativas novamente.
Suas solicitações de IPv6 estão expirando, obviamente, porque ainda tentam realizá-las, mas seu roteamento não leva a lugar nenhum.
Além de aproximadamente 6 tentativas e timeouts por solicitação IPv6, você ainda pode cair na próxima raiz IPv6; na lista de servidores de nomes-raiz, há tantos servidores de nomes-raiz para testar que, se falhar um endereço IPv6, ele tentará automaticamente um IPv4 - por isso, arrisco a dizer suas grandes variações de tempo para obter uma solicitação completa são praticamente o comportamento esperado neste cenário.
Aviso: este é um comportamento grosseiro, eu sei bem o comportamento do resolvedor, não tanto os detalhes sujos do código BIND.
Usando apenas tcdump
e dnstracer
, você pode ter uma ideia melhor do que está acontecendo. Também pode ser útil consultar named.stats
.
Também é digno de nota que os tempos limite / solicitações serão adicionados em um servidor de produção ocupado.
No entanto, IMO, você está apenas pensando demais e fazendo várias suposições.
A maneira aconselhada é não tentar usar um serviço que você sabe que não está implementado ao seu lado.
Eu aconselho a execução do BIND somente no modo IPv4.