In breve, il processo è legato ad un'interfaccia di loopback che non può ricevere pacchetti da una rete esterna. Dovrai riconfigurare il processo associato alla porta 8020 per collegarlo a un'interfaccia esterna per potersi connettere da un altro host.
La risposta lunga è che i due indirizzi del sito (127.0.0.1 e 0.0.0.0) sono entrambi speciali in determinati modi, ed è utile capire cosa stai vedendo.
Gli indirizzi nel blocco indirizzo del protocollo Internet 127.0.0.0/8 (di cui 127.0.0.1 è uno) sono riservati per l'uso interno su un host. Vedere rfc5735 per i dettagli, ma non c'è nulla di speciale su questi indirizzi, tranne che tutti gli host IP usano le stesse regole e non sono configurati per instradare questi indirizzi all'esterno di un host o router.
Sul computer, di solito viene visualizzata un'interfaccia di rete "loopback" speciale assegnata a 127.0.0.1.
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
Questa interfaccia è speciale e mai connessa a una rete esterna. Viene utilizzato quando un programma desidera connettersi a un servizio sul computer locale poiché 127.0.0.1 viene quasi sempre configurato come un'interfaccia di rete attiva. I pacchetti arriveranno su questa interfaccia solo se inviati da un processo locale.
L'altro indirizzo del sito, 0.0.0.0 è speciale e di solito rappresenta tutti gli indirizzi IP associati a qualsiasi interfaccia di rete sul tuo computer. Quando un programma vuole ascoltare le connessioni che arrivano su qualsiasi interfaccia di rete o indirizzo IP, vincolerà una porta TCP/UDP a 0.0.0.0 per ascoltare le connessioni.
Nel tuo caso, tuttavia, stai segnalando l'output di netstat che elenca 0.0.0.0 su righe che descrivono socket TCP in uno stato LISTEN. In questo caso, netstat elenca i socket che ascoltano le connessioni e utilizza 0.0.0.0:* come segnaposto per il campo di indirizzo esterno del suo output. In questo caso, 0.0.0.0:* significa che il socket è in attesa di una connessione da qualsiasi host.
Per quanto riguarda la domanda su "tcp 0" e "unix 2", queste sono le prime due colonne del proprio output netstat. Uno sguardo alle intestazioni delle colonne dal vostro comando netstat è utile:
# netstat -nap | head -2
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
Cosa stai segnalando come "tcp 0" significa semplicemente una presa di corrente utilizzando il protocollo TCP ha zero byte nella coda ricevuto attesa per il programma collegato a questa presa da consumare. Allo stesso modo, "unix 2" è quello che viene chiamato un socket unix con due byte in attesa nella coda di ricezione per il processo connesso a consumare.
I socket TCP fanno parte dello stack TCP/IP che può essere utilizzato localmente o attraverso reti IP affinché i processi possano comunicare. I socket UNIX, d'altra parte, sono più semplici e vengono utilizzati solo per ciò che viene chiamato IPC o comunicazione tra processi che avviene solo tra due processi in esecuzione sul sistema locale, e non c'è nessuna connessione in rete (nessun indirizzo e nessuna porta). I socket UNIX sono considerati più efficienti dei socket TCP, ma sono ovviamente più limitati nella loro funzione. Sui sistemi UNIX i socket UNIX sono implementati come file sul file system di uno speciale tipo "socket" che entrambi utilizzano il socket read e write come canale di comunicazione.
Che cos'è una "connessione unix"? – jayunit100
Si tratta di una connessione che utilizza un protocollo strettamente locale molto più semplice di TCP.Fornisce all'incirca lo stesso comportamento di TCP, tranne che può essere utilizzato solo quando entrambi gli endpoint si trovano sulla stessa macchina. –
Intendi un socket di dominio Unix? Qual è una cosa diversa da 127.0.0.1? E cosa c'entra questo con la domanda? – EJP