Come utilizzare Nmap per il traceroute e leggere il percorso di rete
Per utilizzare Nmap per traceroute, esegui nmap -sn --traceroute scanme.nmap.org. L' -snopzione salta la scansione delle porte mentre Nmap verifica se l'host è attivo; --traceroutegli chiede di mostrare il percorso verso un host che risponde. Sostituisci l'host di esempio solo con un sistema di tua proprietà, amministrato o per il quale hai l'autorizzazione alla scansione. Questo comando che specifica solo il percorso mantiene il test più ristretto rispetto alla scansione delle porte predefinita di Nmap.
Un traceroute rivela i router che rispondono tra il computer che esegue la scansione e la destinazione.
Cosa mostra il traceroute di Nmap
Un traceroute stima il percorso di rete inviando pacchetti con diversi valori di time-to-live (TTL) o hop-limit IP. Ogni router riduce tale valore; quando raggiunge lo zero, un router può restituire un messaggio ICMP "Time Exceeded". Lo strumento di scansione utilizza queste risposte per identificare gli hop e misurare il tempo di andata e ritorno (RTT). Il TTL conta gli hop, non i secondi.
Il metodo di Nmap differisce da quello classico tracerouteo di Windows tracert. Nmap esegue un traceroute dopo la scansione e utilizza i risultati per selezionare una porta e un protocollo che probabilmente consentiranno di raggiungere la destinazione. Inizia con un TTL elevato e conta a ritroso, mentre molti strumenti di traceroute tradizionali iniziano da uno e contano in avanti. Di conseguenza, l'output di Nmap relativo al percorso è legato alla scansione e alle sonde effettuate; non rappresenta una mappa completa di ogni possibile percorso o del percorso di ritorno.
Eseguire un traceroute con Nmap in quattro passaggi
1. Installa Nmap e verifica che funzioni
Scarica Nmap dalla pagina di download ufficiale . Scegli il programma di installazione per Windows o macOS, oppure segui le istruzioni di installazione ufficiali per la tua distribuzione Linux. Apri il prompt dei comandi, PowerShell, il terminale o una shell Linux e digita `nmap --command` nmap --version. Se il comando non viene trovato, completa l'installazione o aggiungi Nmap al percorso dei comandi.
Alcune funzioni di scansione e traceroute richiedono privilegi elevati per l'acquisizione di pacchetti o per i socket raw. Su macOS o Linux, prova ad anteporre il comando sudose Nmap segnala un problema di autorizzazioni; su Windows, apri il terminale con i diritti di amministratore quando richiesto. Utilizza solo il livello di privilegio necessario per il test autorizzato.
2. Scegli un host che ti è consentito testare
Per un obiettivo di pratica sicuro, il progetto Nmap consente esplicitamente le scansioni Nmap di scanme.nmap.org. Tale autorizzazione è limitata: non testare exploit o eseguire test denial-of-service e limitare le scansioni a un massimo di dodici al giorno. Per altri host, ottenere prima l'approvazione del proprietario della rete. Le linee guida legali e sull'utilizzo di Nmap del progetto spiegano l'ambito del suo host di test e perché le autorizzazioni di scansione sono importanti.
3. Inizia con un comando che specifica solo il percorso
Esegui questo comando su macOS o Linux:
sudo nmap -sn --traceroute scanme.nmap.org
Su Windows, omettere questo passaggio sudoe utilizzare un terminale con privilegi di amministratore se necessario:
nmap -sn --traceroute scanme.nmap.org
Da utilizzare -sncon --tracerouteper richiedere il rilevamento dell'host e la tracciatura del percorso senza una scansione delle porte.
La documentazione di riferimento per la scoperta degli host di Nmap descrive entrambe le opzioni. Nmap invia comunque sondaggi di rete; -snsignifica "nessuna scansione delle porte", non "nessun traffico". Se invece è necessario esaminare un servizio specifico, utilizzare una scansione delle porte con ambito ristretto su un host autorizzato, come nmap -p 443 --traceroute your-authorized-host.example. Questa verifica la porta TCP 443 prima di tracciare e può inviare più traffico rispetto al comando solo percorso.
4. Leggi l'elenco dei luppoli e salvalo se ti è utile.
Cerca la TRACEROUTEsezione e le sue colonne HOP, RTT, e ADDRESS. Un numero di hop indica la posizione osservata lungo il percorso. RTT è il tempo impiegato da una sonda per raggiungere quell'hop e per ricevere una risposta; non è una misurazione unidirezionale né una misurazione diretta del solo collegamento. Gli indirizzi possono essere visualizzati come numeri IP o, quando la risoluzione del nome ha successo, come nomi host.
Schema esemplificativo: gli indirizzi di hop e i tempi di risposta variano a seconda della rete e dell'ora del giorno.
Per conservare una copia in testo normale per il confronto, aggiungi l'opzione di output di Nmap:
Eseguire lo stesso comando dalla stessa rete sorgente per confrontare i risultati. Una modifica del percorso può riflettere cambiamenti di routing, bilanciamento del carico o filtraggio temporaneo, piuttosto che un guasto in sé.
Risolvere i problemi relativi ai luppoli mancanti o confusi
Un asterisco indica* * * che Nmap non ha ricevuto una risposta utilizzabile per quella sonda prima del timeout. Un router può filtrare o limitare la velocità delle risposte e comunque inoltrare il traffico, quindi un singolo passaggio silenzioso non dimostra che il percorso sia interrotto.
La traccia non si avvia: verifica che il nome host sia risolvibile, che la destinazione risponda alle sonde di rilevamento e che tu disponga dei privilegi necessari. Se controlli la destinazione, verifica il firewall e le regole di rete tra essa e il tuo scanner.
I nomi rallentano la visualizzazione: aggiungi -nper saltare le ricerche DNS inverse, ad esempio sudo nmap -n -sn --traceroute scanme.nmap.org.
La latenza aumenta bruscamente dopo un solo hop: consideratelo un indizio, non una prova di congestione su quel router. Le risposte ICMP possono essere ritardate o declassate, e i percorsi di andata e ritorno possono essere diversi.
Un nodo intermedio silenzioso può comunque inoltrare il traffico; i nodi successivi potrebbero rispondere normalmente.
Nmap --tracerouteè utile quando si desiderano informazioni sul percorso insieme ai risultati di rilevamento host o scansione delle porte. L'elenco degli hop viene letto come prova da una singola fonte, in un dato momento, utilizzando sonde specifiche. Firewall, bilanciamento del carico e routing asimmetrico possono nascondere o alterare parte del quadro generale.