Linux:如何知道哪个进程或程序正在向本地端口发送数据?

问题描述

我在 CentOS 服务器上启动了一个侦听 127.0.0.1:3000 的程序。我没有向程序发送任何消息,但它一直在接收数据。我想知道谁在向我的程序发送数据。所以我输入以下命令:

netstat -an | grep 3000

快照输出为:

tcp        0      0 127.0.0.1:3000          0.0.0.0:*               LISTEN     
tcp        0      0 127.0.0.1:3000          127.0.0.1:41960         TIME_WAIT  
tcp        0      0 127.0.0.1:3000          127.0.0.1:41956         TIME_WAIT  
tcp        0      0 127.0.0.1:3000          127.0.0.1:41964         TIME_WAIT  
tcp        1      0 127.0.0.1:41968         127.0.0.1:3000          CLOSE_WAIT 
tcp        0      0 127.0.0.1:3000          127.0.0.1:41952         TIME_WAIT  
tcp        0      0 127.0.0.1:3000          127.0.0.1:41968         FIN_WAIT2 

每次我输入命令时输出都会改变。像 4xxxx 这样的模式中的端口号频繁增加。

如果我输入 lsof -nPi tcp:3000,输出之一是

COMMAND   PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
node    76230 xxx   18u  IPv4 130828      0t0  TCP 127.0.0.1:3000 (LISTEN)
node    76230 xxx   20u  IPv4 208468      0t0  TCP 127.0.0.1:3000->127.0.0.1:42072 (ESTABLISHED)

我不知道这些 4xxxx 数字代表什么。就我而言,如何知道谁在向 127.0.0.1:3000 发送数据?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)