nslookup (da n me s erver ricerca ) è uno strumento di amministrazione di rete per interrogare i server DNS (Domain Name System) per ottenere la mappatura del nome di dominio o dell'indirizzo IP.
Il nslookup
Il comando può essere utilizzato anche per eseguire query su diversi tipi di record DNS, come record MX, NS e SOA.
Questo strumento viene spesso utilizzato per la risoluzione dei problemi di DNS o di risoluzione dei nomi. In breve, il Domain Name System fornisce una mappatura tra i nomi leggibili dall'uomo (come www.archlinux.org) e gli indirizzi IP associati (come 95.217.163.246).
Questo tutorial ti guiderà attraverso l'installazione di nslookup
sulle principali distribuzioni Linux e mostra vari esempi di riga di comando che puoi utilizzare quando devi ottenere informazioni DNS.
Installa nslookup
Probabilmente, nslookup
è già installato sul tuo sistema e pronto per l'uso. In caso contrario, utilizza il comando appropriato di seguito per installarlo.
Per installare nslookup
su Ubuntu, Debian, Linux Mint:
sudo apt install dnsutils
Per l'installazione su CentOS, Fedora, Red Hat, AlmaLinux, Rocky Linux:
sudo yum install bind-utils
Per installare nslookup su Arch Linux o Manjaro:
sudo pacman -S dnsutils
Modalità di comando di nslookup
Il nslookup
comando ha due modalità:interattivo e non interattivo . Se devi cercare solo un singolo dato, ti consigliamo di utilizzare la modalità non interattiva.
Se devi cercare più di un dato, puoi utilizzare la modalità interattiva. Naturalmente, la scelta della modalità da utilizzare dipende interamente da te.
Ad esempio, si accede alla modalità interattiva digitando nslookup
comando senza argomenti:
nslookup
>
Durante l'utilizzo della modalità interattiva, puoi uscire digitando exit
.
La modalità non interattiva viene invocata digitando il nslookup
comando, seguito dal nome o dall'indirizzo IP dell'host da cercare.
nslookup archlinux.org
1. Utilizzo di base di nslookup
nslookup
seguito dal nome di dominio visualizzerà il record A del dominio (indirizzo IP).
nslookup archlinux.org
Nella prima parte dell'output sopra, Server
e Address
si riferisce al server DNS che è attualmente configurato per essere utilizzato dal tuo sistema.
L'hash (#) è un separatore tra l'IP del server che ha risposto alla tua richiesta e la porta su cui era in esecuzione il suo servizio.
Quindi la sezione seguente fornisce il record A (indirizzo IP) del dominio google.com.
Nell'output di nslookup
, noterai spesso l'affermazione "Risposta non autorevole ” (come illustrato sopra) come parte del risultato della ricerca.
Questo per dirti che i risultati sono stati forniti da un server che non è la fonte autorevole (primaria).
In genere, questo significa che il risultato è stato fornito da un server (come il tuo provider di servizi Internet) che conteneva una copia cache del record DNS.
D'altra parte, una "Risposta autorevole" è quando il server DNS che ospita la copia principale dei record DNS risponde alla tua ricerca.
2. Trova il record MX (server di posta elettronica) per un dominio
Un record MX (mail exchanger) specifica il server di posta responsabile dell'accettazione delle email per conto di un nome di dominio. In altre parole, questo record controlla dove viene inviata la posta inviata al dominio.
Per visualizzare il record di posta (MX) per un dominio, utilizza il -type=mx
opzione
nslookup -type=mx archlinux.org
3. Trova il record NS per un dominio
Il record NS (Name Servers) di un dominio è una mappa di tutti i name server che sono autorevoli per quel dominio. Puoi eseguire query per i record NS utilizzando lo switch -type=ns
.
Di conseguenza, visualizzerà i servizi di nome associati al dominio specificato.
nslookup -type=ns archlinux.org
4. Trova il record SOA di un dominio
Il record SOA (Start Of Authority) fornisce le informazioni autorevoli su un dominio come l'indirizzo email dell'amministratore, l'ultimo aggiornamento del dominio e così via.
Puoi eseguire una query per il record SOA utilizzando lo switch -type=soa
.
nslookup -type=soa archlinux.org
- origine :il server dei nomi principale per il dominio
- indirizzo di posta :L'indirizzo email dell'amministratore può essere fonte di confusione perché manca il
@
cartello. Ad esempio, nel record SOA sopra,hetzner.archlinux.org
è l'equivalente di[email protected]
. - seriale :numero di serie incrementale che specifica la versione del file di zona. La convenzione standard consiste nell'usare
YYYYMMDD##
formato. - aggiorna :il tempo in secondi che un server DNS secondario attende prima di interrogare il server DNS primario.
- Riprova :l'intervallo per riconnettersi al DNS primario.
- scadenza :l'ora in cui il DNS secondario manterrà valido il file di zona memorizzato nella cache.
- minimo :l'ora in cui il DNS secondario deve memorizzare nella cache il file di zona.
5. Ricerca DNS inversa
Una ricerca DNS inversa con query per un nome server basato su un indirizzo IP fornito come argomento per nslookup
.
nslookup 95.217.163.246
6. Interrogazione di un altro server DNS
Per impostazione predefinita, nslookup
interrogherà lo stesso DNS che il sistema è configurato per utilizzare per tutte le operazioni di rete. Tuttavia, invece di utilizzare il server DNS predefinito, puoi specificare un server dei nomi particolare per risolvere il nome di dominio.
Ad esempio, puoi impostare il server dei nomi autorevole come parte della tua richiesta per ottenere una risposta autorevole.
nslookup archlinux.org oxygen.ns.hetzner.com
Qui potresti notare che non riceviamo alcuna intestazione "Risposta non autorevole" poiché oxygen.ns.hetzner.com
ha tutte le informazioni sulla zona di archlinux.org
.
7. Debug della transazione della query
Inoltre, gli utenti avanzati potrebbero aver bisogno di esaminare più da vicino i dettagli della transazione di query. Questo può essere ottenuto utilizzando il -debug
opzione:
nslookup -debug archlinux.org
Conclusione
nslookup
è uno dei popolari software da riga di comando per il sondaggio DNS. Questa guida ci ha insegnato come installarla e usarla per interrogare informazioni DNS da un nome di dominio e un indirizzo IP.
Gli amministratori di rete possono utilizzare nslookup
comandare simultaneamente con altri software e ricevere dati di rete diversi.
Se ne hai bisogno, ecco la pagina man per nslookup
comando.