Quando você consulta QUALQUER, você obterá uma lista de todos os registros nesse nível, mas não abaixo.
# try this
dig google.com any
Isso pode retornar registros A, TXT, NS, MX, etc, se o nome do domínio for exatamente "google.com". No entanto, ele não retornará registros filhos (por exemplo, www.google.com). Mais precisamente, você pode obter esses registros, se existirem. O servidor de nomes não precisa retornar esses registros se optar por não fazer isso (por exemplo, para reduzir o tamanho da resposta).
Um AXFR é uma transferência de zona e provavelmente é o que você deseja. No entanto, eles geralmente são restritos e não estão disponíveis, a menos que você controle a zona. Geralmente, você realiza uma transferência de zona diretamente do servidor autoritário (o @ ns1.google.com abaixo) e geralmente de um servidor de nomes que pode não ser publicado (um servidor de nomes furtivos).
# This will return "Transfer failed"
dig @ns1.google.com google.com axfr
Se você tiver o controle da zona, poderá configurá-lo para obter transferências protegidas com uma chave TSIG. Este é um segredo compartilhado que o cliente pode enviar ao servidor para autorizar a transferência.
Eu melhorei a resposta de Josh . Eu notei isso
dig
apenas mostra entradas já presentes no cache do servidor de nomes consultado, por isso é melhor extrair um servidor de nome autoritativo da SOA (em vez de confiar no servidor de nome padrão). Também desabilitei a filtragem de IPs curinga, porque geralmente estou mais interessado na correção da configuração.O novo script usa um
-x
argumento para saída expandida e um-s NS
argumento para escolher um servidor de nomes específico:dig -x example.com
fonte
dig -t txt +nocmd $NS "$DOM" +noall +answer
(e modifique$DOM
) para inspecionar os registros TXT de um domínio.Na ausência da capacidade de fazer transferências de zona, escrevi este pequeno script do bash
dg
:Agora eu uso
dg example.com
para obter uma lista agradável e limpa de registros DNS oudg example.com x
para incluir vários outros subdomínios populares.grep -vE "${wild_ips}"
filtra registros que podem ser o resultado de uma entrada DNS curinga, como* 10800 IN A 1.38.216.82
. Caso contrário, uma entrada curinga faria parecer que havia registros para cada$COMMON_SUBDOMAN
.Nota: Isso depende de
ANY
consultas bloqueadas por alguns provedores de DNS, como o CloudFlare .fonte
dig -t txt +nocmd "$1" +noall +answer
(e modifique para"*.$1"
etc.) para inspecionar os registros TXT de um domínio.host -a
funciona bem, semelhante adig any
.POR EXEMPLO:
fonte
host -a
não seja um comando útil, apenas não faz o que o OP está procurando.Uma transferência de zona é a única maneira de garantir que você tenha todos os registros de subdomínio. Se o DNS estiver configurado corretamente, você normalmente não poderá executar uma transferência de zona externa.
O projeto scans.io possui um banco de dados de registros DNS que podem ser baixados e pesquisados por subdomínios. Isso requer o download dos 87 GB de dados DNS, como alternativa, você pode tentar a pesquisa on-line em https://hackertarget.com/find-dns-host-records/
fonte
Para Windows:
Pode ser necessário verificar o status dos registros DNS dos seus domínios ou verificar os Servidores de Nomes para ver quais registros os servidores estão puxando.
Inicie o prompt de comando do Windows navegando para Iniciar> Prompt de Comando ou via Executar> CMD.
Digite NSLOOKUP e pressione Enter. O servidor padrão está definido para o seu DNS local, o endereço será o seu IP local.
Defina o tipo de registro DNS que você deseja pesquisar digitando
set type=##
onde ## é o tipo de registro e pressione Enter. Você pode usar QUALQUER, A, AAAA, A + AAAA, CNAME, MX, NS, PTR, SOA ou SRV como o tipo de registro.Agora digite o nome do domínio que você deseja consultar e pressione Enter. Neste exemplo, usaremos Managed.com.
O NSLOOKUP agora retornará as entradas de registro para o domínio que você inseriu.
Você também pode alterar os servidores de nome que você está consultando. Isso é útil se você estiver verificando os registros antes que o DNS seja totalmente propagado. Para alterar o servidor de nomes, digite o servidor [servidor de nomes]. Substitua [name server] pelos Name Servers que você deseja usar. Neste exemplo, definiremos como NSA.managed.com.
Depois de alterado, altere o tipo de consulta (Etapa 3), se necessário, e insira um novo domínio (Etapa 4.)
Para Linux:
1) Verifique os registros DNS usando o comando Dig Dig significa a informação de domínio groper é uma ferramenta flexível para interrogar os servidores de nomes DNS. Ele realiza pesquisas de DNS e exibe as respostas retornadas dos servidores de nome consultados. A maioria dos administradores de DNS usa dig para solucionar problemas de DNS devido à sua flexibilidade, facilidade de uso e clareza de saída. Outras ferramentas de pesquisa tendem a ter menos funcionalidade do que cavar.
2) Verifique os registros DNS usando o comando NSlookup O Nslookup é um programa para consultar servidores de nomes de domínio da Internet. O Nslookup possui dois modos interativos e não interativos.
O modo interativo permite que o usuário consulte os servidores de nomes para obter informações sobre vários hosts e domínios ou imprima uma lista de hosts em um domínio.
O modo não interativo é usado para imprimir apenas o nome e as informações solicitadas para um host ou domínio. É uma ferramenta de administração de rede que os ajudará a verificar e solucionar problemas relacionados ao DNS.
3) Verifique os registros DNS usando o host Host Command é um utilitário simples para realizar pesquisas de DNS. É normalmente usado para converter nomes em endereços IP e vice-versa. Quando nenhum argumento ou opção é fornecido, o host imprime um breve resumo dos argumentos e opções da linha de comando.
fonte
O que você deseja é chamado de transferência de zona . Você pode solicitar uma transferência de zona usando
dig -t axfr
.Uma zona é um domínio e todos os domínios abaixo dele que não são delegados para outro servidor.
Observe que as transferências de zona nem sempre são suportadas. Eles não são usados na pesquisa normal, apenas na replicação de dados DNS entre servidores; mas existem outros protocolos que podem ser usados para isso (como rsync sobre ssh), pode haver um risco à segurança da exposição de nomes, e as respostas de transferência de zona custam mais para gerar e enviar do que as pesquisas DNS comuns.
fonte
Não há uma maneira fácil de obter todos os registros DNS de um domínio em uma instância. Você pode ver apenas alguns registros, por exemplo, se quiser ver um registro A para um determinado domínio, use o comando: dig a (type of record) domain.com. É o mesmo para todos os outros tipos de registros que você deseja ver para esse domínio.
Se você não estiver familiarizado com a interface da linha de comandos, também poderá usar um site como mxtoolbox.com. O que é uma ferramenta muito útil para obter registros de um domínio.
Espero que isso responda à sua pergunta.
fonte