Comando tcpdump su Linux: come analizzare i pacchetti della rete

Con il comando Linux tcpdump è possibile analizzare i pacchetti inviati nella propria rete. Questa analisi può essere ulteriormente ottimizzata con numerose opzioni e filtri.

Cos’è tcpdump su Linux?

Per analizzare il traffico di rete su Linux ed eventualmente risolvere i problemi di rete, tcpdump è uno strumento particolarmente prezioso. Il programma a riga di comando è preinstallato in quasi tutte le più comuni distribuzioni Linux, come Debian o Ubuntu, e trasmette informazioni sui pacchetti di dati inviati o ricevuti nella rete. Nonostante il nome, tcpdump non è adatto solo per i pacchetti TCP, ma può anche analizzare i pacchetti UDP e ICMP. Per utilizzarlo, tuttavia, è necessario disporre dei permessi di root.

Come funziona il comando tcpdump?

L’analisi che tcpdump esegue è chiamata anche “sniffing”. Con l’aiuto del comando tcpdump su Linux, si specifica l’interfaccia di rete che il programma deve controllare. Esistono numerosi filtri, con i quali è possibile regolare e ottimizzare il processo. Il comando viene eseguito nella riga di comando, dove vengono riprodotti anche i risultati dell’analisi.

Qual è la sintassi di tcpdump?

La sintassi di tcpdump su Linux è molto semplice e si presenta così:

$ tcpdump [opzioni] [filtri]
bash

Non è necessario specificare alcuna opzione, ma per garantire che tcpdump prenda in considerazione anche l’interfaccia di rete corretta, queste sono comunque consigliate. Anche i filtri sono facoltativi. Tuttavia, se non viene specificato alcun filtro, il comando analizzerà tutti i pacchetti provenienti da tutti gli host, il che può creare rapidamente confusione.

Quali opzioni e filtri ha il comando tcpdump di Linux?

Il comando tcpdump dispone di numerose opzioni e filtri. Le opzioni più importanti sono le seguenti:

  • -A: in questo modo viene visualizzato il contenuto di un pacchetto come ASCII.
  • -c [numero]: in questo modo tcpdump viene terminato automaticamente quando è stato analizzato un certo numero di pacchetti.
  • -D: questa opzione elenca tutte le interfacce disponibili.
  • -i [interfaccia]: con questa opzione determini quale interfaccia deve essere registrata.
  • -s [numero]: questa opzione determina quanti byte per pacchetto devono essere registrati.

È possibile utilizzare questi filtri per tcpdump:

  • dst: analizza solo i pacchetti la cui destinazione ha il valore specificato, che può essere host, net, port o portrange.
  • host: questo filtro garantisce che vengano presi in considerazione solo i pacchetti che hanno come origine o destinazione un indirizzo IP specifico o, in alternativa, un nome host specifico.
  • net: questo filtro prende in considerazione solo i pacchetti che hanno come sorgente o destinazione un indirizzo IP appartenente a un intervallo di rete specificato.
  • port: con questo filtro si definisce una porta specifica tra 0 e 65535 che deve essere analizzata esclusivamente.
  • portrange: questo filtro contiene un intervallo di porte compreso tra 0 e 65535 che viene considerato esclusivamente.
  • proto: questo filtro considera esclusivamente i pacchetti con uno specifico protocollo di rete. Il filtro può avere i seguenti valori: arp, decnet, ether, fddi, ip, ip6, rarp, tcp, udp o wlan.
  • src: con questo filtro vengono analizzati solo i pacchetti la cui origine ha un determinato valore, che può essere host, net, port o portrange.

Esempi per l’utilizzo del comando tcpdump

Infine, ti mostriamo come utilizzare tcpdump. Nei nostri esempi, utilizziamo il comando sudo su Linux.

$ sudo tcpdump -D
bash

Così verifichi innanzitutto quali interfacce di rete sono presenti.

$ sudo tcpdump -i wlx14a3c782966b
bash

In questo modo analizzi solo l’interfaccia con il nome specificato.

$ sudo tcpdump -c 5 -i wlx14a3c782966b
bash

Così fai in modo che tcpdump catturi solo cinque pacchetti.

Per offrirti una migliore esperienza di navigazione online questo sito web usa dei cookie, propri e di terze parti. Continuando a navigare sul sito acconsenti all’utilizzo dei cookie. Scopri di più sull’uso dei cookie e sulla possibilità di modificarne le impostazioni o negare il consenso.