← Voltar
Tempo médio: 15-25 minNível técnico: Avançado

Dig

Objetivo

Inspecionar consultas e respostas DNS com controle do servidor, tipo, transporte, rastreamento e DNSSEC. Dig é preferível ao Nslookup quando flags, delegação, autoridade ou validação precisam ser preservadas como evidência.

Estrutura da resposta

  • HEADER: opcode, status (NOERROR, NXDOMAIN, SERVFAIL etc.), ID e contagens.
  • flags: `qr` resposta; `aa` autoritativa; `rd` recursão desejada; `ra` disponível; `ad` dados autenticados pelo resolvedor; `cd` validação desabilitada pelo cliente.
  • QUESTION: nome, classe e tipo consultados.
  • ANSWER: registros que respondem à pergunta.
  • AUTHORITY: servidores/ SOA relevantes para delegação ou resposta negativa.
  • ADDITIONAL: dados auxiliares, como endereços de NS, e pseudo-seção OPT/EDNS.
O TTL de cada registro é tempo de cache remanescente naquela resposta, não latência. Em cache, pode diminuir entre consultas.

Comandos essenciais

dig exemplo.com A
dig exemplo.com AAAA
dig exemplo.com MX
dig exemplo.com NS
dig exemplo.com TXT
dig www.exemplo.com CNAME
dig exemplo.com SOA
dig -x 192.0.2.10
dig @1.1.1.1 exemplo.com A
dig exemplo.com A +short
dig exemplo.com +trace
dig exemplo.com A +tcp
dig exemplo.com A +dnssec
dig @ns1.exemplo.com exemplo.com SOA +norecurse
Para PTR IPv6, `dig -x 2001:db8::10`. `@servidor` seleciona o DNS. `+short` é útil em scripts, mas omite status, flags e autoridade; preserve a saída completa em diagnóstico. `+tcp` testa TCP/53, necessário em respostas truncadas e operações DNS específicas. `+dnssec` solicita registros DNSSEC; a presença de RRSIG não prova, sozinha, validação local.

`+trace`

`dig +trace` percorre delegações a partir da raiz usando consultas iterativas feitas pela máquina local. Ele não reproduz exatamente a visão do resolvedor recursivo e depende de acesso direto aos servidores autoritativos. Use-o para localizar delegação quebrada, NS/glue inconsistente e etapa que deixa de responder.

Diagnóstico e erros

ResultadoHipóteses e ação
NOERROR com ANSWERdado retornado; valide tipo, TTL, CNAME e IP efetivo
NOERROR sem ANSWERnome pode existir sem aquele tipo; examine AUTHORITY
NXDOMAINnome inexistente segundo a autoridade/cache negativo; confira zona e digitação
SERVFAILfalha de resolução; compare `+trace`, DNSSEC e autoritativos
REFUSEDpolítica recusou a consulta/recursão
`tc`resposta truncada em UDP; repita `+tcp`
timeoutrota, firewall, servidor ou transporte; compare servidor e captura
Compare o resolvedor do cliente, o recursivo do ISP e autoritativos. A, AAAA e CNAME podem variar por CDN/anycast/geografia. Se A funciona e AAAA leva a falha da aplicação, valide conectividade IPv6 antes de culpar DNS.

Procedimento, evidências e limitações

Registre comando, versão, servidor, nome absoluto, tipo/classe, HEADER/flags, seções, query time, server, horário, tamanho, UDP/TCP e resultado de DNSSEC. Correlacione com TCPDump/Wireshark quando houver timeout, retransmissão ou resposta inesperada.
Dig não testa a aplicação e `+trace` não representa cache/política do recursivo. Não limpe caches antes de preservar evidência; não trate TTL como prazo global de propagação; não publique TXT/PCAP com segredos.

Diferença para Nslookup

Nslookup é conveniente e amplamente disponível. Dig oferece saída mais estruturada e controles operacionais adequados a delegação, DNSSEC, TCP e automação.

Conclusão

Dig transforma “DNS não funciona” em evidências sobre servidor, transporte, status, autoridade e cadeia de delegação.

Documentos Relacionados