nslookup è uno strumento di amministrazione di rete per interrogare il Domain Name System (DNS) per ottenere la mappatura del nome di dominio o dell'indirizzo IP o qualsiasi altro record DNS specifico.
Viene anche utilizzato per risolvere i problemi relativi al DNS. Questo articolo fornisce alcuni esempi sull'utilizzo del comando nslookup.
nslookup può funzionare sia in "Modalità interattiva" che in "Modalità non interattiva". La modalità interattiva consente all'utente di interrogare il server DNS su vari host e domini. La modalità non interattiva consente all'utente di interrogare le informazioni per un host o un dominio. In questo articolo, tutti i comandi spiegati sono "Modalità non interattiva".
1. nslookup – Esempio semplice
nslookup seguito dal nome di dominio visualizzerà il "Record A" (Indirizzo IP) del dominio.
$ nslookup redhat.com Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: Name: redhat.com Address: 209.132.183.181
Nell'output sopra, il server fa riferimento all'indirizzo IP del server DNS. Quindi la sezione seguente fornisce il "A Record" (Indirizzo IP) del dominio "redhat.com".
L'output predefinito del comando nslookup è meno disordinato rispetto all'output predefinito del comando dig. Alcuni di voi potrebbero sentirsi a proprio agio nell'usare il comando dig per le ricerche DNS.
2. Interroga il record MX utilizzando -query=mx
Il record MX ( Mail Exchange ) associa un nome di dominio a un elenco di server di scambio di posta per quel dominio. Il record MX indica che tutte le e-mail inviate a "@redhat.com" devono essere instradate al server di posta in quel dominio.
$ nslookup -query=mx redhat.com Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: redhat.com mail exchanger = 10 mx2.redhat.com. redhat.com mail exchanger = 5 mx1.redhat.com. Authoritative answers can be found from: mx2.redhat.com internet address = 66.187.233.33 mx1.redhat.com internet address = 209.132.183.28
Nell'esempio sopra, abbiamo 2 record MX per il dominio "redhat.com". Il numero ( 5, 10 ), associato ai record MX indica la preferenza del server di posta. Abbassa il numero, maggiore è la preferenza. Quindi, quando una mail viene inviata a "@redhat.com", la prima preferenza sarà "mx1.redhat.com", quindi "mx2.redhat.com".
Risposta autorevole vs risposta non autorevole
Potresti anche notare la parola chiave "Risposta autorevole" e "Risposta non autorevole" nell'output sopra.
Qualsiasi risposta che provenga dal server DNS che ha le informazioni complete sul file di zona disponibili per il dominio è considerata risposta autorevole.
In molti casi, i server DNS non disporranno delle informazioni complete sul file di zona per un determinato dominio. Al contrario, mantiene un file di cache che contiene i risultati di tutte le query eseguite in passato per le quali ha ottenuto una risposta autorevole. Quando viene fornita una query DNS, cerca nel file della cache e restituisce le informazioni disponibili come "Risposta non autorevole".
3. Interroga il record NS usando -query=ns
Il record NS ( Name Server ) associa un nome di dominio a un elenco di server DNS autorevoli per quel dominio. Verrà visualizzato il nome serve che sono associati al dominio specificato.
nslookup -type=ns redhat.com Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: redhat.com nameserver = ns4.redhat.com. redhat.com nameserver = ns2.redhat.com. redhat.com nameserver = ns1.redhat.com. redhat.com nameserver = ns3.redhat.com. Authoritative answers can be found from: ns4.redhat.com internet address = 209.132.188.218 ns2.redhat.com internet address = 209.132.183.2 ns1.redhat.com internet address = 209.132.186.218 ns3.redhat.com internet address = 209.132.176.100
4. Interroga il record SOA utilizzando -query=soa
record SOA ( inizio dell'autorità ), fornisce le informazioni autorevoli sul dominio, l'indirizzo e-mail dell'amministratore del dominio, il numero di serie del dominio, ecc…
$ nslookup -type=soa redhat.com Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: redhat.com origin = ns1.redhat.com mail addr = noc.redhat.com serial = 2012071601 refresh = 300 retry = 180 expire = 604800 minimum = 14400 Authoritative answers can be found from: ns1.redhat.com internet address = 209.132.186.218
- mail addr:specifica l'indirizzo e-mail dell'amministratore del dominio ( [email protected] )
- seriale – sorta di sistema di numerazione delle revisioni. La convenzione standard prevede l'utilizzo del formato "AAAAMMAANN". ( 2012-07-16. 01 sarà incrementato, se è stata eseguita più di una modifica nello stesso giorno)
- refresh – specifica ( in secondi ), quando il DNS secondario eseguirà il polling del primario per vedere se il numero di serie è stato aumentato. Se aumentato, il secondario farà una nuova richiesta per copiare il nuovo file di zona.
- Riprova:specifica l'intervallo per riconnettersi al DNS primario
- scadenza:specifica l'ora in cui il DNS secondario manterrà valido il file di zona memorizzato nella cache
- minimo:specifica il tempo in cui il DNS secondario deve memorizzare nella cache il file di zona
5. Visualizza i record DNS disponibili utilizzando -query=any
Possiamo anche visualizzare tutti i record DNS disponibili utilizzando -query=any opzione.
$ nslookup -type=any google.com Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: Name: google.com Address: 173.194.35.7 Name: google.com Address: 173.194.35.8 google.com nameserver = ns1.google.com. google.com nameserver = ns2.google.com. google.com origin = ns1.google.com mail addr = dns-admin.google.com serial = 2012071701 refresh = 7200 retry = 1800 expire = 1209600 minimum = 300 google.com mail exchanger = 20 alt1.aspmx.l.google.com. google.com mail exchanger = 30 alt2.aspmx.l.google.com. google.com mail exchanger = 40 alt3.aspmx.l.google.com. google.com mail exchanger = 50 alt4.aspmx.l.google.com. google.com mail exchanger = 10 aspmx-v4v6.l.google.com. google.com has AAAA address 2a00:1450:4002:801::1004 Authoritative answers can be found from: ns4.google.com internet address = 216.239.38.10 ns3.google.com internet address = 216.239.36.10
6. Ricerca DNS inversa
Puoi anche eseguire la ricerca DNS inversa fornendo l'indirizzo IP come argomento a nslookup.
$ nslookup 209.132.183.181 Server: 192.168.19.2 Address: 192.168.19.2#53 Non-authoritative answer: 181.183.132.209.in-addr.arpa name = origin-www2.redhat.com.
7. Utilizzo di un server DNS specifico
Invece di utilizzare i server DNS predefiniti per le query, puoi anche specificare un particolare server dei nomi per risolvere il nome di dominio.
$ nslookup redhat.com ns1.redhat.com Server: 209.132.186.218 Address: 209.132.186.218#53 Name: redhat.com Address: 209.132.183.181
Nel comando precedente, abbiamo utilizzato ns1.redhat.com come server DNS. Qui potresti notare che non riceviamo alcuna intestazione "Risposta non autorevole:", poiché ns1.redhat.com ha tutte le informazioni sulla zona di redhat.com
8. Cambia il numero di porta con cui connetterti
Per impostazione predefinita, i server DNS utilizzano il numero di porta 53. Se per qualsiasi motivo il numero di porta è stato modificato, possiamo specificare il numero di porta utilizzando l'opzione -port
$ nslookup -port 56 redhat.com
9. Modifica l'intervallo di timeout per attendere una risposta
Puoi modificare il timeout predefinito per attendere una risposta utilizzando l'opzione -timeout.
$ nslookup -timeout=10 redhat.com
10. Abilitazione della modalità di debug usando -debug
Puoi attivare/disattivare il debug usando l'opzione -debug nella riga di comando
$ nslookup -debug redhat.com Server: 192.168.19.2 Address: 192.168.19.2#53 ------------ QUESTIONS: redhat.com, type = A, class = IN ANSWERS: -> redhat.com internet address = 209.132.183.181 ttl = 5 AUTHORITY RECORDS: ADDITIONAL RECORDS: ------------ Non-authoritative answer: Name: redhat.com Address: 209.132.183.181
La modalità di debug visualizzerà le informazioni sui pacchetti durante la ricerca.
Simile al comando nslookup, puoi anche usare il comando dig per interrogare le informazioni DNS.