海运的博客

Linux网络工具之tcpdump使用

发布时间:May 3, 2012 // 分类:网络工具 // No Comments

Tcpdump使用语法:

tcpdump [ -adeflnNOpqStvx ] [ -c count ] [ -F file ][ -i interface ] [ -r file ] [ -w file ]

参数:

-c 指定监听的封包数,默认持续监听。
-e 显示链路层报头
-nn 以数字方式显示IP及端口
-i 指定监听的网卡
-F 读取文件内的过滤参数
-q 快速输出模式
-l 使标准输出变为行缓冲形式,用于重定向分析
-w 数据包保存为文件
-r 读取保存的数据包
-A 以ASCII编码显示数据包
-x 以十六进制显示
-s 指定抓包显示一行的宽度,-s0表示显示完整的包

应用举例:
1.监听单个IP的所有TCP通信

#https://www.haiyun.me
tcpdump tcp -nn -v host 192.168.1.16

2.监听指定IP间的ARP通信

tcpdump arp -nn -v host 192.168.1.16 and 192.168.1.1

3.监听DNS查询数据包

tcpdump udp port 53

4.监听目标端口80的数据包

tcpdump -A -v dst port 80  

5.监听指定IP目标80端口的数据包

tcpdump -A -v -s 0 host 192.168.1.235 and dst port 80

6.监听特定TCP标志的数据包

tcpdump tcp[tcpflags]=tcp-syn
#syn ack
tcpdump 'tcp[13] = 18'

7.监听HTTP HEAD:

#GET
tcpdump -s 0 -A 'tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x47455420'
#POST
tcpdump -s 0 -A 'tcp dst port 80 and (tcp[((tcp[12:1] & 0xf0) >> 2):4] = 0x504f5354)'
#所有HEAD
tcpdump -A -s 0 'tcp port 80 and (((ip[2:2] - ((ip[0]&0xf)<<2)) - ((tcp[12]&0xf0)>>2)) != 0)'

标签:linux, 网络工具, tcpdump, 网络监控

发表评论

分类
最新文章
最近回复
  • 海运: proxy-header或proxy_protocol
  • liangjw: 如果是 内部调用 或者 中间存在 代理 而上一个代理又在内网 ,那怎么处理来自代理私有IP?
  • chainofhonor: 感谢,用dnsmasq设置自动判断BIOS和UEFI成功了
  • 海运: 不好意思,这个是很多年前的,现在也许已经不适用,我现在也不用多线了。
  • CQ: -m state --state NEW 替换成-m conntrack --ctstate NEW
  • CQ: 你好,我入站已经成功分流,但是不知道出站怎么设置,PREROUTING替换成POSTROUTI...
  • K: 好的,谢谢,我去试试!
  • 海运: 可以试试3proxy
  • daha: PHP的怎么使用???
  • 海运: 换回了5.3内核,5.8用5.3 dtb虽然能开机且负载正常,但也有其它问题,不建议使用。