Я захватил некоторые данные приложения в wirehark (сообщения FIX), и мне интересно, есть ли способ экспортировать только слой данных tcp каждого пакета в отдельный файл, по одной строке/строке для каждого пакета.Как я могу экспортировать данные tcp из некоторых пакетов, которые я захватил?
Я думал, что раньше существовала функция tcp.data, но это, похоже, не существует в версии wirehark, которую я использую (v1.10.1).
Я планировал добавить дополнительный столбец в настройках Wireshark и настроить его на «custom», а затем поместить tcp.data в поле. Затем экспортируем этот столбец в текстовый файл.
Заранее благодарим за любые идеи или предложения.
PS. другая идея, которую я имел, заключалась в том, чтобы написать сценарий для синтаксического анализа файла захвата и эффективно отрубить верхние заголовки перед данными уровня tcp, но это займет какое-то время - надеюсь, уже существует способ сделать это в самом проводе.
UPDATE 1: Расширение решения Исаака, я пришел со следующим, однако это на самом деле печатать весь сегмент TCP, а не только данные из внутри сегмента. Я также попробовал tcp.segment_data, но это также приводит к той же проблеме, в которой выдается больше, чем полезная нагрузка tcp. К сожалению, на данный момент лучший вариант выглядит как ручной анализ файла pcap. Кто-нибудь еще имеет какие-либо предложения, или, возможно, определить, что я ошибался в синтаксисе команды tshark?
tshark -r capture_chopped.pcap -c4 -2 -R "(tcp.len > 0)" -T fields -d tcp.port==2634,echo -e tcp.segment -w - > output.2
UPDATE 2 - Устранено: я обнаружил, что каждый вариант с tshark не предоставил всю информацию мне нужно, поэтому я пошел с созданием своего собственного сценария Perl выплывать в FIX строки сообщения из файла pcap. Скрипт Perl приведен ниже, если он полезен кому-либо еще в аналогичной ситуации с файлом PCAP.
Большое спасибо за это - однако это только вывод данных tcp как hex. Можно ли его модифицировать только для вывода данных tcp в двоичном формате? – sparco1500