Come utilizzare il Comando dig su Linux

0
318
Fatmawati Achmad Zaenuri/Shutterstock

Linux scavare comando consente di eseguire una query DNS server e svolgere le ricerche DNS. È inoltre possibile trovare il dominio di un indirizzo IP, porta indietro. Vi mostreremo come!

Come scavare Comando Funziona

La gente usa Linux scavare comando query Domain Name System (DNS). dig è un acronimo per Informazioni di Dominio Groper. Con dig, è possibile eseguire una query DNS server per informazioni riguardanti i vari record DNS, tra cui gli indirizzi di host, scambi di posta, server di nome, e le relative informazioni. È stato destinato per essere uno strumento per la diagnosi dei problemi di DNS. Tuttavia, è possibile utilizzarlo per curiosare e imparare di più su DNS, che è uno dei sistemi centrali che continuano a internet routing del traffico.

Internet utilizza internet protocol (IP) indirizzi per identificare i “luoghi” in giro per il web, ma le persone a utilizzare i nomi di dominio. Quando si digita un nome di dominio in un’applicazione, come un browser web o un client SSH, qualcosa che ha a tradurre il nome di dominio e l’indirizzo IP effettivo. Questo è dove il Sistema di Nome di Dominio è disponibile in.

Quando si utilizza un nome di dominio con qualsiasi dispositivo connesso a internet programma, il vostro router non riesce a risolvere (a meno che non è in cache da una precedente richiesta). Così, il vostro router query o il Provider di servizi Internet (ISP) DNS server, o qualsiasi altro hai configurato il sistema per l’uso. Questi sono chiamati DNS precursore server.

Se il server DNS ha recentemente ricevuto la stessa richiesta da parte di qualcun altro sullo stesso computer, la risposta potrebbe essere nella sua cache. Se questo è il caso, è sufficiente inviare le stesse informazioni del programma.

Se il DNS precursore server non è possibile individuare il dominio nella sua cache, contatta un DNS root name server. Un root server non contengono le informazioni necessarie per risolvere i nomi di dominio in indirizzi IP, ma di mantenere le liste di server che possono aiutare con la vostra richiesta.

Il server principale guarda il dominio di primo livello a cui il tuo nome di dominio appartiene, come .COM, .ORG, .CO.UK, e così via. Invia quindi un elenco dei top-level domain server che gestiscono questi tipi di domini torna il DNS precursore del server. Il DNS precursore server può quindi fare la sua richiesta, una volta di più, di un dominio di primo livello server.

Il dominio di primo livello server invia i dettagli dell’autorevole nome del server (dove i dettagli del dominio sono memorizzate) al DNS precursore del server. Il server DNS query authoritative name server che ospita la zona del dominio originariamente inserito nel programma. Authoritative name server invia l’indirizzo IP per il server DNS, che, a sua volta, invia di nuovo voi.

L’installazione di scavare

scavare è stato già installato sul nostro Ubuntu 18.04 e Fedora 30 computer. Tuttavia, abbiamo dovuto installare su Manjaro 18.04 computer con il seguente comando:

sudo pacman -Sy bind-strumenti

Ottenere Iniziato con dig

Nel nostro esempio, avremo gli indirizzi IP associato un nome di dominio. Spesso, più indirizzi IP sono associati con un unico nome di dominio. Questo accade spesso se il bilanciamento del carico è utilizzato, per esempio.

Usiamo il +breve query opzione, come mostrato di seguito, che ci dà una lapidaria risposta:

scavare howtogeek.com +breve

Tutti gli indirizzi IP associati al howtogeek.com dominio sono elencate per noi. All’altra estremità dello spettro, se non usiamo il +breve query opzione, l’output è molto dettagliato.

Così, abbiamo digitare il seguente per tubo attraverso meno:

scavare howtogeek.com | meno

L’output viene visualizzato in meno, come mostrato di seguito.

Ecco l’elenco completo:

; <<>> DiG 9.11.3-1ubuntu1.11-Ubuntu <<>> howtogeek.com
;; opzioni globali: +cmd
;; Avuto risposta:
;; ->>INTESTAZIONE<<- opcode: QUERY, stato: NOERROR, id: 12017
;; flags: qr rd ra; QUERY: 1, RISPOSTA: 4, AUTORITÀ: 0, AGGIUNTIVE: 1

;; OPT PSEUDOSECTION:
; EDNS: versione: 0, flag:; udp: 65494
;; DOMANDA DI SEZIONE:
;howtogeek.com. IN UN

