tshark для фильтрации UDP-потоков

У меня есть сценарий, в котором у меня есть файл PCAP с большим фрагментом, содержащий разные потоки (которые совместно используют исходный IP-адрес и порт, целевой IP-адрес и источник и TCP/UDP).

Мне интересно, могу ли я использовать tshark для разделения этого большого файла pcap на разные потоки файлов pcap. каждый файл PCAP содержит один поток.

Я нашел этот код, но он работает для TCP-соединений

для потока в tshark -r ~/Downloads/http.cap -T fields -e tcp.stream | sort -n | uniq

do

эхо $поток

tshark -r ~/Downloads/http.cap -w stream-$stream.cap -R "tcp.stream==$stream"

Выполнено

Я ищу, как разделить UDP-соединения?

Большое спасибо за вашу помощь заранее. Майк


person user2013288    schedule 19.06.2013    source источник


Ответы (2)


SplitCap — ваш друг.
SplitCap — это программа для разделения файлов pcap с открытым исходным кодом. По умолчанию он разбивает pcap на несколько файлов на основе сеансов UDP и TCP. На выходе получается один файл за сеанс.
$ splitcap -r yourfile.pcap

Вы можете прочитать больше советов в моей статье о SplitCap и TShark

person Community    schedule 21.06.2013

Splitcap работает с использованием флага -y L7, но это также можно сделать с помощью tshark следующим образом:

tshark -r http.cap -T fields -e data | xxd -r -p > out.bin

Передача вывода tshark в xxd необходима, так как вывод tshark находится в шестнадцатеричном формате. И вы, вероятно, захотите отфильтровать по хосту (используя флаги -R или -Y) на tshark, чтобы получить непрерывный вывод данных.

person ruiseal    schedule 15.10.2013