当前位置: 技术问答>linux和unix
请问怎么知道每个TCP连接所属哪个进程??还有怎么样断开系统中任意一个TCP连接?
来源: 互联网 发布时间:2015-06-17
本文导语: 请问怎么知道每个TCP连接所属哪个进程??还有怎么样断开系统中任意一个TCP连接? 我指的TCP连接是指/proc/net/tcp文件列出的连接。 还有,怎么得到上面文件列出的SOCKET的socket值?? | 也不...
请问怎么知道每个TCP连接所属哪个进程??还有怎么样断开系统中任意一个TCP连接?
我指的TCP连接是指/proc/net/tcp文件列出的连接。
还有,怎么得到上面文件列出的SOCKET的socket值??
我指的TCP连接是指/proc/net/tcp文件列出的连接。
还有,怎么得到上面文件列出的SOCKET的socket值??
|
也不是说不行,lsof基本能做吧, 不过一般是安全性研究才用分析这个
[root@localhost root]# lsof |lessf
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
init 1 root cwd DIR 3,1 4096 2 /
init 1 root rtd DIR 3,1 4096 2 /
init 1 root txt REG 3,1 27036 161781 /sbin/init
init 1 root mem REG 3,1 103044 80765 /lib/ld-2.3.2.so
init 1 root mem REG 3,1 1549556 80772 /lib/libc-2.3.2.so
init 1 root 10u FIFO 3,1 40058 /dev/initctl
keventd 2 root cwd DIR 3,1 4096 2 /
keventd 2 root rtd DIR 3,1 4096 2 /
ksoftirqd 3 root cwd DIR 3,1 4096 2 /
ksoftirqd 3 root rtd DIR 3,1 4096 2 /
这样就可以少很多不必要的东西
[root@localhost root]# lsof |grep IPv4
sshd 893 root 3u IPv4 1061 TCP *:61978 (LISTEN)
sshd 1025 root 4u IPv4 2926 TCP 211.148.199.222:61978->211.148.198.192:1172 (ESTABLISHED)
[root@localhost root]# lsof |lessf
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
init 1 root cwd DIR 3,1 4096 2 /
init 1 root rtd DIR 3,1 4096 2 /
init 1 root txt REG 3,1 27036 161781 /sbin/init
init 1 root mem REG 3,1 103044 80765 /lib/ld-2.3.2.so
init 1 root mem REG 3,1 1549556 80772 /lib/libc-2.3.2.so
init 1 root 10u FIFO 3,1 40058 /dev/initctl
keventd 2 root cwd DIR 3,1 4096 2 /
keventd 2 root rtd DIR 3,1 4096 2 /
ksoftirqd 3 root cwd DIR 3,1 4096 2 /
ksoftirqd 3 root rtd DIR 3,1 4096 2 /
这样就可以少很多不必要的东西
[root@localhost root]# lsof |grep IPv4
sshd 893 root 3u IPv4 1061 TCP *:61978 (LISTEN)
sshd 1025 root 4u IPv4 2926 TCP 211.148.199.222:61978->211.148.198.192:1172 (ESTABLISHED)
|
netstat -nap
至于到底是哪个socket的话,恐怕只有本进程才知道吧,别的进程无法知道该进程的FD Table。
至于到底是哪个socket的话,恐怕只有本进程才知道吧,别的进程无法知道该进程的FD Table。