100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > pcap文件linux怎么打开 pcap文件格式 - 方恨少 - 博客园

pcap文件linux怎么打开 pcap文件格式 - 方恨少 - 博客园

时间:2020-09-17 17:01:08

相关推荐

pcap文件linux怎么打开 pcap文件格式 - 方恨少 - 博客园

前段时间因工作要求,需要对各种数据包进行分析和操作,内容涉及网路协议分析,socket,文件操作等。在此分享下学习和实践的经验。

首先介绍下网络抓包、协议分析的必备软件Ethereal,新版(Wireshark)以下还以Ethereal代之,目前最新版本已经支持在无线局域网抓包了。Linux和Windows均有对应安装包,它们分别是gcc和VC++编译的。不过Windows下是基于Winpcap而Linux下则是Libcap。Ethereal作为网路协议分析、学习、开发的敲门软件,其使用技巧及其原理机制(BPF)网上都有比较详尽的介绍,当初我收集的相关资料随后也会上传,不再多说。下面主要介绍下Ethereal默认的*.pcap文件保存格式。

Pcap文件头24B各字段说明:

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

Major:2B,0x02 00:当前文件主要的版本号

Minor:2B,0x04 00当前文件次要的版本号

ThisZone:4B当地的标准时间;全零

SigFigs:4B时间戳的精度;全零

SnapLen:4B最大的存储长度

LinkType:4B链路类型

常用类型:

0BSD loopback devices, except for later OpenBSD

1 Ethernet, and Linux loopback devices

6 802.5 Token Ring

7 ARCnet

8 SLIP

9 PPP

10 FDDI

100 LLC/SNAP-encapsulated ATM

101 "raw IP", with no link

102 BSD/OS SLIP

103 BSD/OS PPP

104 Cisco HDLC

105 802.11

108 later OpenBSD loopback devices (with the AF_value in network byte order)

113 special Linux "cooked" capture

114 LocalTalk

Packet包头和Packet数据组成

字段说明:

Timestamp:时间戳高位,精确到seconds

Timestamp:时间戳低位,精确到microseconds

Caplen:当前数据区的长度,即抓取到的数据帧长度,由此可以得到下一个数据帧的位置。

Len:离线数据长度:网络中实际数据帧的长度,一般不大于caplen,多数情况下和Caplen数值相等。

Packet数据:即Packet(通常就是链路层的数据帧)具体内容,长度就是Caplen,这个长度的后面,就是当前PCAP文件中存放的下一个Packet数据包,也就是说:PCAP文件里面并没有规定捕获的Packet数据包之间有什么间隔字符串,下一组数据在文件中的起始位置。我们需要靠第一个Packet包确定。最后,Packet数据部分的格式其实就是标准的网路协议格式了可以任何网络教材上找得到。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。