Tutoriais

Como descarregar todos os registos DNS

Partilhar

Todos os registos DNS de todos os domínios da internet, num único ficheiro. É a isso que se resume obter o panorama completo, e há uma forma limpa de o fazer. Não quer um script que martela resolvedores durante uma semana e continua a esgotar o tempo em metade da internet. Quer as entradas A, MX, TXT e NS de centenas de milhões de nomes, já recolhidas, processadas e prontas a consultar. É isto que compra.

O que é um registo DNS?

Um registo DNS é uma linha no livro de endereços da internet. Diz ao mundo onde vive um nome e a forma de o alcançar. Qual o servidor que responde na web, para onde vai o seu email, quais os servidores de nomes autoritativos, entre outros dados. Cada nome ativo tem um punhado deles, e em conjunto constituem a impressão digital operacional desse domínio.

Há alguns tipos de registo que encontra vezes sem conta:

Registo O que faz Valor de exemplo
A aponta um domínio para um endereço IPv4 93.184.216.34
AAAA aponta um domínio para um endereço IPv6 2606:2800:220:1::
CNAME cria um alias de um nome para outro, nunca no apex de uma zona cdn.example.com
MX encaminha o email do domínio mail.example.com (prioridade 10)
TXT texto livre, contém tokens de SPF e de verificação v=spf1 include:_spf.google.com ~all
NS os servidores de nomes autoritativos do domínio ns1.cloudflare.com
SOA metadados de start-of-authority da zona NS primário, número de série, refresh, retry, expire
CAA quais as autoridades que podem emitir os seus certificados letsencrypt.org

Obter tudo isto para um único nome e sabe como está alojado, quem gere o seu email, e a segurança que o seu titular configurou. Obter tudo isto para todos os nomes ao mesmo tempo e tem nas mãos um mapa de toda a infraestrutura da internet. Esse segundo dataset é o que vale a pena ter, e o que ninguém oferece de graça.

Os registos que fazem o trabalho pesado

Um punhado destes tipos carrega a maior parte do sinal. O registo A é aquele que a maioria das pessoas imagina, ao mapear um nome para um endereço IPv4 para que um browser saiba a que servidor recorrer. O registo MX faz o mesmo trabalho para o email, indicando os servidores que aceitam uma mensagem e ordenando-os por prioridade. O registo TXT é o cavalo de batalha silencioso da segurança do email. No próprio domínio, o registo SPF indica quem pode enviar email em seu nome. As chaves de assinatura DKIM correspondentes e a política DMARC vivem em subnomes dedicados (_domainkey e _dmarc), e juntos os três dizem-lhe quão bem protegido está um endereço, visto que é a política DMARC, e não a mera presença dos registos, que faz cumprir alguma coisa. O registo NS indica os servidores autoritativos que respondem pela zona, o que lhe diz quem realmente gere a resolução de um nome.

Porque não consegue obter sozinho todos os registos DNS

Em teoria, poderia resolver todos os nomes com dig num ciclo. Na prática, esse plano morre depressa. Há centenas de milhões de domínios, e cada um precisa de várias consultas para captar todos os tipos, pelo que está a lidar com milhares de milhões de pesquisas. Os resolvedores públicos aplicam limites de taxa e depois bloqueiam-no muito antes de terminar. Os servidores autoritativos estrangulam o tráfego. Timeouts, tentativas repetidas e falhas transitórias fazem com que uma única passagem nunca fique completa, e o panorama continua a mudar enquanto a recolha decorre, pelo que a resposta já está desatualizada quando chega.

Depois há o parsing. As respostas em bruto são pacotes em formato wire, não uma exportação organizada. Transformar milhares de milhões deles em entradas limpas e tipadas que possa efetivamente consultar é, por si só, um projeto de engenharia sobreposto à recolha. A maioria das equipas começa por aqui, vê isso consumir um trimestre inteiro, e desiste em silêncio.

As falhas nem sequer são aleatórias. Os grandes fornecedores estrangulam deliberadamente a resolução em massa, pelo que quanto mais exaustiva for a sua recolha, mais depressa é interrompida. Os servidores autoritativos que usam GeoDNS devolvem respostas diferentes consoante a localização, pelo que um único ponto de observação perde silenciosamente registos que só aparecem numa região. Quando finalmente contornar tudo isto por engenharia, terá construído um pequeno sistema distribuído cujo único resultado são dados que alguém já vende prontos a usar.

