Как добавить комментарий ко всем пакетам в многочисленных файлах pcap перед объединением в один файл
Я пытаюсь объединить многочисленные файлы pcap вместе для последующей обработки после захвата, однако мне нужно сохранить информацию об исходном файле каждого пакета (имя файла содержит информацию об источнике сетевого подключения). Эта информация не доступна в самих пакетах. Моя идея состоит в том, чтобы использовать удобство pcapng, которое позволяет добавлять к пакету комментарий кадра (frame.comment), и это можно сделать программно с помощью editcap. Я мог бы использовать это, чтобы добавить информацию из имени файла в каждый пакет, который будет перенесен в объединенный файл. Однако кажется, что editcap позволяет добавлять комментарии только к определенным фреймам.editcap -a <framenumber>:<comment>
но не ряд кадров. Выполнение этого вручную нецелесообразно, поскольку я имею дело с большим количеством больших файлов pcap. Идеи?
1 ответ
Это рекурсивно сохранит имя файла в качестве комментария к каждому пакету в каждом pcap. Если вам нужно сделать это только с одним файлом, удалите внешний цикл for.
for f in $(find *.pcap); do
num_frames=$(capinfos -rcT "$f" | awk '{ print $NF }')
for i in $(seq 1 $num_frames); do
editcap "$f" "$f" -a "$i:$f"
done
done
find *.pcap
рекурсивно найдет все файлы типа pcap в этом каталогеcapinfos
- это инструмент интерфейса командной строки wirehark, такой как wirehark, который предоставляет информацию о захватах
Обратите внимание, что вместо этого вы можете динамически включать какой-либо другой комментарий, например отметку времени.