O Windows consulta o DNS nesta ordem :
- arquivo de hosts
- cache DNS local
- Servidores DNS preferidos
- Outros servidores DNS
O MS também tem um artigo descrevendo como a lista de servidores DNS é obtida :
The DNS Client service uses a server search list, ordered by preference. This list includes all preferred and alternate DNS servers configured for each of the active network connections on the system.
The list is arranged based on the following criteria:
- Preferred DNS servers are given first priority.
- If no preferred DNS servers are available, then alternate DNS servers are used.
- Unresponsive servers are removed temporarily from these lists.
O Windows tem um tempo limite crescente para solicitações de DNS :
Value Default value Attempt
1st limit 1 second Query the preferred DNS server on a preferred connection.
2nd limit 2 seconds Query the preferred DNS server on all connections.
3rd limit 2 seconds Query all DNS servers on all connections (1st attempt).
4th limit 4 seconds Query all DNS servers on all connections (2nd attempt).
5th limit 8 seconds Query all DNS servers on all connections (3rd attempt).
6th value (Must be 0.)
Não consegui encontrar uma resposta clara sobre este ponto exato, mas parece que se não obtiver uma resposta do seu DNS primário em 1 ou 2 segundos (1ª ou 2ª tentativa, respectivamente), esse servidor será removido da lista de pesquisa do servidor DNS por 15 minutos e, portanto, usará os servidores DNS secundários. Como esses servidores têm um tempo limite de até 8 segundos, eles são muito mais propensos a responder. (Não está claro para mim se continua a consultar o servidor DNS preferido durante a terceira tentativa + se ele já falhou).
Também suspeito que você realmente tenha um problema de latência de WAN para essa área geográfica, pois isso explicaria por que os tempos limite estão funcionando.
Uma solução é alterar os tempos limite de consulta de DNS, usando o parâmetro de registro DNSQueryTimeouts . Veja também link
Outra solução é colocar um servidor DNS de cache local na rede e fazer com que os clientes o usem. Você pode usar um servidor DNS que pode estar embutido em um roteador ou instalar algo como dnsmasq .