Listar todos os registros DNS em um domínio usando dig?

150

Minha empresa executa um DNS interno por mycompany.example

Há uma máquina na rede que preciso encontrar, mas esqueci o nome dela. Se eu pudesse ver uma lista, isso provavelmente movimentaria minha memória.

Como posso listar todos os registros de domínio para mycompany.example ?

    
por Runcible 05.05.2010 / 21:02

8 respostas

147

A resposta curta é para sua pergunta específica de listagem CNAMEs é que você não pode sem permissão para fazer transferências de zona (consulte Como listar todos os registros CNAME para um determinado domínio? ).

Dito isto, você pode usar o dig para listar os outros registros fazendo:

dig +nocmd yourdomain.example any +multiline +noall +answer
    
por 27.07.2011 / 00:28
69

Um comando muito mais fácil de lembrar (e mais informativo) é:

> dig google.com ANY

Que retorna o seguinte:

; <<>> DiG 9.8.3-P1 <<>> google.com ANY
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 31013
;; flags: qr rd ra; QUERY: 1, ANSWER: 22, AUTHORITY: 0, ADDITIONAL: 3

;; QUESTION SECTION:
;google.com.            IN  ANY

;; ANSWER SECTION:
google.com.     17  IN  A   74.125.225.72
google.com.     17  IN  A   74.125.225.73
google.com.     17  IN  A   74.125.225.78
google.com.     17  IN  A   74.125.225.64
google.com.     17  IN  A   74.125.225.65
google.com.     17  IN  A   74.125.225.66
google.com.     17  IN  A   74.125.225.67
google.com.     17  IN  A   74.125.225.68
google.com.     17  IN  A   74.125.225.69
google.com.     17  IN  A   74.125.225.70
google.com.     17  IN  A   74.125.225.71
google.com.     86400   IN  NS  ns1.google.com.
google.com.     86400   IN  NS  ns2.google.com.
google.com.     86400   IN  NS  ns3.google.com.
google.com.     86400   IN  NS  ns4.google.com.
google.com.     66641   IN  SOA ns1.google.com. dns-admin.google.com.    2013082900 7200 1800 1209600 300
google.com.     177 IN  MX  40 alt3.aspmx.l.google.com.
google.com.     177 IN  MX  50 alt4.aspmx.l.google.com.
google.com.     177 IN  MX  10 aspmx.l.google.com.
google.com.     177 IN  MX  20 alt1.aspmx.l.google.com.
google.com.     177 IN  MX  30 alt2.aspmx.l.google.com.
google.com.     287 IN  AAAA    2607:f8b0:4009:803::1007

;; ADDITIONAL SECTION:
ns1.google.com.     3924    IN  A   216.239.32.10
ns2.google.com.     64508   IN  A   216.239.34.10
ns3.google.com.     64508   IN  A   216.239.36.10

;; Query time: 77 msec
;; SERVER: 10.6.23.4#53(10.6.23.4)
;; WHEN: Fri Sep 13 14:26:09 2013
;; MSG SIZE  rcvd: 506
    
por 13.09.2013 / 21:29
49

Tente:

dig -tAXFR mycompany.example

Isso pode ou não funcionar. Muitos servidores DNS negarão uma Transferência de zona DNS como esta. Para mais informações, consulte Como funciona o protocolo AXFR

    
por 05.05.2010 / 21:07
19

Você também pode usar o utilitário de pesquisa host DNS com a opção -l :

host -l example.com

É claro que você precisa dos direitos de transferência de zona DNS para que isso funcione.

    
por 18.08.2011 / 08:16
2

A abordagem que você está tentando usar não funcionará. Consulte esta pergunta para obter mais informações. Assumindo que você é o administrador (se você não for, por favor, discuta isso com o seu administrador e leia o FAQ antes de postar novamente) simplesmente procure o arquivo de zona.

    
por 06.05.2010 / 00:20
2
dnscmd <ServerName> /zoneprint <Domain>

Eu achei que nenhuma das respostas até agora funcionaria para mim, principalmente devido a falhas de transferência de zona. Esse comando não encontrou esse problema e me apresentou algo mais próximo do que recebo na ferramenta DNS Manager.

    
por 11.05.2017 / 18:05
0

Você também pode usar a ferramenta nslookup:

nslookup example.com
    
por 07.10.2018 / 16:46
-7

Acabei usando o nmap para verificar a rede.

Por exemplo:

nmap -v -sP 192.16.0.0/16
    
por 05.05.2010 / 21:13