Ricerca nel sito web

10 comandi Dig (Domain Information Groper) per interrogare il DNS


Nel nostro articolo precedente, abbiamo spiegato esempi e utilizzo del comando nslookup, che è uno strumento da riga di comando di rete utilizzato per interrogare e ottenere informazioni sul DNS (Domain Name System).

Qui, in questo articolo, troviamo un altro strumento da riga di comando chiamato dig, che è molto simile allo strumento nslookup di Linux. Vedremo da vicino l'uso del comando dig con i loro esempi e il loro utilizzo.

Dig sta per (Domain Information Groper) è uno strumento da riga di comando di amministrazione della rete per interrogare il Domain Name System (DNS ) server dei nomi.

È utile per verificare e risolvere i problemi DNS e anche per eseguire ricerche DNS e visualizzare le risposte restituite dal server dei nomi interrogato.

Dig fa parte della suite software per server dei nomi di dominio BIND. Il comando dig sostituisce strumenti più vecchi come nslookup e host. lo strumento dig è disponibile nelle principali distribuzioni Linux.

1. Interrogare il record del dominio “A”.

dig yahoo.com

; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 20076
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com.			IN	A

;; ANSWER SECTION:
yahoo.com.		387	IN	A	98.137.11.163
yahoo.com.		387	IN	A	74.6.143.26
yahoo.com.		387	IN	A	74.6.143.25
yahoo.com.		387	IN	A	74.6.231.20
yahoo.com.		387	IN	A	74.6.231.21
yahoo.com.		387	IN	A	98.137.11.164

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 12:58:13 IST 2021
;; MSG SIZE  rcvd: 134

Il comando precedente fa sì che dig cerchi il record "A" per il nome di dominio yahoo.com. Il comando Dig legge il file /etc/resolv.conf e interroga i server DNS ivi elencati. La risposta dal server DNS è ciò che dig mostra.

Cerchiamo di comprendere l'output dei comandi:

  • Le righe che iniziano con ; sono commenti che non fanno parte delle informazioni.
  • La prima riga ci dice la versione del comando dig (9.16.1).
  • Successivamente, dig mostra l'intestazione della risposta ricevuta dal server DNS.
  • Poi c'è la sezione delle domande, che ci dice semplicemente la query, che in questo caso è una query per il record "A" di yahoo.com. Il IN significa che si tratta di una ricerca su Internet (nella classe Internet).
  • La sezione delle risposte ci dice che yahoo.com ha l'indirizzo IP 98.137.11.163.
  • Infine, ci sono alcune statistiche sulla query. Puoi disattivare queste statistiche utilizzando l'opzione +nostats.

2. Interrogare il record del dominio “A” con +short

Per impostazione predefinita, dig è piuttosto dettagliato. Un modo per ridurre l'output è utilizzare l'opzione +short. che ridurrà drasticamente l'output come mostrato di seguito.

dig yahoo.com +short

98.137.11.164
74.6.231.21
74.6.231.20
74.6.143.25
74.6.143.26
98.137.11.163

Nota: per impostazione predefinita, dig cerca il record "A" del dominio specificato, ma puoi specificare anche altri record. Il record MX o Mail eXchange indica ai server di posta come instradare la posta elettronica per il dominio. Allo stesso modo TTL, SOA, ecc.

3. Interrogazione del record MX per il dominio

Interrogazione solo di diversi tipi di record di risorse DNS.

dig yahoo.com MX

; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com MX
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 60630
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com.			IN	MX

;; ANSWER SECTION:
yahoo.com.		51	IN	MX	1 mta6.am0.yahoodns.net.
yahoo.com.		51	IN	MX	1 mta5.am0.yahoodns.net.
yahoo.com.		51	IN	MX	1 mta7.am0.yahoodns.net.

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:03:32 IST 2021
;; MSG SIZE  rcvd: 117

4. Interrogazione del record SOA per il dominio

dig yahoo.com SOA

; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com SOA
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25140
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com.			IN	SOA

;; ANSWER SECTION:
yahoo.com.		1800	IN	SOA	ns1.yahoo.com. hostmaster.yahoo-inc.com. 
2021121001 3600 300 1814400 600

;; Query time: 128 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:08 IST 2021
;; MSG SIZE  rcvd: 99

5. Interrogazione del record TTL per il dominio

dig yahoo.com TTL

; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com TTL
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64017
;; flags: qr rd ra; QUERY: 1, ANSWER: 6, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;yahoo.com.			IN	A

;; ANSWER SECTION:
yahoo.com.		1606	IN	A	74.6.143.25
yahoo.com.		1606	IN	A	74.6.231.21
yahoo.com.		1606	IN	A	74.6.143.26
yahoo.com.		1606	IN	A	98.137.11.164
yahoo.com.		1606	IN	A	98.137.11.163
yahoo.com.		1606	IN	A	74.6.231.20

;; Query time: 4 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE  rcvd: 134

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 27889
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 65494
;; QUESTION SECTION:
;TTL.				IN	A

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; WHEN: Fri Dec 10 13:04:58 IST 2021
;; MSG SIZE  rcvd: 32

6. Sezione di sola risposta alle query

dig yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats

; <<>> DiG 9.16.1-Ubuntu <<>> yahoo.com +nocomments +noquestion +noauthority +noadditional +nostats
;; global options: +cmd
yahoo.com.		1556	IN	A	74.6.231.20
yahoo.com.		1556	IN	A	98.137.11.163
yahoo.com.		1556	IN	A	98.137.11.164
yahoo.com.		1556	IN	A	74.6.143.26
yahoo.com.		1556	IN	A	74.6.231.21
yahoo.com.		1556	IN	A	74.6.143.25

7. Interrogazione di TUTTI i tipi di record DNS

dig yahoo.com ANY +noall +answer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com ANY +noall +answer
;; global options: +cmd
yahoo.com.              3509    IN      A       72.30.38.140
yahoo.com.              3509    IN      A       98.138.253.109
yahoo.com.              3509    IN      A       98.139.183.24
yahoo.com.              1709    IN      MX      1 mta5.am0.yahoodns.net.
yahoo.com.              1709    IN      MX      1 mta6.am0.yahoodns.net.
yahoo.com.              1709    IN      MX      1 mta7.am0.yahoodns.net.
yahoo.com.              43109   IN      NS      ns2.yahoo.com.
yahoo.com.              43109   IN      NS      ns8.yahoo.com.
yahoo.com.              43109   IN      NS      ns3.yahoo.com.
yahoo.com.              43109   IN      NS      ns1.yahoo.com.
yahoo.com.              43109   IN      NS      ns4.yahoo.com.
yahoo.com.              43109   IN      NS      ns5.yahoo.com.
yahoo.com.              43109   IN      NS      ns6.yahoo.com.

8. Ricerca inversa DNS

Esecuzione di query di ricerca inversa DNS. Visualizza solo la sezione di risposta utilizzando +breve.

dig -x 72.30.38.140 +short

ir1.fp.vip.sp2.yahoo.com.

9. Interrogazione di più record DNS

Interroga la query specifica DNS di più siti Web, vale a dire. Record MX, NS, ecc.

dig yahoo.com mx +noall +answer redhat.com ns +noall +answer

; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.10.rc1.el6 <<>> yahoo.com mx +noall +answer redhat.com ns +noall +answer
;; global options: +cmd
yahoo.com.              1740    IN      MX      1 mta6.am0.yahoodns.net.
yahoo.com.              1740    IN      MX      1 mta7.am0.yahoodns.net.
yahoo.com.              1740    IN      MX      1 mta5.am0.yahoodns.net.
redhat.com.             132     IN      NS      ns1.redhat.com.
redhat.com.             132     IN      NS      ns4.redhat.com.
redhat.com.             132     IN      NS      ns3.redhat.com.
redhat.com.             132     IN      NS      ns2.redhat.com.

10. Crea il file .digrc

Crea il file .digrc in $HOME/.digrc per memorizzare le opzioni di scavo predefinite.

dig yahoo.com
yahoo.com.              3427    IN      A       72.30.38.140
yahoo.com.              3427    IN      A       98.138.253.109
yahoo.com.              3427    IN      A       98.139.183.24

Abbiamo memorizzato le opzioni +noall +answer in modo permanente nel file .digrc nella directory home dell'utente. Ora, ogni volta che viene eseguito il comando dig, verrà mostrata solo la sezione di risposta dell'output dig. Non è necessario digitare ogni volta opzioni come +noall +risposta.

In questo articolo, abbiamo cercato di trovare il comando dig che potrebbe aiutarti a cercare informazioni relative al Domain Name Service (DNS). Condividi i tuoi pensieri attraverso la casella dei commenti.