У меня буря работает на двух машинах.Почему netstat сообщает меньшее количество открытых портов, чем lsof
Каждая машина запускает процесс nimbus (причудливый для мастер-процесса) и рабочие процессы.
И я хотел видеть связь между ними - какие порты открыты и как они соединяются друг с другом.
$ 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)
То, что я не понимаю, из приведенного выше вывода является то, что почему NetStat не показывает порт 50778 быть открытым в процессе с PID = 10669, где, как lsof
ясно показывает, что тот же самый процесс имеет установленное соединение, как host1:50778->host2:6700
Потому что вы сравниваете яблоки и апельсины. Попробуйте 'netstat -tulpn | grep -w 6700'. – EJP
'netstat -tulpn | grep -w 6700' вернул только одну строку для 6700. Я до сих пор не вижу порт 50778. Если это очевидно для вас, пожалуйста, объясните то же самое в ответе. Другие могут не иметь такого же опыта или знаний, как вы, и выиграли бы от вашего ответа. – user2250246