Obrigado por atualizar sua pergunta, isso torna a ordem dos eventos muito mais clara. Infelizmente, o comportamento que você está descrevendo permanece muito intrigante da perspectiva de um resolvedor de DNS recursivo. Isto é melhor ilustrado através de exemplos.
Quando a consulta não está no cache, um servidor DNS recursivo envia a seguinte consulta para o servidor de nomes autoritativo:
Pergunta: host1.example.com. IN A
O servidor autoritário remoto responderá assim quando um registro A
explícito for definido:
Resposta: host1.example.com. IN A 2.2.2.2
Ou assim, se estiver no registro CNAME:
Resposta: host1.example.com. IN CNAME hostalias.example.net.
Em ambos os casos, a escolha de se o registro A
ou CNAME
é exibido é determinada pelo servidor autoritativo , não pelo servidor recursivo. O servidor recursivo é, como o nome indica, recursivo. A solicitação do cliente upstream para host.example.com. IN A
é transmitida sem modificações, a menos que sejam necessárias consultas adicionais para chegar à resposta. (nesse caso, seria uma pesquisa adicional para hostalias.example.net
, a menos que o servidor de nomes autoritativo possa fornecer essa resposta dentro da mesma resposta)
Dado este comportamento bem compreendido, os pressupostos iniciais devem ser tratados como suspeitos. Um desses fatos não é 100% preciso:
- A ordem em que esses registros foram definidos.
- Verizon retornando uma resposta de 4.4.4.4. (ou seja, a resposta veio de algum lugar mais próximo da sua rede ou mesmo de um arquivo host)
- Que todos os seus servidores oficiais estavam retornando a mesma resposta para essa solicitação.
- Erro do operador.
- Memória humana.
Eu sei que isso é uma espécie de não-resposta, mas eu não acho que podemos dar-lhe um melhor sem uma melhor documentação do que estava acontecendo durante o evento.