wireshark工具集

tshark

  • 查看pcap文件第一个包的时间,当文件名不包含时间信息时非常有帮助 

   tshark -c 1 -T fields -e frame.time -r test.pcap

dumpcap

editcap

基本语法

editcap [options] ... <infile> <outfile> [ <packet#>[-<packet#>] ... ]

主要参数分类含义权作解说

包选择类

-r 保留选择的包;默认为删除。
-A <start time> 选择所有包的时间戳大于该时间的包。
-B <stop time> 选择所有包的时间戳小于该时间的包。

删除重复包类

-d 删除重复的包(默认5个内进行比对)。
-D <dup window> 删除重复的包,并指定在<dup window>个包内进行比对<dup window>的范围为0-1000000
-w <dup time window> 删除重复的包,并指定时间在<dup time window>之前的数据包才做重复删除操作。

处理类

-s <snaplen> 将数据包截断成长度为<snaplen>的数据包。
-C <choplen> 将包尾的<choplen>个字节砍掉。
-t <time adjustment> 调整包的时间戳;<time adjustment> 即可以为正数,也可以为负数。
-E <error probability> 按照<error probability>的比例随机制造错包,例如<error probability>0.05,则包文件中5%的包会随机被配置为各种错包。

输出类

-c <packets per file> 按包个数分割包文件,如<packets per file>1000,则将原始包文件分割成多个文件,每个文件的包个数为1000,当然最后一个文件的包数可以小于等于1000.
-i <seconds per file> 按时间分割包文件,如<seconds per file>10,则每个被分割的文件中的包时间戳均在10s内,且每个包的时间戳又会从0开始.
-F <capture type> 设置输出文件的格式,默认为pcapng
-T <encap type> 设置输出文件中包封装的类型,默认和原始包封装类型一致。

使用示例

1.将数据包截断为64字节长度,且转换为snoop的格式:
editcap -s 64 -F snoop capture.pcap shortcapture.snoop

2.删除原始文件中的第1000个数据包:
editcap capture.pcap sans1000.pcap 1000

3.提取原始文件中的第200750个包:
editcap -r capture.pcap small.pcap 200-750

4.提取原始文件中的第 1, 5, 10 to 20 and 30 to 40个包:
editcap -r capture.pcap select.pcap 1 5 10-20 30-40

5.删除与前面4个包中有重复的包:
editcap -d capture.pcap dedup.pcap

6.删除与前面100个包中有重复的包:
editcap -D 101 capture.pcap dedup.pcap

7.是原始文件中5%的包随机变为错包:
editcap -E 0.05 capture.pcap capture_error.pcap

capinfos

  • 查看pcap的信息 

capinfos -AM test.pcap

mergecap

原文地址:https://www.cnblogs.com/457220157-FTD/p/4522393.html