Os endereços numéricos servem aos equipamentos, mas as pessoas e as configurações preferem nomes. O DNS traduz os nomes em endereços, e quase toda comunicação depende dessa tradução para começar.
Como a tradução acontece
DNS é a sigla de Domain Name System, sistema de nomes de domínio. Quando o sistema da loja precisa acessar o serviço de um fornecedor no endereço api.example.com, a tradução acontece assim:
- O computador verifica se já conhece a resposta, guardada de uma consulta anterior ou definida em um arquivo local.
- Se não conhece, o computador pergunta ao servidor DNS indicado na sua configuração de rede.
- O servidor DNS responde com o endereço IP correspondente ao nome.
- Com o endereço em mãos, o computador abre a conexão com o serviço.
O DNS não transporta os dados do sistema, mas quase toda comunicação depende dele para começar. Os servidores DNS configurados em cada adaptador aparecem no ipconfig /all, no campo Servidores DNS. Em redes pequenas, o servidor DNS informado aos computadores costuma ser o próprio roteador, que repassa as consultas aos servidores do provedor.
O cache de DNS
O Windows guarda as respostas recebidas por algum tempo, em uma memória chamada cache de DNS, para não repetir a mesma consulta a cada acesso. O tempo de validade de cada resposta é definido pelo responsável pelo nome. Dois comandos tratam desse cache:
ipconfig /displaydns: mostra as respostas guardadas no cache;ipconfig /flushdns: apaga as respostas guardadas, e as próximas consultas voltam a ser feitas ao servidor DNS.
Quando um fornecedor muda o endereço de um serviço, um computador pode continuar usando o endereço antigo até que a resposta guardada expire ou que o cache seja apagado.
Nomes dentro da rede da loja
Dentro da rede da loja, os nomes dos computadores, como o nome do servidor da loja, são traduzidos pelo servidor DNS da rede, quando esse servidor conhece os nomes. Quando o DNS não conhece o nome, o Windows recorre a mecanismos próprios, chamados NetBIOS e LLMNR, que enviam a pergunta diretamente aos equipamentos da rede local. Esses mecanismos funcionam apenas dentro da rede local e não traduzem nomes de computadores de outras redes, como os da matriz.
O sintoma de problema de DNS
O quadro típico de falha de DNS aparece em dois testes:
ping 8.8.8.8: funciona, o que mostra que a conexão com a Internet está ativa;ping api.example.com: falha com a mensagem de que não foi possível localizar o host.
Esse quadro não indica falta de Internet. A conectividade está funcionando, e apenas a tradução de nomes falhou. Para examinar a tradução, o comando a seguir consulta diretamente o servidor DNS:
nslookup api.example.com: mostra qual servidor DNS respondeu e qual endereço foi devolvido para o nome.
No suporte
Integrações configuradas com endereços como https://api.example.com dependem do DNS. Quando o acesso pelo endereço IP funciona e o acesso pelo nome falha, convém investigar a tradução de nomes antes de suspeitar da conexão com a Internet.
Para guardar
- O DNS traduz nomes em endereços IP.
- O Windows guarda as respostas no cache de DNS, que pode ser apagado com o comando
ipconfig /flushdns. - O acesso pelo endereço funcionando e o acesso pelo nome falhando apontam para o DNS.
- Quase toda comunicação começa com uma consulta de nome.
O comando ping 8.8.8.8 funciona, e o comando ping api.example.com falha com a mensagem de que não foi possível localizar o host. A Internet caiu?
Não. A conectividade funciona, e a falha está na tradução de nomes, feita pelo DNS.
Depois que um fornecedor mudou o endereço IP do serviço, um computador da loja continua tentando o endereço antigo, enquanto os outros já usam o novo. O que pode explicar essa diferença?
O computador pode estar usando uma resposta antiga, guardada no cache de DNS. O comando ipconfig /flushdns apaga o cache, e a próxima consulta busca o endereço atualizado no servidor DNS.