Esse é o problema que a webatla já resolveu. Resolvemos todo o espaço de nomes numa base contínua, processamos cada resposta em JSON estruturado, e entregamos-lhe o dataset pronto. Salta a recolha, os bloqueios e o parsing, e vai diretamente para os dados.

Como a webatla recolhe todos os registos

A diferença em relação a uma recolha artesanal é a distribuição e a paciência. A webatla resolve o espaço de nomes a partir de muitos pontos de observação, numa base contínua, pelo que nenhum resolvedor é alguma vez sobrecarregado, e cada resposta é validada e processada numa entrada tipada antes de chegar à exportação. Um nome que falha numa passagem é tentado novamente na seguinte, pelo que a cobertura sobe ao longo do tempo em vez de se degradar. O resultado é a parte que realmente sempre quis. Uma entrada limpa e tipada para cada nome, não uma pilha de pacotes para depurar.

Todos os registos DNS, num único ficheiro

O dataset de DNS da webatla é a resposta para obter todos os registos DNS de uma só vez. Todos os domínios que seguimos, com as suas entradas A, AAAA, CNAME, MX, TXT, NS, SOA, CAA e DNSSEC recolhidas e processadas num único dataset limpo. Abrange todas as extensões de domínio, é reconstruído numa base contínua, e chega em JSONL que pode consultar assim que fica disponível.

Sem parque de resolvedores para gerir, sem pacotes para analisar, sem limites de taxa por domínio para combater. Compra uma vez e obtém todos os registos da internet a partir de uma única conta, pronto para análise em minutos e não em meses.

Como é cada linha

Cada linha é um nome e o seu panorama completo. Além dos próprios valores, cada linha indica quando os dados foram verificados pela última vez e se a pesquisa foi bem sucedida, para que saiba sempre quão recente é cada resposta:

{"domain":"example.com","dnsAt":"2026-06-22","dnsStatus":"TRUE","dnsRecords":{"A":["93.184.216.34"],"MX":[{"host":"mail.example.com","priority":10}],"NS":["a.iana-servers.net","b.iana-servers.net"],"TXT":["v=spf1 -all"],"SOA":{"mname":"ns.icann.org","serial":2026062201,"refresh":7200}}}
Campo Significado
domain o domínio a que os registos pertencem
dnsRecords todos os tipos indexados por nome (A, MX, TXT, entre outros)
dnsAt a data em que o DNS deste domínio foi verificado pela última vez
dnsStatus se a pesquisa foi bem sucedida

Também precisa dos detalhes de registo por trás de cada domínio? Junte o dataset RDAP e WHOIS. Quer DNS, registo e tecnologias num único lugar? O pacote all-data junta tudo por si.

Como trabalhar com o ficheiro

Por ser JSONL, um domínio por linha, os dados fluem para jq, DuckDB, pandas ou Spark sem serem carregados para a memória. Alguns exemplos.

Obtenha todos os nomes e os respetivos servidores de email:

jq -c '{domain, mx: .dnsRecords.MX}' dns.jsonl

Encontre todos os nomes cujos servidores de nomes funcionam na Cloudflare:

jq -c 'select(.dnsRecords.NS[]? | test("cloudflare"))' dns.jsonl > cloudflare-dns.jsonl

Conte os nomes que publicam um registo SPF, diretamente sobre os dados:

grep -c '"v=spf1' dns.jsonl

Esta última linha responde a uma pergunta de segurança de email para toda a internet, em segundos. Usámos os mesmos dados para mapear a concentração de servidores de nomes e registrars, e o método é idêntico. Um ficheiro, uma passagem, uma resposta real.

O que um dataset completo de DNS desbloqueia

Assim que cada entrada está reunida num único dataset consultável, muitos problemas dispendiosos reduzem-se a filtros de uma linha. O valor não está numa única pesquisa isolada, que qualquer pessoa consegue fazer à mão. Está em tê-las todas reunidas de uma vez, para que uma pergunta que antes significava percorrer um milhão de nomes se torne uma simples pesquisa num dataset que já tem.

