netstat è un programma presente nei sistemi operativi Unix-like per ottenere informazioni relative alla rete, in particolare sullo stato delle connessioni e sulla tabella di routing.
Presente su Unix, VMS, Microsoft Windows, ReactOS e macOS, in ambiente Linux è considerato deprecato in favore di iproute2.
Esempio di utilizzo Se eseguito senza dare opzioni visualizza lo stato dei socket attivi, un esempio può essere:
<nowiki> 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 </nowiki>
Analisi dell'output Come si vede dal suindicato 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 del comando 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 -l: restituirà solo la lista dei servizi in ascolto (listening) -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) -o: permette di vedere i PID (identificatori processo)
Per ulteriori dettagli visualizzare da shell di Linux la man page di netstat tramite il comando man netstat.
Note
Voci correlate Socket (reti) Port scanning
Collegamenti esterni
Categoria:Unix Categoria:Comandi Unix