No momento, meu registrador de domínio e DNS fornecem ignora solicitações de DNS para domínios desconhecidos. Por ignorar, quero dizer buracos negros e nunca responde, o que faz com que meus clientes DNS e bibliotecas de resolvedores tentem novamente, recuem e, finalmente, o tempo limite.
dig @NS3.DNSOWL.COM somedomainthatdoesntexist.org
...
;; connection timed out; no servers could be reached
Ao pesquisar outros serviços populares de nomes de domínio, vejo que esse comportamento é bastante exclusivo, já que outros provedores retornam um RCODE 5 (REFUSED):
dig @DNS1.NAME-SERVICES.COM somedomainthatdoesntexist.org
dig @NS-284.AWSDNS-35.COM somedomainthatdoesntexist.org
dig @NS21.DOMAINCONTROL.COM somedomainthatdoesntexist.org
Todos retornam algo como o seguinte:
;; ->>HEADER<<- opcode: QUERY, status: REFUSED, id: 64732
ou
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 31219
Retornar REFUSED
ou NXDOMAIN
imediatamente é apropriado IMHO, em vez de apenas soltar a solicitação no andar da sala do servidor.
Quando eu reclamo com o meu provedor sobre seus servidores não responderem, eles me pedem para citar o RFC que seus servidores estão violando. Eu sei que é estranho que eles estejam me pedindo para provar que seus servidores devem responder a todos os pedidos, mas que seja.
Perguntas :
- É minha estipulação de que, a menos que haja IDs de solicitação duplicados ou algum tipo de resposta do DOS, um servidor sempre deve responder à solicitação. Isso está correto?
- Que RFC e seção específica devo citar para apoiar minha estipulação?
Para mim, é ruim não responder a uma consulta DNS. A maioria dos clientes recua e retransmite a mesma consulta para o mesmo servidor DNS ou outro servidor. Eles não apenas diminuem a velocidade dos clientes, mas também fazem com que a mesma consulta seja feita novamente por seus próprios servidores ou por outros servidores, dependendo dos servidores de nomes autoritários e das entradas NS.
Nas RFC 1536 e 2308 , vejo muitas informações sobre cache negativo por motivos de desempenho e para interromper a retransmissão da mesma consulta. Em 4074 , vejo informações sobre o retorno de uma resposta vazia com um RCODE de 0, para que o cliente saiba que não há informações de ipv6 que devam fazer com que o cliente pergunte sobre RRs, que é outro exemplo de resposta vazia.
Mas não consigo encontrar uma RFC que diga que um servidor DNS deve responder a uma solicitação, provavelmente porque está implícita.
O problema específico ocorre quando migro meu domínio (e os registros DNS associados) para seus servidores ou nos primeiros X minutos após registrar um novo domínio em seu serviço. Há um atraso entre o tempo em que os servidores de nomes com autoridade mudam (o que é bem rápido hoje em dia) e seus servidores começam a exibir meus registros DNS. Durante esse período de atraso, os clientes DNS acham que seus servidores têm autoridade, mas nunca respondem a uma solicitação - mesmo com um REFUSED
. Entendo o atraso, o que é bom, mas discordo da decisão de não responder às solicitações de DNS. Para o registro, eu entendo como contornar essas limitações em seu sistema, mas ainda estou trabalhando com elas para melhorar seus serviços e estar mais alinhadas com o protocolo DNS.
Obrigado pela ajuda.
Editar:
Alguns meses depois de postar isso e acompanhar o meu provedor, eles mudaram seus servidores para retornar NXDOMAIN
para domínios desconhecidos.