Diagnosticar problemas de DNS no Windows e Linux
Separe falhas DNS, de rede e HTTPS com nslookup, Resolve-DnsName, dig e resolvectl.
Separe falhas DNS, de rede e HTTPS com nslookup, Resolve-DnsName, dig e resolvectl.
Rede antes do nome
Confira IP, gateway e rota padrão. Teste o gateway real e um IP externo, lembrando que ICMP pode ser bloqueado. IP acessível e nome falhando sugerem DNS, sem provar. Anote host, tipo A/AAAA, hora, rede e erro. A é IPv4, AAAA IPv6, MX email, NS delegação, CNAME alias, TXT texto e PTR consulta reversa.
Resolvedores Windows
ipconfig /all mostra adaptador ativo, DNS e sufixos; VPN e Active Directory costumam usar DNS interno e split DNS. nslookup consulta servidor diretamente, ignorando cache local, hosts e algumas regras do cliente: pode diferir do aplicativo. Resolve-DnsName tem controles específicos; -DnsOnly -NoHostsFile ignora hosts intencionalmente. Não troque DNS corporativo por público sem análise.
ipconfig /all
nslookup www.example.com
nslookup -type=AAAA www.example.com
nslookup www.example.com 1.1.1.1
Resolve-DnsName www.example.com -Type A
Resolve-DnsName www.example.com -Server 1.1.1.1 -DnsOnly -NoHostsFile
Cache e hosts
Veja ipconfig /displaydns ou Get-DnsClientCache. ipconfig /flushdns e Clear-DnsClientCache limpam apenas este PC, não registros autoritativos nem caches intermediários. Confira C:\Windows\System32\drivers\etc\hosts e VPN sem apagar entradas necessárias. Repita e anote servidor e resultado.
ipconfig /displaydns
ipconfig /flushdns
Get-DnsClientCache
Clear-DnsClientCache
Resolvedor Linux
Com systemd-resolved, resolvectl status mostra DNS por conexão e domínios roteados; resolvectl query verifica resolução do cliente. /etc/resolv.conf pode ser gerido por systemd-resolved, NetworkManager ou DHCP: corrija a configuração de origem, não o arquivo gerado.
ip address
ip route
resolvectl status
resolvectl query www.example.com
ls -l /etc/resolv.conf
Comparar com dig
dig mostra status, ANSWER, TTL e servidor. Assim como nslookup, consulta direta pode divergir da resolução do aplicativo. Compare padrão e servidor explícito; DNS público não conhece zona privada. NOERROR sem resposta pode indicar ausência do tipo pedido. +trace segue delegação, mas pode falhar onde consultas diretas são bloqueadas.
sudo apt update
sudo apt install dnsutils
dig www.example.com A
dig www.example.com AAAA
dig @1.1.1.1 www.example.com A
dig example.com NS
dig example.com SOA
dig +trace www.example.com
Erros e autoritativos
NXDOMAIN é nome inexistente na visão consultada; SERVFAIL falha de resolução, por exemplo DNSSEC; REFUSED recusa; timeout ausência de resposta. Consulte os NS reais e compare A/AAAA e serial SOA. ns1.provider.example e ns2.provider.example são apenas exemplos.
dig example.com NS
dig @ns1.provider.example example.com SOA
dig @ns1.provider.example www.example.com A
dig @ns2.provider.example www.example.com A
TTL e cache negativa
Depois de mudança, resolvedores podem manter valor antigo até expirar o TTL anterior. NXDOMAIN também pode ficar em cache. Consulte autoritativos, compare resolvedores e anote TTL e hora antes de chamar propagação. Limpeza local não esvazia caches de outros.
Porta 53 e aplicativo
DNS normalmente usa UDP 53 e também TCP 53. Test-NetConnection -Port 53 testa TCP, não UDP. Compare dig normal e +tcp; conexão TCP bem-sucedida não prova DNS do aplicativo. Se A/AAAA estão corretos, teste porta 443 e HTTPS separadamente: rota, firewall, serviço e TLS.
# PowerShell: tests TCP, not UDP
Test-NetConnection 1.1.1.1 -Port 53
Test-NetConnection www.example.com -Port 443
# Linux: compare default DNS transport and TCP
dig @1.1.1.1 example.com A
dig +tcp @1.1.1.1 example.com A
curl -I https://www.example.com
DNSSEC e conclusão
Se só validadores retornam SERVFAIL, examine a cadeia DNSSEC com delv e o relógio. Reúna resultados reproduzíveis antes de mudar DNS ou limpar cache; separe cliente, consulta direta, autoritativos e serviço final.
delv example.com A
timedatectl status
Fontes
Microsoft Resolve-DnsName: https://learn.microsoft.com/en-us/powershell/module/dnsclient/resolve-dnsname ; diagnóstico DNS: https://learn.microsoft.com/en-us/troubleshoot/azure/dns/troubleshoot-dns ; BIND DNSSEC: https://bind9.readthedocs.io/en/stable/dnssec-guide.html .
Partilhar
Qual é a sua reação?
Gosto
0
Não gosto
0
Adoro
0
Divertido
0
Irritado
0
Triste
0
Uau
0