Quando o sistema usa nomes, é preciso ver qual endereço o DNS está devolvendo. O comando nslookup consulta um servidor DNS diretamente e mostra a resposta obtida.
As variações do comando
nslookup api.example.com: consulta o servidor DNS configurado no computador;nslookup api.example.com 8.8.8.8: consulta um servidor DNS específico, no caso o servidor público 8.8.8.8.
Como ler o resultado
A resposta do nslookup tem duas partes. A primeira parte mostra o servidor DNS que respondeu, com o nome e o endereço desse servidor. A segunda parte mostra o nome consultado e o endereço correspondente. A indicação de resposta não autoritativa significa que a resposta veio de um servidor que não é o responsável pelo nome, em geral um servidor que guardou a resposta em cache, o que é normal.
Quando o nome não existe, o nslookup informa que o domínio não existe. Quando o servidor DNS não responde, o nslookup informa que o tempo da solicitação se esgotou.
Comparar servidores DNS
A comparação entre a resposta do servidor DNS configurado e a resposta de um servidor DNS público revela um cache desatualizado ou um registro errado no servidor DNS local. Quando os dois servidores devolvem endereços diferentes para o mesmo nome, o servidor público costuma mostrar o endereço atual.
O nslookup não lê o arquivo hosts
O nslookup consulta o servidor DNS diretamente e ignora o arquivo hosts. Por isso, quando o comando ping mostra um endereço para um nome e o comando nslookup mostra outro, a explicação mais provável é uma entrada no arquivo hosts.
No suporte
Com DDNS, convém comparar o resultado do nslookup na filial com o endereço público real da matriz. Se os dois forem diferentes, o problema está no nome, e não no caminho.
Para guardar
- O nslookup mostra a resposta do servidor DNS para um nome.
- A comparação com um servidor DNS público revela cache desatualizado ou registro errado.
- O nslookup não lê o arquivo hosts.
O servidor DNS local devolve um endereço para o nome do fornecedor, e o servidor público 8.8.8.8 devolve outro. O que suspeitar?
De um cache desatualizado ou de um registro errado no servidor DNS local. O servidor DNS público mostra o endereço atual.
O comando nslookup api.example.com informa que o tempo da solicitação se esgotou, mas o comando nslookup api.example.com 8.8.8.8 funciona. Onde está o problema?
No servidor DNS configurado no computador, que não está respondendo. Em redes pequenas, esse servidor costuma ser o roteador. A investigação segue pela configuração de DNS do computador e pelo próprio roteador.