加入收藏 | 设为首页 | 会员中心 | 我要投稿 新余站长网 (https://www.0790zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

在各种系统上查询端口号被哪个进程占用的方法

发布时间:2020-12-30 18:00:53 所属栏目:安全 来源:网络整理
导读:《在各种系统上查询端口号被哪个进程占用的方法》要点: 本文介绍了在各种系统上查询端口号被哪个进程占用的方法,希望对您有用。如果有疑问,可以联系我们。 汇总了一下各种平台下查询端口被哪个程序占用的方法,可以在安装失败,分析异常端口等时候使用. 一

《在各种系统上查询端口号被哪个进程占用的方法》要点:
本文介绍了在各种系统上查询端口号被哪个进程占用的方法,希望对您有用。如果有疑问,可以联系我们。

汇总了一下各种平台下查询端口被哪个程序占用的方法,可以在安装失败,分析异常端口等时候使用.

一、Windows平台

查询端口1793是谁在使用,首先找到进程id.

PS C:Usersd00101270> netstat -aon | findstr “1793”

TCP 10.70.103.84:1793 72.14.213.113:443 SYN_SENT 792

上面最后一列是进程id,?我们使用tasklist来查找进程id对应的进程名

PS C:Usersd00101270> tasklist | findstr “792”

GoogleUpdate.exe 792 Console 1 8,220 K

二、Linux

第一种方案:

$netstat -pan | grep 19916

(Not all processes could be identified,non-owned process info

will not be shown,you would have to be root to see it all.)

tcp 0 0 10.71.173.225:19916 0.0.0.0:* LISTEN?28517/DiameterAdpt

第二种方案:

$lsof -i:23

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME

telnet 10582 d101270 3u IPv4 263403399 TCP linux227.huawei:61172->10.71.173.225:telnet (ESTABLISHED)

三、AIX

$netstat -Aan|grep 30542

f10000f303321b58 tcp4 0 0 *.30542 *.* LISTEN

$rmsock f10000f303321b58 tcpcb

The socket 0x3321800 is being held by proccess 692476 (db2sysc).

四、HP-UX

使用lsof?-i 可以查到程序名,进程号,?如果查9090端口

#lsof -i|grep 9090

java?29607?sync?30u?IPv4 0x12b6ce380?0t0?TCP *:9090 (LISTEN)

java?29607?sync?35u?IPv4 0x122c194c0?0t1343?TCP zy:9090->10.17.109.110:1206 (ESTABLISHED)

java?29607?sync?36u?IPv4?0xca46d9c0?0t2680?TCP zy:9090->172.16.4.109:1105 (ESTABLISHED)

java?29607?sync?37u?IPv4 0x126e140c0?0t2796?TCP zy:9090->172.16.4.111:1094 (ESTABLISHED)

java?29607?sync?38u?IPv4 0x105c25b80?0t2409?TCP zy:9090->172.16.4.122:1576 (ESTABLISHED)

java?29607?sync?39u?IPv4 0x106bc4040?0t500?TCP zy:9090->10.17.77.96:1300 (ESTABLISHED)

java?29607?sync?41u?IPv4?0xca2a1dc0?0t443?TCP zy:9090->132.97.238.187:1642 (ESTABLISHED)

java?29607?sync?42u?IPv4 0x12245f200?0t2443?TCP zy:9090->132.97.191.143:2928 (ESTABLISHED)

java?29607?sync?47u?IPv4 0x122c19dc0?0t2347?TCP zy:9090->10.17.109.110:1207 (ESTABLISHED)

#ps -ef|grep 29607

sync 29607?1?0?May 19???163:02 /opt/java1.4/bin/PA_RISC2.0/java -server -Xms128m -Xmx512m -Dja

root 17445 16305?1 17:31:19 pts/to?0:00 grep 29607

五、SUN Solaris

第一种方案:

1.?使用下面shell script,先建立一个port.sh文件:

# more /tmp/port.sh

#!/bin/sh

for pid in `ls /proc`

do

pf=`/usr/bin/pfiles $pid 2>/dev/null`

if echo $pf | grep $1 > /dev/null 2>&1

then

echo $pid

/usr/bin/pargs $pid

fi

done

2.?运行port.sh,传入端口号,比如53250 :

#?/tmp/port.sh 53250

3.?运行结果如下:

1225

1225:?/usr/lib/thunderbird/thunderbird-bin -UILocale zh-CN

-contentLocale CN

argv[0]: /usr/lib/thunderbird/thunderbird-bin

argv[1]: -UILocale

argv[2]: zh-CN

argv[3]: -contentLocale

argv[4]: CN

4212

4212:?/bin/sh /tmp/port.sh 53250

argv[0]: /bin/sh

argv[1]: /tmp/port.sh

argv[2]: 53250

第二种方案:

下载lsof软件,?使用lsof软件可以实现,同Linux.

第三种方案:

使用MDB

from socket info (netstat output),you can know its vnode

from vnode info,you can know which process owns it

from process info,you can know its args,so comes the result.

(编辑:新余站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读