wwb
作者wwb·2012-03-09 12:50
系统架构师·zkr

AIX监听端口和对应的进程方法

字数 2381阅读 1053评论 0赞 0

AIX 系统端口对应进程号
在AIX系统中查询端口对应的进程不像linux那么方便。因为AIX系统中的netstat命令不能直接打印出端口对应的进程。所以刚接触AIX的新手往往不知道如何查询端口对应的进程号,下面介绍两种方法来查询端口对应进程号。
 
一、使用rmsock命令和netstat命令查询:
对于netstat命令比较常用,而对于rmsock比较陌生,下面简单介绍一下rmsock命令以及查询端口对应进程号的过程。
1、   rmsock命令:
rmsock除去不包含文件描述符的套接字。它接受 socket、tcpcb、inpcb、ripcb 或 rawcb 地址并将其转换成套接字地址。然后检查每个进程所有打开的文件以查找套接字的匹配。如果没找到匹配,对该套接字执行异常终止操作,而不考虑套接字 linger 选项的存在。套接字保留的端口号释放。如果发现匹配,文件描述符和主进程状态显示给用户。结果发送到 syslogd 并在 /var/adm/rmsock.log 文件中记录。
         命令格式:rmsock  Address  TypeofAddress

2、举例说明端口对于进程查询。
     (1)、先使用netstat命令查看端口系统内核地址(16进制),如查看ssh 22端口的进程。
                 # netstat –Aan |grep 22

               f1000600044c7398 tcp4       0     52  134.96.194.9.22  134.96.90.123.1797 ESTABLISHED

               f1000600044e4b98 tcp4       0      0  *.22            *.*                LISTEN

     其中:   f1000600044e4b98 tcp4       0      0  *.22            *.*                LISTEN
        行为侦听端口22端口相关信息, f1000600044e4b98为系统内核地址。

   (2)、调用rmsock命令查看该端口对应的进程号:
                    #  rmsock  f1000600044e4b98 tcpcb
                    The socket 0x44e4808 is being held by proccess 447250 (sshd). ---显示端口22的进程号为447250。
                 这样就查出了端口对应的系统进程号
 
二、通过lsof 命令查看端口对应的进程号。
# lsof –i :22

COMMAND    PID USER   FD   TYPE             DEVICE SIZE/OFF NODE NAME

sshd    107084 root    3u IPv4 0xf100070000a3a3b0      0t0 TCP *:ssh (LISTEN)

其中
sshd    107084 root    3u IPv4 0xf100070000a3a3b0      0t0 TCP *:ssh (LISTEN)
行为侦听端口22端口相关信息,第二列(PID)107084为端口22的系统进程号。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

X社区推广