Introduzione
Lo dig
Il comando in Linux viene utilizzato per raccogliere informazioni DNS. È l'acronimo di Domain Information Groper e raccoglie dati sui server dei nomi di dominio. Lo dig
Il comando è utile per la risoluzione dei problemi DNS, ma viene utilizzato anche per visualizzare le informazioni DNS.
Questa guida ti aiuterà a comprendere e utilizzare Linux dig
comando.
Prerequisiti
- Un sistema che esegue Linux
- Un account utente con privilegi sudo o root
- Accesso a una finestra di terminale/riga di comando
Installa dig su Linux (opzionale)
La maggior parte dei moderni sistemi Linux include dig
comando.
Verifica che sia installato controllando la versione del software. Per farlo, apri una riga di comando e inserisci quanto segue:
dig -v
Il sistema dovrebbe rispondere con un codice numerico. Se il sistema non riesce a trovare il comando specificato, installa dig inserendo quanto segue:
Debian/Ubuntu:
sudo apt-get install dnsutils
CentOS/RedHat:
sudo yum install bind-utils
Al termine dell'installazione, verifica l'installazione con il seguente comando:
dig -v
Per ulteriori informazioni su CentOS e RHEL, fare riferimento al nostro articolo su Come installare dig su CentOS 7 e 8.
sintassi dig
Lo dig
comando viene utilizzato come segue:
dig [server] [name] [type]
[server]
– Il nome host o l'indirizzo IP a cui è indirizzata la query
[name]
– Il DNS (Domain Name Server) del server da interrogare
[type]
– Il tipo di record DNS da recuperare. Per impostazione predefinita (o se lasciato vuoto), dig
utilizza il tipo di record A
Lo dig
il comando risolve il nome host prima di procedere con l'interrogazione del server dei nomi.
Come utilizzare il comando dig con esempi
Diamo un'occhiata all'utilizzo di base di dig
comando.
Ricerca DNS
Lo dig
comando abilita la ricerca di un nome di dominio. Per eseguire una ricerca DNS, apri il terminale e digita:
dig google.com
Dovresti vedere qualcosa di simile al seguente:
La sezione più importante è la RISPOSTA sezione:
- La prima colonna elenca il nome del server che è stato interrogato
- La seconda colonna è il Tempo di vivere , un intervallo di tempo dopo il quale il record viene aggiornato
- La terza colonna mostra la classe della query:in questo caso, "IN" sta per Internet
- La quarta colonna mostra il tipo di query:in questo caso, "A" sta per un record A (indirizzo)
- L'ultima colonna mostra l'indirizzo IP associato al nome di dominio
Altre righe possono essere tradotte come segue:
La prima riga mostra la versione di dig
comando.
L'INTESTAZIONE la sezione mostra le informazioni che ha ricevuto dal server. I flag si riferiscono al formato della risposta.
La OPZ PSEUDOSECTION visualizza i dati avanzati:
- EDNS – Sistema di estensione per DNS, se utilizzato
- Flag:vuoto perché non è stato specificato alcun contrassegno
- UDP:dimensione del pacchetto UDP
La DOMANDA la sezione mostra i dati della query che sono stati inviati:
- La prima colonna è il nome di dominio richiesto
- La seconda colonna è il tipo (IN =Internet) della query
- La terza colonna specifica il record (A =Indirizzo), se non diversamente specificato
Le STATISTICHE la sezione mostra i metadati sulla query:
- Tempo della query:il tempo impiegato per una risposta
- SERVER – L'indirizzo IP e la porta del server DNS che risponde. Potresti notare un indirizzo di loopback in questa riga:si riferisce a un'impostazione locale che traduce gli indirizzi DNS
- QUANDO – Timestamp di esecuzione del comando
- MSG SIZE rcvd – La dimensione della risposta dal server DNS
Specifica il server DNS
Per impostazione predefinita, dig
usa la configurazione locale per decidere quale nameserver interrogare. Utilizza il comando seguente per specificare il server di dominio di Google:
dig @8.8.8.8 google.com
Il terminale stampa il seguente output:
QUALSIASI Opzione
Per restituire tutti i risultati della query, utilizzare quanto segue:
dig google.com ANY
Il sistema elencherà tutti i google.com
Record DNS che trova, insieme agli indirizzi IP.
Opzione di risposta breve
Per visualizzare solo l'indirizzo IP associato al nome di dominio, inserire quanto segue:
dig google.com +short
L'output mostra il contenuto come nell'immagine seguente:
Opzione di risposta dettagliata
Esegui +noall +answer
con lo dig
comando per accedere a informazioni dettagliate nelle risposte sezione:
dig google.com +noall +answer
L'esempio seguente mostra l'output previsto.
Opzione traccia
Il +trace
opzione elenca ogni server diverso che la query passa alla sua destinazione finale. Utilizzare questa opzione di comando per identificare l'indirizzo IP in cui il traffico è in calo.
dig google.com +trace
L'output dovrebbe essere simile a quello visto di seguito:
Ricerca DNS inversa
Per cercare un nome di dominio in base al suo indirizzo IP, digita quanto segue:
dig -x 172.217.14.238
L'output mostra il contenuto come nell'immagine seguente:
Il -x
l'opzione consente di specificare l'indirizzo IP invece di un nome di dominio. Questo può essere combinato con altre opzioni:
dig +noall +answer -x 172.217.14.238
L'esempio seguente mostra l'output previsto.
Modalità batch per leggere i nomi host da un file
Per cercare più voci, inizia creando un file in cui memorizzare i nomi di dominio:
sudo nano domain_research.txt
Vedi esempio nell'immagine qui sotto:
Aggiungi diversi siti web di interesse come nell'immagine qui sotto:
Salva il file ed esci. Ora, specifica il file usando il -f
opzione nella dig
comando:
dig -f domain_research.txt +short
Vedi un esempio dell'output del comando di seguito:
Regola permanentemente le opzioni predefinite
Le informazioni visualizzate da dig possono essere modificate nel ~/.digrc
file. Apri il file per la modifica con il seguente comando:
sudo nano ~/.digrc
Aggiungi le seguenti righe:
+noall
+answer
Vedi un esempio nell'immagine qui sotto:
Scrivi il file (ctrl
–o
) ed esci (ctrl
–x
).
Esegui lo dig
comando di nuovo:
dig google.com
Dovresti vedere solo il comando risposte, come se avessi aggiunto manualmente +noall
e +answer
.