怎么在linux下查看某个端口的TCPIP通讯的数据

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么在linux下查看某个端口的TCPIP通讯的数据相关的知识,希望对你有一定的参考价值。

参考技术A root用户查看网卡eth0上 端口32001端口进出数据
tcpdump -X -s0 'dst port 32001 or src port 32001' -i eth0

Linux下如何查看哪些端口处于监听状态

查看某一端口的占用情况: lsof -i:端口号

前提:首先你必须知道,端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。下次若某个进程再次开启,则相应的端口也再次开启。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端口。

1. 可以通过"netstat -anp" 来查看哪些端口被打开。

(注:加参数‘-n‘会将应用程序转为端口显示,即数字格式的地址,如:nfs->2049, ftp->21,因此可以开启两个终端,一一对应一下程序所对应的端口号)

2. 然后可以通过"lsof -i:$PORT"查看应用该端口的程序($PORT指对应的端口号)。或者你也可以查看文件/etc/services,从里面可以找出端口所对应的服务。
(注:有些端口通过netstat查不出来,更可靠的方法是"sudo nmap -sT -O localhost")
3. 若要关闭某个端口,则可以:
1)通过iptables工具将该端口禁掉,如:
"sudo iptables -A INPUT -p tcp --dport $PORT -j DROP"
"sudo iptables -A OUTPUT -p tcp --dport $PORT -j DROP"    
2)或者关掉对应的应用程序,则端口就自然关闭了,如:
"kill -9 PID" (PID:进程号)
如:    通过"netstat -anp | grep ssh"
有显示:    tcp 0 127.0.0.1:2121 0.0.0.0:* LISTEN 7546/ssh
则:    "kill -9 7546"

(可通过"chkconfig"查看系统服务的开启状态)

 转:http://blog.csdn.net/wudiyi815/article/details/7473097

 













以上是关于怎么在linux下查看某个端口的TCPIP通讯的数据的主要内容,如果未能解决你的问题,请参考以下文章

linux怎么查看访问80端口的日志,在无法查看Apache日志的情况下

linux如何查看开启端口

Linux下端口如何分配

linux使用啥命令查看端口 ?

linux socket通讯如何获取本地的源端口号

如何查看Tcpip并发连接数