Tenho o bind9 configurado no meu PC roteador. Ele serve como servidor DNS para todas as máquinas na minha rede doméstica. Ele está configurado para que ele só encaminhe solicitações DNS para o stubby (escutando localmente na porta 54321), que então envia essas solicitações DNS com segurança para algum servidor DNS global por TLS. Geralmente está funcionando bem, a menos que ocorra um timeout, como este (retirado de syslogs):
Feb 05 15:51:19 router named[512]: timed out resolving 'accounts.youtube.com/A/IN': 127.0.0.1#54321
Quando liguei tcpdump
, descobri que essas solicitações com tempo limite esgotado estão sendo enviadas em texto simples na porta 53 para servidores de nomes aleatórios (?). Sem paciência para solucionar o problema, apenas bloqueei os pacotes de saída na porta 53, e agora alguns novos logs aparecem no syslog (com, obviamente, nenhuma outra solicitação visível no PCAPS de tcpdump
) após os logs de tempo limite:
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.5.6.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.33.14.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.26.92.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.31.80.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.35.51.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.42.93.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.54.112.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.43.172.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.48.79.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.52.178.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.41.162.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.55.83.30#53
Feb 05 15:51:19 router named[512]: permission denied resolving 'accounts.youtube.com/A/IN': 192.12.94.30#53
O que está acontecendo? Por que o bind9 faz failover para todos esses servidores DNS, ignorando completamente o stubby que está configurado como único encaminhador? Este é meu named.conf.options
arquivo:
options {
directory "/var/cache/bind";
forwarders {
127.0.0.1 port 54321;
};
dnssec-validation yes;
allow-recursion { localhost; localnets; 192.168.0.0/24; };
listen-on { 127.0.0.1; 192.168.0.0; };
listen-on-v6 { none; };
};
Tenho meu servidor DHCP configurado para que ele defina todas as interfaces de rede para todas as máquinas na rede (incluindo o roteador) para que elas usem apenas meu próprio servidor DNS em execução no PC do roteador, então acredito (e os logs parecem confirmar isso) que o bind9 em si decide tentar outros servidores DNS sem que eu o permita explicitamente. Três perguntas surgem:
- Por que ele faz isso?
- De onde vêm os servidores de nomes para fazer o failover?
- Como faço para desabilitar isso? Embora o bloqueio de tráfego de saída na porta 53 funcione, ainda tenho logs destruídos com suas tentativas de tentar outros servidores DNS para resolver solicitações com tempo limite esgotado, e não gosto disso.