介绍一下如何使用python的dpkt模块对于pcap报文进行解析,报文解码。
通常使用wireshark来对于存储下来的pcap进行手动分析,如果需要使用程序灵活控制分析报文中的信息,我通常使用如下三种方法:
1,使用wireshark提供的Lua API,编写lua插件进行分析。优点是wireshark支持协议众多,2000+,同时对于报文内容解码非常的详细。由于底层使用的是C语言编写,因此解码效率也是很高。关于插件的使用,见这里。
2,在python中调用方法一编写的Lua脚本,具体的方法我在我的优快云博客上一篇文章中有说明,见这里。
3,直接使用python 的dpkt模块进行解报文。比之wireshark,首先支持的协议有限。这里列出了dpkt中的所有模块,可以看出其支持解码的协议并不多。但是对于常见的ip,tcp,udp,ssl,http等协议是支持的。但是像google的quic协议wireshark已经支持&#x