O padrão é sempre o mesmo. A parte difícil nunca foi a análise. Foi obter, à partida, dados completos, atuais e estruturados, e fazê-lo sem uma equipa a vigiar um crawler durante um trimestre inteiro. Remova esse estrangulamento e as perguntas que consegue responder numa tarde passam a ser as que antes precisavam de um projeto e de um orçamento. O que está a pagar não é uma consulta inteligente. É o input limpo e pronto que torna a consulta inteligente trivial.

  • Segurança de email em escala. Leia o registo SPF e a configuração de email de cada nome para encontrar caixas de correio vulneráveis a spoofing, auditar uma base de clientes, ou dimensionar um mercado por fornecedor de email.
  • Mapeamento de superfície de ataque. Siga os registos A, AAAA e CNAME para ver onde um domínio e os seus subdomínios realmente resolvem, e que hosts partilhados se agrupam. Agrupar esses registos A por IP transforma a exportação numa base de dados de domínios alojados.
  • Inteligência sobre fornecedores. Agrupe domínios por NS ou MX para medir quem gere o DNS e o email da internet, e acompanhe migrações à medida que acontecem.
  • Adoção de DNSSEC. Conte os registos DS, DNSKEY e RRSIG para ver que zonas estão assinadas e quais não estão.
  • Higiene de certificados. Um registo CAA mostra em que autoridades um nome confia para emitir os seus certificados, pelo que uma configuração incorreta em todo um portefólio surge numa única passagem.
  • Acompanhamento de migrações. Quando uma empresa muda de email ou de alojamento, as suas entradas MX e NS mudam primeiro, pelo que observar esses dois tipos de registo ao longo do tempo revela a mudança antes de qualquer anúncio.

Todos estes casos precisam do mesmo ponto de partida. Um conjunto completo e atual de registos DNS para todo o espaço de nomes de domínios, não uma amostra que resolveu à mão.

Sempre atual, nunca um despejo único

O DNS não é estático. Um registo A muda quando um site troca de alojamento, os registos MX mudam durante uma migração de email, e um registo TXT altera-se sempre que alguém atualiza uma política de segurança. Um ficheiro que resolveu há seis meses é uma peça de museu.

O dataset de DNS da webatla é reconstruído numa base contínua, e cada nome tem a sua própria marca temporal dnsAt, para que veja sempre quão atual é cada entrada. Volte a obtê-lo na cadência que o seu trabalho exigir, e cada ficheiro reflete o DNS de hoje.

Perguntas frequentes

Que tipos de registo DNS estão incluídos? Os comuns que todos os domínios usam, incluindo A, AAAA, CNAME, MX, TXT, NS, SOA e CAA, mais registos DNSSEC como DS, DNSKEY e RRSIG quando presentes. Tudo é processado em JSON tipado, para que nunca tenha de tocar num pacote em bruto.

Quantos domínios cobre? Registos DNS para os domínios de todas as extensões de domínio que a webatla segue, centenas de milhões deles, num único ficheiro.

Posso obter apenas os registos MX ou apenas os TXT? Sim. O ficheiro contém todos os tipos de registo por domínio, pelo que um único filtro jq ou SQL lhe dá apenas os registos MX, apenas as strings SPF, ou qualquer outro subconjunto que precise. É um filtro, não uma compra separada.

Em que formato está? JSONL limpo, um domínio por linha, com os registos DNS em JSON estruturado. Entra diretamente em jq, DuckDB, pandas e BigQuery.

Quão atuais são os dados? Reconstruídos numa base contínua, e cada domínio tem uma data dnsAt para que veja quão recentes são os seus registos. Nunca um despejo único e desatualizado.

Posso associar os registos à propriedade do IP ou à localização? Os registos A e AAAA dão-lhe os endereços IP, que pode cruzar com uma fonte de inteligência de IP, para obter o ASN com fiabilidade e a geografia de forma aproximada.

Os registos cobrem subdomínios? O conjunto está indexado pelo nome registado, e capta as entradas publicadas nesse nome.

Quanto custa? Um preço fixo por um mês de acesso numa única conta. Consulte os preços para o valor atual.

Descarregue todos os registos DNS

Deixe de construir um parque de resolvedores que o vai fazer ser banido antes de terminar. Descarregue o dataset de DNS da webatla → e tenha todos os registos DNS de todos os domínios, de A a DNSSEC, em JSONL limpo que pode consultar hoje mesmo. Quer dados de registo e de tecnologias ao lado? O pacote all-data reúne o DNS e o resto num único lugar. É a forma mais rápida de passar de «preciso de todos os registos DNS» a realmente os ter.

Obtenha os dados por trás deste artigo

O mesmo JSONL que usámos para escrever este artigo, a partir de agora com exportações diárias atualizadas. Compre um dos datasets que o inclui.

M
Marina
Redatora de dados · webatla

Escreve o jornalismo de dados por trás dos datasets da webatla, tendências de domínios, adoção de tecnologias e como o índice é construído.

Continuar a ler