修复tcpdump文件

来自个人维基
2015年5月6日 (三) 16:34Hovercool讨论 | 贡献的版本

(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳转至: 导航搜索

一、首先要了解一下tcpdump文件的文件格式:

http://wenku.baidu.com/view/b494e20616fc700abb68fcb6.html

二、开始修复

推荐工具:winHex

1、清除多余的空数据

为了减小log大小,logPuller在导出log时,会先将各log文件清零,故拿到的tcpdump文件前部分会有很多"00000000 00000000"之类的数据,故把这部分数据清除(很多的情况下,可能这些无用数据比有用数据还要多,此时可以考虑把有用数据复制到一个新文件)

2、对齐数据

在数据中找到第一个packet头的开始处,格式如下:

XX 00 00 00 XX 00 00 00

如:

44 00 00 00 44 00 00 00

保留其前面8个Byte,然后把其前面的数据均删除

  • 注,此字段不一定是对齐的,如有可能是:
50 06 67 04 00 44 00 00    00 44 00 00 00 00 03

3、在开头处补齐 tcpdump格式文件头

D4 C3 B2 A1 02 00 04 00   00 00 00 00 00 00 00 00
FF FF 00 00 71 00 00 00

4、修复完毕,赶紧把文件保存一下,拖到wireshark试一下吧