[转载]editcap参数

介绍一下editcap的各种参数。

1、-F 上面刚刚用到的。指定输出文件的格式,使用 editcap -F 命令可以列出所有支持的格式。我们要pcap,那就写pcap呗。此外,在linux平台下转化为pcap文件时,应当使用 "libpcap" 关键字,记得要先安装libpcap库啊。

2、-T 上面也用到。这个是指包装类型,使用 editcap -T 命令可以列出所有支持的格式。所谓包装类型,就是指你需要让数据部分包含从哪一层开始的数据,ether那就是链路层的(以太网),ip就是网络层的,tcp什么的也是可以的啦。

3、-s 这是个类似于tcpdump的功能,后边接变量snaplen使用,就是指截断长度了,这个不是从数据部分开始截,而是从数据部分中,ethernet/ip header/tcp header部分往后的有效负载(payload)部分往后截的。

4、-c 这是个碉堡了的功能,有些人搞不动太大的包,比如某些数据集,提供的数据文件动辄2G起,一次处理不了怎么办?用-c命令就OK了。每个文件指定一定数量的包,存够了就写到下一个文件里。这些文件的具体的命名方式是,在你指定的文件名之后加入数字后缀。

5、-C 这又是个碉堡了的功能,可以直接从数据包上切一截子下来。字面意思已经很明显了,chop就是剁,剁掉数据包中间的一段。按照editcap命令给出的在线文档中举的例子,使用这个命令可以很轻松的搞定那些携带802.1q的VLAN tag的包,切掉数据包的第12-15个字节(共4字节)就OK了,切掉之后对别的数据都不影响,就跟没存在过一样。具体命令是

1 editcap -L -C 12:4 capture_vlan.pcap capture_no_vlan.pcap

至于-C的参数,变化更是多得很,这里暂时就不展开了。不过不幸的是,好像老版本的-C命令不支持带冒号的参数,就比如上面这个例子。

6、-A /-B 指定开始时间和结束时间。这个有点像Linux下的某个命令(查证后补上具体是哪个),不过更形象。-A指定开始时间,-B指定结束时间,录音机我们都用过,这样联想一下就简单了。具体的时间可以使用YYYY-MM-DD HH:MM:SS格式来指定。

7、-D /-w 用来尝试除去记录文件中的重复包,-D中的dup window参数指定向前检查的包的个数,-w中的dup time window指定向前检查的时间的长度。


To shrink the capture file by truncating the packets at 64 bytes and writing it as Sun snoop file use:

    editcap -s 64 -F snoop capture.pcap shortcapture.snoop

To delete packet 1000 from the capture file use:

    editcap capture.pcap sans1000.pcap 1000

To limit a capture file to packets from number 200 to 750 (inclusive) use:

    editcap -r capture.pcap small.pcap 200-750

To get all packets from number 1-500 (inclusive) use:

    editcap -r capture.pcap first500.pcap 1-500

or

    editcap capture.pcap first500.pcap 501-9999999

To exclude packets 1, 5, 10 to 20 and 30 to 40 from the new file use:

    editcap capture.pcap exclude.pcap 1 5 10-20 30-40

To select just packets 1, 5, 10 to 20 and 30 to 40 for the new file use:

    editcap -r capture.pcap select.pcap 1 5 10-20 30-40

To remove duplicate packets seen within the prior four frames use:

    editcap -d capture.pcap dedup.pcap

To remove duplicate packets seen within the prior 100 frames use:

    editcap -D 101 capture.pcap dedup.pcap

To remove duplicate packets seen equal to or less than 1/10th of a second:

    editcap -w 0.1 capture.pcap dedup.pcap

To display the MD5 hash for all of the packets (and NOT generate any real output file):

    editcap -v -D 0 capture.pcap /dev/null

or on Windows systems

    editcap -v -D 0 capture.pcap NUL

To introduce 5% random errors in a capture file use:

  editcap -E 0.05 capture.pcap capture_error.pcap

你可能感兴趣的:(转载)