tshark如何如何在朋友圈里查看指定内容某条包的详细内容?

总结一下tshark进行切流的方法:

  其中嘚数字89所代表的含义是该pcap文件中流编号为89的那条流。那么这个编号是怎么来的唯一一条流是由源IP,目的IP源端口,目的端口以及传输層协议五元组来确定的至于wireshark是怎么确认一条流的,我查看了stackoverflow等论坛的解释均给出的是这个编号是由是源IP,目的IP源端口,目的端口四え组计算得来的

  既然知道流的编号,那么我们就可以根据这个编号将相应符合条件的流切出来的具体shell脚本如下:

  $LINE 代表pcap文件名,-T和-e组合使用表示打印wireshark中相应的字段(使用方法见tshark –h如图2),本例中表示输出tcp.stream字段即流号。因为是针对每一个报文都要输出该报文对应的流号因此需要做排序,去重的工作将最后的所有的流号按照大小顺序输入到tcp_stream_number.txt文件中。

  附上切流的脚本:

  其实该方法的缺点也很明显主要包括以下两个方面的原因:

  1、对于每个包,要遍历每一条流循环次数较多,遇到P2P的报文简直就是灾难

  2、每一条流是重新写文件导出的,文件读写速度比较慢在文件读写期间我没有办法进行后续的循环的,因此我在进程里面查看的时候如下图。

  177号流写的不是那么快後续的程序就需要等待,浪费时间我记得里面最擅长结局这种情况,通过回调实现异步太清楚是如何实现的,如有了解可以交流下。

  针对速度比较慢的情况提速的话包括以下三种:

  1、对于每一个包,只循环一次这个想法是我们团队的SM给我的启示。就是通过对pcap进行解包按照五元组生成流号,按照相同的流号对每个包进行归类,即写文件这样的话只遍历一边数据包就可以了。

  2、C语言的异步方式这个就请各位大神指教了。

  3、Shell脚本多线程方式这个是提速的通用办法。

  以上的提速办法由于时间关系我也还没有去实现,欢迎大家楿互交流

我要回帖

更多关于 如何在朋友圈里查看指定内容 的文章

 

随机推荐