Вопрос: как разбить файл pcap на набор меньших


У меня огромный файл pcap (сгенерированный tcpdump). Когда я пытаюсь открыть его в wirehark, программа просто становится невосприимчивой. Есть ли способ разделить файл в наборе меньших, чтобы открыть их один за другим? Трафик, захваченный в файле, генерируется двумя программами на двух серверах, поэтому я не могу разделить файл с помощью фильтров tcpdump «host» или «port». Я также попробовал команду linux «split» :-), но не повезло. Wireshark не распознает формат.


45
2018-04-13 08:19


Источник


Насколько велика огромная? Это намного больше, чем доступная оперативная память? - pehrs
Немного поздно, но причина, по которой Wireshark не будет читать файлы, которые являются результатом split потому что split будет делить на точные границы байтов. Это, скорее всего, приведет к расколу пакета, который недействителен для некоторого содержимого файла. - Burhan Ali


Ответы:


Вы можете использовать tcpdump самостоятельно с параметрами -C, -r и -w

tcpdump -r old_file -w new_files -C 10

Параметр «-C» указывает размер файла, который нужно разбить. Например: в этом случае размер новых файлов будет составлять 10 миллионов байт.


66
2018-04-13 09:33



Прекрасно работает! Благодаря! - Jinghao Shi
Потрясающие. Большая помощь. Благодарю. - Brijesh Valera
Ты замечательный человек, Дэн. - lobi
Есть ли способ сделать это, не разрывая сеанс? (Предполагая, что один сеанс меньше аргумента ограничения размера). - spanishgum


Использовать editcap которая распространяется вместе с Wireshark.


18
2018-04-13 08:23



editpcap -c 1000 input.pcap output.pcap разделится input.pcap до захвата с максимальным количеством 1000 пакетов на захват. Результатом будет несколько файлов захвата, отформатированных как output_{index}_{timestamp}.pcap - blachniet
Спасибо, blachniet за пример! Но это просто editcap, а не editpcap, правильно? - lindhe


Лучшим и быстрым способом является использование SplitCap, который может разбивать большие файлы дампа пакетов на основе сеансов, например. Таким образом, вы получите каждый сеанс TCP в отдельном файле PCAP. SplitCap также может разделить пакеты на файлы pcap на основе IP-адресов.

Вы можете больше узнать о SplitCap в блоге Netresec: http://www.netresec.com/?page=Blog&month=2011-05&post=Split-or-filter-your-PCAP-files-with-SplitCap

Скачать SplitCap отсюда: http://www.netresec.com/?page=SplitCap

Удачи!


2
2018-05-10 17:29



Есть ли версии Linux? - ychaouche
Это хорошая программа, поэтому у нее нет возможности работать с файлами pcapng. - Guntram Blohm


Я знаю, что этот ответ немного запоздал, но он может служить и другим людям. Я нашел отличный инструмент для разбиения файлов pcap: PcapSplitter, Это часть PcapPlusPlus библиотека, что означает, что это кросс-платформенная (Win32, Linux и Mac OS), и она может разбивать файлы pcap на основе разных критериев, таких как размер файла (что вам кажется), а также соединение, IP-адрес клиента / сервера, порт сервера ( подобно протоколу), количество пакетов и т. д. Я нашел это очень полезным. Ссылка выше для исходного кода, но если вы не хотите / знаете, как скомпилировать, я создал скомпилированные двоичные файлы для нескольких платформ, с которыми я использовал этот инструмент. Я рекомендую этот инструмент очень

РЕДАКТИРОВАТЬ: по-видимому, была выпущена новая версия PcapPlusPlus и содержит бинарные файлы PcapSplitter для довольно многих платформ (Windows, Ubuntu 12.04 / 14.04, Mac OSX Mavericks / Yosemite / El Captian). Я думаю, что лучше использовать эти двоичные файлы, чем предыдущая ссылка. Вы можете найти его Вот


2
2017-07-08 21:45