我们能找到在给定套接字地址上运行的应用程序的名称吗?
通过套接字地址,我的意思是IP地址和端口号的组合。
就像我们可以通过在linux中使用以下命令从IP地址中找到主机的名称:
主持人[IP]
但有没有任何命令或方法可以找到应用程序名称,方法与查找主机名的方式相同?
如果我们只能找到web应用程序名称或tomcat服务名称,那么它也没关系。
答案 0 :(得分:0)
一种相当简单的方法是使用" netstat":
gruescher@SMARTBUILD:~$ sudo netstat -nlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 712/rpcbind
tcp 0 0 127.0.1.1:53 0.0.0.0:* LISTEN 1217/dnsmasq
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 928/sshd
tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN 1487/cupsd
tcp 0 0 127.0.0.1:5432 0.0.0.0:* LISTEN 25654/postgres
tcp 0 0 0.0.0.0:445 0.0.0.0:* LISTEN 19660/smbd
tcp 0 0 0.0.0.0:513 0.0.0.0:* LISTEN 980/xinetd
tcp 0 0 0.0.0.0:514 0.0.0.0:* LISTEN 980/xinetd
tcp 0 0 0.0.0.0:139 0.0.0.0:* LISTEN 19660/smbd
tcp 0 0 0.0.0.0:41516 0.0.0.0:* LISTEN 31353/rpc.statd
tcp6 0 0 :::111 :::* LISTEN 712/rpcbind
tcp6 0 0 :::80 :::* LISTEN 2757/apache2
tcp6 0 0 :::24693 :::* LISTEN 13707/fo_scheduler
tcp6 0 0 :::22 :::* LISTEN 928/sshd
tcp6 0 0 ::1:631 :::* LISTEN 1487/cupsd
tcp6 0 0 :::445 :::* LISTEN 19660/smbd
tcp6 0 0 :::48611 :::* LISTEN 31353/rpc.statd
tcp6 0 0 :::139 :::* LISTEN 19660/smbd
如您所见,它显示端口,本地地址,PID和进程名称。
您必须以超级用户身份运行它。