;; RISPOSTA SEZIONE:
howtogeek.com. 3551 IN UN 151.101.194.217
howtogeek.com. 3551 IN UN 151.101.130.217
howtogeek.com. 3551 IN UN 151.101.66.217
howtogeek.com. 3551 IN UN 151.101.2.217

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; QUANDO: Dom Mar 22 07:44:37 EDT 2020
;; MSG SIZE rcvd: 106

Analizziamo che pezzo per pezzo.

Intestazione

In primo luogo, diamo un’occhiata a che abbiamo nell’Intestazione:

; <<>> DiG 9.11.3-1ubuntu1.11-Ubuntu <<>> howtogeek.com
;; opzioni globali: +cmd
;; Avuto risposta:
;; ->>INTESTAZIONE<<- opcode: QUERY, stato: NOERROR, id: 12017
;; flags: qr rd ra; QUERY: 1, RISPOSTA: 4, AUTORITÀ: 0, AGGIUNTIVE: 1

Ora, qui è che cosa tutto questo significa:

  • Prima linea: La versione di scavare e di dominio che è stato interrogato.
  • Opzioni globali: Come vedremo, è possibile utilizzare scavare per eseguire query su più domini contemporaneamente. Questa riga mostra le opzioni che sono state applicate a tutti il dominio query. Nel nostro semplice esempio, è stato solo il default +cmd (command) opzione.
  • Codice operativo: Query: Questo è il tipo di operazione che è stato richiesto che, in questo caso, è stata una query. Questo valore può anche essere iquery per un inverso query, o se sei solo verificare lo stato del sistema DNS.
  • Stato: Noerror: non Ci sono errori e la richiesta è stata correttamente risolto.
  • ID: 12017: Questo ID casuale lega la richiesta e la risposta insieme.
  • Bandiere: qr rd ra: Questi stand per la query, la ricorsione desiderato, e la ricorsione disponibili. La ricorsione è una forma di ricerca DNS (l’altro è di tipo iterativo). Si potrebbe anche vedere AA, che si distingue per la Risposta Autorevole, il che significa un Nome Autorevole Server fornito la risposta.
  • Query: 1: Il numero di query in questa sessione, che era uno di quelli.
  • Risposta: 4: Il numero di risposte in questa risposta, che è di quattro.
  • Autorità: 0: Il numero di risposte che venivano da un Autorevole Nome del Server, che è stato pari a zero in questo caso. La risposta è stata restituita dalla cache del DNS precursore del server. Non ci sarà nessun autorevole sezione nella risposta.
  • Supplementari: 1: C’è un pezzo di ulteriori informazioni. (Stranamente, non è elencato, a meno che questo valore è di due o superiore).

Opt Pseudosection

A quel punto, si veda il seguente in Opt Pseudosection:

;; OPT PSEUDOSECTION:
; EDNS: versione: 0, flag:; udp: 65494

Let’s break down:

  • EDNS: versione 0: La versione del Sistema di Estensione per il DNS che viene utilizzato. EDNS trasmette dati estesi e bandiere estendendo la dimensione del UDP (User Datagram Protocol) pacchetti. Questo è indicato da una dimensione variabile flag.
  • flag: flag sono in uso.
  • udp: 4096: dimensioni Del pacchetto UDP.

Domanda Sezione

Nella sezione Domanda, vediamo il seguente:

;; DOMANDA DI SEZIONE:
;howtogeek.com. IN UN

Ecco cosa significa:

  • howtogeek.com: Il nome di dominio stiamo interrogando.
  • IN: stiamo facendo un corso di internet query.
  • R: a Meno che non si specifichi diversamente, scavare la richiesta di un A (indirizzo) record dal server DNS.

Risposta Sezione

La Risposta sezione contiene i seguenti quattro risposte che abbiamo ricevuto dal server DNS:

howtogeek.com. 3551 IN UN 151.101.194.217
howtogeek.com. 3551 IN UN 151.101.130.217
howtogeek.com. 3551 IN UN 151.101.66.217
howtogeek.com. 3551 IN UN 151.101.2.217

Ecco cosa queste risposte media:

  • 3551: Questo è il TTL (Time to Live), un 32-bit con segno intero che contiene l’intervallo di tempo per cui un record possono essere memorizzati nella cache. Quando scade, i dati devono essere utilizzati in risposta a una richiesta fino a quando non è stato aggiornato dal server DNS.
  • A: Abbiamo fatto un corso di Internet query.
  • A: Abbiamo chiesto Un record dal server DNS.

La Sezione Statistiche

