Назад | Перейти на главную страницу

Подсчет количества подключений в файле pcap

Какой инструмент я могу использовать для подсчета количества TCP- и UDP-соединений внутри файла pcap?

Wireshark это можно сделать через Статистика → Беседы. TShark могу сделать это через -q -z conv,tcp -r /path/to/capture.pcap и -q -z conv,udp -r /path/to/capture.pcap. Ntop должен уметь это делать.

Для TCP-соединений вы можете получить довольно хорошее приближение, посчитав SYN-ACK пакеты.

tcpdump -nr trace.pcap 'tcp[tcpflags] & (tcp-syn|tcp-ack) = (tcp-syn|tcp-ack)' | wc -l

Для UDP не существует такого понятия, как соединение, поэтому сначала вам нужно определить, что вы хотите считать. Вы можете подсчитать, сколько различных пар источника и назначения присутствует в файле. Эта команда будет подсчитывать пакеты в каждом направлении отдельно, поэтому, если каждое «соединение» отправляет пакеты в обоих направлениях, вам придется разделить их на два.

tcpdump -nr trace.pcap 'udp' | cut -f2-5 -d' ' | sort -u | wc -l

Если вы предпочитаете инструмент на основе графического интерфейса, Wireshark может анализировать TCP-соединения. Он присваивает номер каждому TCP-соединению, которое он находит в файле, поэтому вы можете просто прокрутить файл до конца и посмотреть, какой номер был присвоен последнему соединению. (Возможно, вам придется проверить несколько соединений, если они перекрываются и какое-то другое соединение продолжается после последнего пакета из соединения с самым высоким номером.)