GNU/Linux >> Linux Esercitazione >  >> Linux

Come usare il comando netstat in Linux

Il termine "netstat" sta per Statistiche di rete. In parole povere, il comando netstat mostra le connessioni di rete correnti, le statistiche del protocollo di rete e una varietà di altre interfacce.

Se inseriamo netstat nel terminale, senza alcuna conoscenza di base delle reti di computer, il sistema ci lancia un'ampia gamma di gerghi di rete. È responsabilità del programmatore estrarre informazioni importanti mentre scova il resto.

In questo articolo, risponderemo ad alcune delle domande relative alla rete di computer usando il netstat comando.

Identifica le connessioni di rete attive utilizzando il comando Netstat

Per visualizzare tutte le connessioni di rete attive in Linux, utilizziamo

netstat -a

Risultato:

L'output standard contiene sei colonne:

  • Protocollo (Protocollo) – Il tipo di protocollo utilizzato per la connessione di rete, come TCP, UDP, ecc.
  • Recv-Q (coda di ricezione) – La quantità di dati (in byte) nella coda di attesa per il socket.
  • Invia-Q (Coda di invio) – La quantità di dati (in byte) nella coda di invio per il socket.
  • Indirizzi – Ciascun indirizzo contiene il nome dell'host seguito da ':' e un numero di porta
    • Indirizzo locale – L'indirizzo del computer in cui netstat il comando è in esecuzione.
    • Indirizzo estero – L'indirizzo del computer che si trova all'altra estremità della rete.
  • Stato – Lo stato di ogni connessione di rete.

Per capirlo meglio, supponiamo di aprire un sito Web www.lookip.net . All'esecuzione del comando:

netstat -a | grep lookip.net

Otterremo il seguente output:

Come è abbastanza chiaro, abbiamo estratto tutte le connessioni di rete in corso con un particolare indirizzo esterno. Nel comando, '| ' viene utilizzato per passare l'output di un sottocomando a un altro, mentre grep è uno strumento di ricerca in Linux.

Nota:questa tecnica non può essere applicata a tutti i tipi di siti Web poiché non tutti i siti Web hanno un indirizzo esterno corrispondente all'URL.

Per sperimentare ulteriormente con i dati forniti dal comando netstat, possiamo scrivere comandi incentrati su protocolli, indirizzi o stati:

Mostra tutte le connessioni stabilite

netstat -a | grep ESTABLISHED

Visualizza tutte le connessioni TCP in stato di ascolto

netstat -a | grep tcp | grep LISTEN

Invece di creare comandi personalizzati, Linux fornisce alcune opzioni integrate per recuperare informazioni specifiche.

Filtraggio basato su protocolli

Per query specifiche su TCP, -t viene utilizzata l'opzione. Per visualizzare solo le connessioni TCP:

netstat -at

Nota:per applicare più filtri in un unico comando netstat, vengono aggiunte le opzioni.

Per query specifiche sull'UDP, -u viene utilizzata l'opzione. Per visualizzare tutti i socket che seguono UDP :

netstat -au

Opzione basata sullo stato:

Per visualizzare tutte le prese di ascolto:

netstat -l

Identifica i programmi utilizzando connessioni di rete utilizzando Netstat

Per recuperare i programmi e i relativi ID di processo, utilizziamo:

netstat -p

Per programmi specifici TCP:

netstat -pt

Risultato:

Come possiamo notare, Chrome sta accedendo a Internet con l'ID processo 16648. Queste informazioni possono essere utilizzate per uccidere o interrompere qualsiasi programma che accede a una rete all'insaputa dell'utente.

Nota:può accadere che alcune informazioni sul programma vengano nascoste se l'utente corrente non è l'utente root. Per diventare un utente root in Linux, il comando sudo su e l'inserimento della password può aiutare. Per ulteriori informazioni, fare riferimento a questo.

Utilizzo del comando Netstat per elencare gli indirizzi IP di ciascuna connessione di rete

Per recuperare numericamente tutti i dati relativi agli indirizzi IP e alle porte, utilizziamo:

netstat -n

Possiamo visualizzare gli indirizzi numericamente per i programmi che seguono TCP tramite:

netstat -ptn

Risultato:

La differenza è molto evidente in quanto possiamo vedere gli indirizzi IP e i numeri di porta per ogni connessione.

Quali sono le statistiche per ciascun protocollo?

Per accedere alle statistiche di riepilogo per ogni tipo di protocollo utilizzando il comando netstat, eseguiamo:

netstat -s

Risultato:

Utilizzo del comando Netstat per visualizzare la tabella di instradamento

Qualsiasi dispositivo su una rete deve decidere dove instradare i pacchetti di dati. La tabella di instradamento contiene informazioni per prendere queste decisioni. Per acquisire il contenuto della tabella di routing in formato numerico, utilizziamo la seguente opzione di comando:

netstat -rn

Risultato:

La tabella di routing del kernel è composta dalle seguenti colonne:

  • Destinazione – L'indirizzo del computer di destinazione.
  • Gateway – L'indirizzo del gateway intermedio.
  • Maschera genovese – La maschera di rete utilizzata per specificare gli host disponibili in una rete.
  • Bandiere – Specifica quale tipo di instradamento.
  • MSS – Dimensione massima del segmento predefinita
  • Finestra – Dimensione finestra predefinita
  • irtt (Tempo di andata e ritorno iniziale) – Tempo totale per inviare un segnale e riceverne la conferma.
  • Iface (Interfaccia) – L'interfaccia attraverso la quale verranno instradati i pacchetti.

Nota:le colonne con valore zero indicano che viene utilizzata la dimensione predefinita.

Elenca le interfacce di rete attive

Per accedere a qualsiasi informazione da Internet, deve esserci un collegamento tra il sistema e la rete. Quel punto di interconnessione è fornito da un'interfaccia di rete. Eseguiamo il comando:

netstat -i

Risultato:

La tabella dell'interfaccia del kernel comprende:

  • Iface (interfaccia) – Il tipo di interfaccia
  • MTU – Unità di trasmissione massima
  • RX – Pacchetti ricevuti
  • TX – Pacchetti trasmessi
  • OK – Pacchetti privi di errori
  • ERR – Pacchetti con qualche errore
  • DRP – Pacchetti eliminati
  • VR – Pacchetti persi per overflow
  • Flg – Flag che definiscono la configurazione dell'interfaccia

Il comando netstat presenta una vasta gamma di conoscenze che rende impossibile riassumere in un solo articolo. Possiamo sempre fare riferimento alle pagine man in Linux tramite:

man netstat

e per saperne di più su netstat opzioni possiamo chiedere aiuto nel terminale da:

netstat -h

Riferimenti:

  • Linux – pagina man di netstat

Linux
  1. Come usare il comando sed di Linux

  2. Come usare il comando Linux grep

  3. Come usare il comando mtr di Linux

  4. Come utilizzare il comando id in Linux

  5. Come utilizzare il comando "schermo" in Linux

Come utilizzare il comando Ping di Linux

Come utilizzare il comando fd sul sistema Linux

Come utilizzare il comando wget in Linux?

Come usare il comando xargs in Linux?

Come utilizzare il comando RPM in Linux

Come utilizzare il comando which in Linux