La statistica è la sezione finale, e contiene le seguenti informazioni:

;; Query time: 0 msec
;; SERVER: 127.0.0.53#53(127.0.0.53)
;; QUANDO: Dom Mar 22 07:44:37 EDT 2020
;; MSG SIZE rcvd: 106

Ecco cosa abbiamo:

  • Query Time: 0 msec: Il tempo impiegato per ottenere la risposta.
  • SERVER: 127.0.0.53#53(127.0.0.53): L’Indirizzo IP e numero di porta del server DNS che hanno risposto. In questo caso, verso cui punta il caching locale stub resolver. Questo inoltra le richieste DNS per qualunque monte server DNS sono configurati. Sul Manajro computer di prova, l’indirizzo elencato qui era 8.8.8.8#53, che è di Google public DNS di servizio.
  • QUANDO: Dom Mar 22 07:44:37 EDT 2020: Quando è stata fatta la richiesta.
  • MSG SIZE rcvd: 106: La dimensione del messaggio ricevuto dal server DNS.

Essere Selettivo

Non è necessario accontentarsi di due estremi dello stretto-lipped e loquace. Lo scavo di comando permette selettivamente includere o escludere sezioni da i risultati.

Le seguenti opzioni di query per rimuovere la sezione con i risultati:

  • +nocomments: non mostra le righe di commento.
  • +noauthority: non mostra la sezione di autorità.
  • +noadditional: non vedi sezione aggiuntiva.
  • +nostats: non vedi la sezione statistiche.
  • +noanswer: non mostrare la risposta sezione.
  • +noall: non mostrare nulla!

Il +noall opzione query di solito è combinato con uno di quelli di cui sopra, per includere una sezione risultati. Così, invece di digitare una lunga stringa di query opzioni per disattivare la più sezioni, è possibile utilizzare i tasti +noall a girare tutto.

È quindi possibile utilizzare il seguente inclusive di opzioni di query per trasformare quelli che si desidera vedere su:

  • +commenti: Mostra le righe di commento.
  • +autorità: Vedi la sezione di autorità.
  • +aggiuntiva: Vedi sezione aggiuntiva.
  • +statistiche: Vedi la sezione statistiche.
  • +risposta: Vedi risposta sezione.
  • +tutti: Vedi tutto.

Abbiamo digitare il seguente per effettuare una richiesta e di escludere le righe di commento:

scavare howtogeek.com +nocomments

Se usiamo il +noall query opzione, come mostrato di seguito, non si otterrà alcun utile di uscita:

scavare howtogeek.com +noall

Si può scegliere di aggiungere le sezioni che si desidera visualizzare. Per aggiungere la risposta sezione, tipo il seguente:

scavare howtogeek.com +noall +risposta

Se si digita il seguente comando per attivare sul +statistiche, staremo a vedere anche la sezione statistiche:

scavare howtogeek.com +noall +risposta +stats

Il +noall +risposta combinazione è usata spesso. È possibile aggiungere altre sezioni per la riga di comando, come richiesto. Se si desidera evitare di digitare +noall +risposta sulla riga di comando ogni volta che si scava, si possono mettere in un file di configurazione chiamato “.digrc.” Si trova nella tua home directory.

Digitiamo il seguente comando per creare un eco:

echo “+noall +risposta” > $HOME/.digrc

Possiamo quindi digitare il seguente per verificare il suo contenuto:

cat .digrc

Queste due opzioni vengono applicate a tutti i futuri usi di scavare, come mostrato di seguito:

scavare ubuntu.org
scavare linux.org
scavare github.com

Questo scavare il file di configurazione in uso per il restante esempi riportati in questo articolo.

Record DNS

Le informazioni restituite al tuo scavare richieste è tirato da diversi tipi di dati conservati sul server DNS. A meno che non chiediamo qualcosa di diverso, di scavare query A (indirizzo) record. I seguenti sono i tipi di record che comunemente usata per scavare:

  • Un Record: Link il dominio l’indirizzo IP versione 4.
  • Record MX: Mail exchange record di direct e-mail inviate a domini per il corretto server di posta.
  • NS Record: record del server dei nomi di delegare un dominio o sottodominio) per un insieme di server DNS.
  • TXT Record: record di Testo memorizzare le informazioni di testo per quanto riguarda il dominio. In genere, essi potrebbero essere utilizzati per sopprimere falsificati o contraffatti e-mail.
  • Record SOA: Start of authority record può contenere un sacco di informazioni sul dominio. Qui, è possibile trovare il server nome primario, il responsabile, un timestamp per le modifiche, la frequenza di zona rinfresca, e una serie di limiti di tempo per tentativi e abbandona.
  • TTL: Tempo vivere è un impostazione per ogni record DNS che consente di specificare per quanto tempo un DNS precursore server di cache di ogni query DNS. Quando il tempo scade, i dati devono essere aggiornati per le richieste successive.
  • QUALSIASI: Questo dice a scavare per tornare ogni tipo di record DNS può.

