pcap文件分析

上一篇 / 下一篇  2011-03-22 13:24:43 / 个人分类:知识

pcap文件格式是bpf保存原始数据包的格式,很多软件都在使用,比如tcpdump、wireshark等。

pcap文件的格式为:
  文件头    24字节
  数据包头 + 数据包  数据包头为16字节,后面紧跟数据包
  数据包头 + 数据包  ......

一:文件头结构:

pcap文件头部包含24字节的控制信息。各字段功能如下:

Magic:4字节:0x1A 2B 3C 4D:用来标示文件的开始

Major:2字节表示当前文件主要的版本号      

Minor:2字节表示当前文件次要的版本号

ThisZone:4字节,当地的标准时间;全零

SigFigs:4字节,时间戳的精度;全零

SnapLen:4字节,最大的存储长度

LinkType:4字节,链路类型(包含有线和无线链路的种类,如802.11,Ethernet等)


二:数据包头结构:

包头数据由16字节组成,包括:

Timestamp:时间戳高位,精确到

Timestamp:时间戳低位,精确到微妙

Caplen:当前数据区的长度,即抓取到的数据帧长度,由此可以得到下一个数据帧的位置。即链路层的数据帧具体内容长度就是Caplen,这个长度的后面,就是当前pcap文件中存放的下一个Packet数据包包头。也就是说,pcap文件里面并没有规定捕获的Packet数据包之间有什么间隔字符串,下一组数据在文件中的起始位置需要靠上一个包确定。

Len:离线数据长度网络中实际数据帧的长度,在抓包程序中往往会将过大的数据包抛弃一部分数据保存下来,储存的是数据原来的长度


三:数据包

从pcap文件中分离数据包和包的头部信息后,就可以从数据包入手逐层解析其中的特征信息。数据帧是嗅探器从网络链路上捕捉的完整的数据包。它包含了网络接口层的DLC头部,网络层的IP头,以及传输层的tcp,udp等协议头,在这之后还有不同应用程序所使用的数据传输协议格式。

首先是以太网帧,它的格式为:




接下来的就是IP协议首部,它的结构图为:


在IP数据中封装各类上层协议数据包,以TCP为例:

用一幅图来表示




TAG:

 

评分:0

我来说两句

我的栏目

日历

« 2024-04-28  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 30588
  • 日志数: 22
  • 图片数: 3
  • 建立时间: 2011-03-09
  • 更新时间: 2011-05-17

RSS订阅

Open Toolbar