Nei sistemi GNU/Linux, il comando netstat permette di vedere lo stato delle connessioni instaurate sul computer locale.

Il file relativo a tale comando è un eseguibile essenziale di sistema e pertanto si trova nella cartella /bin (seguendo lo standard FHS) ed è di proprietà dell'utente root.

Se eseguito senza dare opzioni visualizza lo stato dei socket attivi, un esempio può essere:

kaos@kaos:~$ netstat
Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State
tcp        0      0 proxy.surfnet.iac:33297 mg-in-f125.:xmpp-client ESTABLISHED
tcp        0      0 proxy.surfnet.iac:33995 by1msg5176516.phx.:1863 ESTABLISHED
Active UNIX ___domain sockets (w/o servers)
Proto RefCnt Flags       Type       State         I-Node Path
unix  3      [ ]         DGRAM                    13826    /dev/log
unix  2      [ ]         DGRAM                    5109     @/org/kernel/udev/udevd
unix  2      [ ]         DGRAM                    10443    @/org/freedesktop/hal/udev_event
unix  3      [ ]         STREAM     CONNECTED     34721    /tmp/orbit-kaos/linc-4876-0-ebf915e300c0
unix  3      [ ]         STREAM     CONNECTED     34720

Come si vede dal breve esempio, netstat classifica i tipi di socket:

  • Active Internet connection, come tcp e udp
  • Active UNIX ___domain sockets
  • Active IPX sockets
  • Active NET/ROM sockets
  • Active AX.25 sockets

Campi importanti sono:

  • Proto : indica il nome del protocollo
  • Local Address : l'indirizzo IP del computer locale insieme al numero di porta usato
  • Foreign Address : l'indirizzo IP e il numero di porta al quale il socket è connesso
  • State : stato della connessione

È possibile inoltre vedere il tipo del socket:

  • DGRAM se si tratta di udp
  • STREAM se si tratta di tcp

Opzioni importanti sono:

  • -a : che permette di vedere anche lo stato dei socket non attivi
  • -t : che permette di vedere lo stato dei socket tcp
  • -u : che permette di vedere lo stato dei socket udp
  • -r : che permette di vedere la tabella di routing (restituisce lo stesso output del comando route)
  • -n : mostra gli indirizzi numerici (invece di quelli simbolici) degli host e delle porte
  • -p : che permette di vedere il nome del programma e il relativo PID che ha instaurato una connessione (deve essere dato dall'utente root)

Attivato come servizio di rete rimane in ascolto sulla porta 15/tcp (vedere /etc/services).

Per ulteriori dettagli visualizzare la man page di netstat tramite il comando man netstat.


  Portale Informatica: accedi alle voci di Wikipedia che trattano di Informatica