(Полностью) рандомизировать IP-адреса в файле PCAP
У меня есть несколько файлов PCAP, которые содержат сетевой трафик. Чтобы выполнить некоторые эксперименты для сетевого эксперимента, мне нужны реальные данные с полностью рандомизированными IP-адресами.
Мне хорошо известны возможности tcprewrite, которые можно использовать с параметром seed, например так:
tcprewrite --seed=423 --infile=input.pcap --outfile=output.pcap
Согласно документу, сеансы между хостами поддерживаются при использовании этого метода. Это, однако, не обеспечивает достаточно случайности для меня на основе доступного набора данных. В качестве примера рассмотрим большой файл PCAP с большим количеством пакетов, который, однако, содержит только трафик между двумя хостами. Рандомизация этой трассы указанным выше способом просто заменяет оба IP-адреса еще двумя. Всего есть еще два адреса.
Я хотел бы изменить IP-адреса, полностью независимые от исходного IP-адреса, чтобы они были равномерно распределены либо по всему доступному IP-пространству, либо внутри заданного префикса.
В качестве примера я хотел бы изменить все адреса назначения в файле PCAP для равномерного и случайного распределения в диапазоне 10.0.0.0/8 без сохранения исходного сопоставления.
Отсюда вопрос: как полностью рандомизировать IP-адреса в файле PCAP?
В идеале я хотел бы указать диапазон IP-адресов, в котором адреса рандомизированы, поэтому в основном: Как установить все адреса назначения на случайный адрес из диапазона 10.0.0.0/8?
1 ответ
В Wireshark Wiki перечислено много вариантов для изучения.
Эти инструменты можно использовать для "анонимизации" файлов захвата, заменяя поля, такие как IP-адреса, рандомизированными значениями.
- AnonTool из архива беспроводного трафика CRAWDAD.
- Инструмент bittwiste от Bit-Twist.
- Инструмент Crypto-PAn.
- Инструмент Network Expect, который можно использовать для анонимизации пакетов.
- Инструмент pktanon от Технологического института Карлсруэ, Институт телематики.
- Инструмент SCRUB-tcpdump.
- Инструмент tcpdpriv из архива интернет-трафика.
- Инструмент tcprewrite от tcpreplay.
- Инструмент TraceWrangler.
Кроме того, быстрый поиск в Google показал sanicap на github.