tcpdump的用法一例

经常有种需求,我想看到我的网卡都有哪些数据出去了,有哪些数据进来了。这种在Window下可以使用ethereal来实现抓包的操作。

这里说的事linux下的经典工具----tcpdump。曾经有一次在排除mysql问题的时候,用到了这个工具,可以将整条sql命令拦截并打印出来。

命令如下:

tcpdump -i eth1 -s 0 -l -w - dst port 3306 |strings
以下为执行的结果,包括截获到的sql语句。

-s为对一个包头掐掉多少个字节,系统默认丢弃包头的用来表示IP等协议的68个字节。-s 0 表示不丢弃包的任何一个字节(不抛弃不放弃大笑)
-l 行缓冲标准输出(不直接将结果输出到标准输出)。tcpdump抓到的包的数据默认直接输出到标准输出。
-w -     raw packets to file rather than parsing and printing them out, 写最原始的数据到文件。在这里即“-” 。 “-”指的是标准输出。 -w - 的意思即为将原始的数据写到标准输出。
strings用于显示文件中的可打印字符,即打印此处的tcpdump 出来的raw数据(原始数据)

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值