Merge Pcap捕获合并问题
我有两个pcap文件Merge Pcap捕获合并问题,merge,capture,wireshark,pcap,tcpdump,Merge,Capture,Wireshark,Pcap,Tcpdump,我有两个pcap文件 $ capinfos cap1_stego0.pcap File name: cap1_stego0.pcap File type: Wireshark/tcpdump/... - libpcap File encapsulation: Raw IP Number of packets: 713 及 我想把它们合并,但合并的方式不同。如果我使用 mergecap -v -w asd.pcap cap1_stego0.pcap
$ capinfos cap1_stego0.pcap
File name: cap1_stego0.pcap
File type: Wireshark/tcpdump/... - libpcap
File encapsulation: Raw IP
Number of packets: 713
及
我想把它们合并,但合并的方式不同。如果我使用
mergecap -v -w asd.pcap cap1_stego0.pcap cap1_wlan0.pcap -T rawip
或
Wireshark无法识别过去的第二个文件,并将cap1\u wlan0.pcap的数据包
或cap1\u stego0.pcap的数据包
分别显示为原始数据包
。同时,使用“tcpslice”删除cap1\u wlan0.pcap的以太网层(使两个文件都具有rawip
封装)向我显示无法识别的数据包数据
我该怎么办?有一种方法可以合并具有不同封装的pcap,或者转换eth->rawip或rawip->eth?谢谢。将原始IP文件转换为以太网封装文件(然后可以与其他以太网封装文件合并)的一种方法:
使用tshark从原始IP文件获取数据包的十六进制转储:
tshark -nxr pcap-file-name | grep -vP "^ +\d" > foo.txt
(grep用于从tshark输出中删除“摘要”行)
添加虚拟文件时,使用text2pcap将其转换回pcap文件
以太网报头:
text2pacp -e 0x0800 foo.txt foo.pcap
如果您想保留时间戳,就必须对tshark输出进行一些调整
获取一个文本文件,该文件包含text2pcap将接受的格式的时间戳,并且还包含十六进制数据包信息
[[
tcpslice是否有删除以太网报头的选项?
(查看手册页,tcpslice似乎用于从pcap文件中提取时间范围)
如果确实有办法从捕获文件中删除以太网头,则必须确保生成的pcap文件具有原始IP封装类型,然后再尝试使用wireshark、mergecap等进行读取
还要注意,mergecap的-T开关只强制文件中指定的封装类型;实际的封装没有改变(即,没有添加/更改/删除字节)。
]]对于合并pcap文件,请尝试其他实用程序-
合并命令示例:
./tcpmerge asd.pcap cap1\u wlan0.pcap cap1\u stego0.pcap OUTFILEMERGED.pcap
tshark -nxr pcap-file-name | grep -vP "^ +\d" > foo.txt
text2pacp -e 0x0800 foo.txt foo.pcap