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: