记录一条有意思的tcpdump命令

本文介绍了如何使用tcpdump命令来精确地捕获TCP建链包、HTTP GET请求以及HTTP响应包。通过解析tcpflags和TCP报文结构,详细解释了过滤条件的设置,包括如何抓取特定TCP标志的报文和HTTP报文的前四个字节匹配特定字符串的方法。
摘要由CSDN通过智能技术生成

在分析问题时,对抓包有个诉求:只抓取TCP建链包和HTTP GET请求包及HTTP响应包,于是有了下面这条命令:

tcpdump -i 网卡名 ‘((tcp[tcpflags] & tcp-syn != 0) or (tcp[(tcp[12]>>2):4]=0x47455420) or (tcp[(tcp[12]>>2):4]=0x48545450))’ -nnAl -w xxxx.cap

对这条命令的解释如下:

  • tcp[tcpflags] & tcp-syn != 0 或者tcp[tcpflags] == tcp-syn

表示只抓取带syn标志的报文,包括三次建链中的syn和syn+ack;这个比较好理解,不过多解释。当然通过该方法还可抓取其他TCP标志的包。如下:
tcp[tcpflags] == tcp-rst RST标记
tcp[tcpflags] == tcp-urg URG 标记
tcp[tcpflags] == tcp-ack ACK标记
tcp[tcpflags] == tcp-psh PUSH标记
tcp[tcpflags] == tcp-fin FIN标记

  • tcp[(tcp[12]>>2):4]=0x47455420</
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值