Specificando il tipo di record non modificare il valore predefinito di azione, che è quello di interrogare il record di indirizzo e di ottenere l’indirizzo IP, come mostrato di seguito:

scavare redhat.com Un

Per la query di posta elettronica di exchange record, utilizzare il seguente MX bandiera:

scavare yahoo.com MX

Il nome del server di bandiera restituisce il seguente nome dei root name server associato con il dominio di primo livello:

scavare fedora.com NS

Per eseguire una query inizio del record di autorità, digitiamo il seguente SOA bandiera:

scavare manjaro.com SOA

Il TTL bandiera ci mostrerà il tempo di vivere per i dati nella cache del server DNS. Se facciamo una serie di richieste, vediamo il tempo per vivere ridurre a nulla, e poi tornare al suo valore iniziale.

Digitiamo il seguente:

scavare usa.gov TTL

Per vedere il testo record, digitiamo il TX bandiera:

scavare usa.gov TXT

Specificare il Server DNS

Se si desidera utilizzare un particolare server DNS per la vostra richiesta, è possibile utilizzare il simbolo di chiocciola (@) per passare a scavare come un parametro della riga di comando.

Con il server DNS predefinito (vedi sotto), scavare riferimenti il caching locale stub resolver 127.0.0.53.

scavare usa.gov +stats

Ora, possiamo digitare il seguente per utilizzare Google public DNS 8.8.8.8 server:

dig @8.8.8.8 usa.gov +stats

Utilizzando scavare con Più Domini

Siamo in grado di passare più domini di scavare sulla riga di comando, come illustrato di seguito:

scavare ubuntu.org fedora.org manjaro.com

Se si controlla regolarmente una serie di domini, è possibile memorizzare in un file di testo e passare a scavare. Tutti i domini del file sarà controllato a sua volta.

Il nostro file è chiamato “domains.txt.” Useremo gatto per mostrare il suo contenuto, e poi passare a scavare con-f (file) opzione. Digitiamo il seguente:

gatto domains.txt
dig-f domains.txt

Reverse DNS Lookup

Se si dispone di un indirizzo IP e volete sapere dove si va, si può provare una ricerca DNS inversa. Se si risolve a un server registrati con un DNS server, si potrebbe essere in grado di scoprire il suo dominio.

Se è possibile dipende dalla presenza di un PTR (pointer). PTRs risolvere un indirizzo IP a un nome di dominio pienamente qualificato. Tuttavia, perché questi non sono obbligatori, non sono sempre presenti in un dominio.

Vediamo se riusciamo a trovare dove l’indirizzo IP 209.51.188.148 ci prende. Abbiamo digitare il seguente, utilizzando-x (reverse lookup) opzione:

dig-x 209.51.188.148

Presto! L’indirizzo IP viene risolto gnu.org.

Perché un PTR è un record DNS, e sappiamo scavare possibile richiedere specificato record DNS, non possiamo solo chiedere a scavare per recuperare il PTR per noi? Sì, si può, ma ci vuole un po ‘ più di lavoro.

È necessario inserire l’indirizzo IP in ordine inverso e aderenza .in-addr.arpa alla fine, come mostrato di seguito:

scavare ptr 148.188.51.209.in-addr.arpa

Otteniamo lo stesso risultato; appena ha preso un po ‘ più di sforzo.

Si può scavare?

Noi tutti usano internet tutti i giorni, e per le menti curiose sono spesso chiesto come la magia accade quando si digita il nome di un sito web in un browser. Con dig, è possibile esplorare i processi di in rete giochi di prestigio.

CONTINUA A LEGGERE

  • “Come si Gioca il Multiplayer Locale Giochi Online con il Vapore Remoto Giocare Insieme
  • “Come Scrivere un Apple II Programma di BASE nel Vostro Web Browser
  • “Perché Si Dovrebbe Acquistare il 2020 MacBook Air
  • “Come Risolvere i Tuoi Tastiera Digitando Numeri al posto delle Lettere
  • “Come Costruire Il Proprio Cloud di Sincronizzazione di File con Nextcloud