(完全)随机化PCAP文件中的IP地址

我有几个包含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地址等字段。

  • 无线stream量的CRAWDAD存档AnonTool。
  • Bit-Twist的bittwiste工具。
  • Crypto-PAn工具。
  • networking期望工具,可用于匿名数据包。
  • 来自卡尔斯鲁厄技术研究所Telematics的pktanon工具。
  • SCRUB-tcpdump工具。
  • 互联网stream量档案中的tcpdpriv工具。
  • tcpreplay的tcprewrite工具。
  • TraceWrangler工具。

此外,快速谷歌search在github上显示sanicap 。