我有几个包含networkingstream量的PCAP文件。 为了进行networking实验的一些实验,我需要具有完全随机IP地址的真实数据。
我很清楚tcprewrite的可能性,可以像这样使用seed参数:
tcprewrite --seed=423 --infile=input.pcap --outfile=output.pcap
根据该文件,使用此方法时,主机之间的会话将保持不变。 但是,这不能为我提供足够的随机性,基于可用的数据集。 作为一个例子,假设一个包含很多数据包的大型PCAP文件,但只包含两台主机之间的stream量。 用上面提到的方法随机化这个跟踪只是将两个IP地址replace成另外两个。 总共还有两个地址。
我想将IP地址完全独立于原始IP地址,以便在所有可用的IP空间内或在给定的前缀内均匀分布。
举个例子,我想将PCAP文件中的所有目的地址都改为在10.0.0.0/8范围内均匀随机分布, 而不保留原始映射。
因此,问题是:如何在PCAP文件中完全随机化IP地址?
理想情况下,我想指定的地址是随机的IP范围,所以基本上:如何设置所有目标地址从10.0.0.0/8范围内的随机地址?
Wireshark Wiki列出了许多选项来调查。
这些工具可用于“匿名”捕获文件,用随机值replaceIP地址等字段。
此外,快速谷歌search在github上显示sanicap 。