2016-11-30 5 views
-1

Ich habe Sturm auf 2 Maschinen laufen.Warum meldet netstat weniger offene Ports als lsof

Jede Maschine läuft Nimbus-Prozess (Phantasie für Master-Prozess) und Worker-Prozesse.

Und ich wollte die Kommunikation zwischen ihnen sehen - welche Ports offen sind und wie sie miteinander verbunden sind.

$ netstat -tulpn | grep -w 10669 
tcp  0  0 :::6700  :::*   LISTEN  10669/java   
udp  0  0 :::42405  :::*      10669/java   


$ lsof -i :6700 
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME 
java 10669 storm 25u IPv6 57830  0t0 TCP host1:50778->host2:6700 (ESTABLISHED) 
java 10669 storm 26u IPv6 57831  0t0 TCP host1:6700->host2:57339 (ESTABLISHED) 
java 10669 storm 29u IPv6 57843  0t0 TCP host1:6700->host1:50847 (ESTABLISHED) 
java 10669 storm 53u IPv6 57811  0t0 TCP *:6700 (LISTEN) 
java 10681 storm 53u IPv6 57841  0t0 TCP host1:50780->host2:6700 (ESTABLISHED) 
java 10681 storm 54u IPv6 57842  0t0 TCP host1:50847->host1:6700 (ESTABLISHED) 

Was ich nicht aus der obigen Ausgabe verstehen ist, warum netstat nicht Port 50778 zeigen 10669 offen in den Prozess mit PID = wo, wie lsof zeigt deutlich, dass der gleiche Prozess eine hergestellte Verbindung als host1:50778->host2:6700 hat

+1

Weil Sie Äpfel und Orangen sind zu vergleichen. Probiere 'netstat -tulpn | grep -w 6700'. – EJP

+0

'netstat -tulpn | grep -w 6700' hat nur eine Zeile für 6700 zurückgegeben. Ich sehe Port 50778 immer noch nicht. Wenn es für Sie offensichtlich ist, erklären Sie bitte dasselbe in einer Antwort. Andere haben möglicherweise nicht die gleiche Erfahrung oder das gleiche Wissen wie Sie und würden von Ihrer Antwort profitieren. – user2250246

Antwort

1

netstat -l begrenzt die Ergebnisse auf hörende Sockets und verhindert die Anzeige von Sockets in anderen Zuständen.

Versuchen Sie stattdessen:

netstat -anp | egrep :6700 
Verwandte Themen