我使用tcprewrite从CAIDA数据集中重写我的原始pcap (更改MAC地址,然后更改IP)。我遇到了这个问题。命令用途如下:
sudo tcprewrite --infile=xxx.pcap --dlt=enet --outfile=yyy.pcap --enet-dmac=00:00:00:03 --enet-smac=00:00:00:1f 误差
pcap was captured using a snaplen of 65000 bytes. This may mean you have truncated packets.我试图从网上寻找解决方案,但不幸的是,我无法解决它。根据这个线程http://sourceforge.net/p/tcpreplay/mailman/tcpreplay-users/?viewmonth=201201,错误上升是因为数据包从一开始就没有被捕获。
有没有人知道如何解决这个问题?
发布于 2015-02-09 07:40:53
pcap was captured using a snaplen of 65000 bytes. This may mean you have truncated packets.
或者它可能不是,事实上,它可能并不意味着您有截短的数据包。
某些系统上的数据包捕获机制要求指定一些最大数据包长度,但它可以足够大,以至于在实践中没有任何数据包大于最大值,因此没有数据包被截断。
65535经常被用作这样的最大值-- Wireshark甚至在被重命名为Wireshark之前就这样做了,并且tcpdump首先被更改,这样"-s 0“将使用65535,然后被更改为默认为65535。tcpreplay将任何最大数据包长度< 65535视为“不试图捕获整个数据包”,但是警告65534是有点愚蠢的。
Tcpdump和Wireshark最近将限制提高到262144,以处理一些USB捕获。
(选择的限制不太大- pcap文件格式允许最多2^32-1,但一些软件在读取此类文件时可能会尝试分配2^32-1字节的缓冲区,然后失败。)
所以,不要担心它,但也不要显式地指定65000的快照长度--只有当您只想捕获包的一部分或者有一个默认为68或96个字节的旧tcpdump (或 well )时,显式快照长度才是有用的,在后一种情况下,您最好使用一个值>= 65535。
https://stackoverflow.com/questions/28401509
复制相似问题