Я запускаю tcpdump следующим образом:

$ sudo tcpdump -i eth0 -w dump.pcap host 1.2.3.4
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes

Есть ли способ узнать, сколько пакетов он уже захватил? Судя по всему, BSD допускает сигнал состояния, но я нахожусь на Linux.

2 ответа2

1

Вы, вероятно, ищете опцию -v tcpdump . От человека tcpdump:

   -v     ...
          When writing to a file with  the  -w  option,  report,   
          every 10 seconds, the number of packets captured.

Образец вывода:

$ tcpdump -v -i eth0 -w dump.pcap
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 262144 bytes
Got 227

Обратите внимание, что вопреки тому, что написано на странице руководства, "Got X" обновляется каждую секунду на машинах, которые я мог протестировать (используя tcpdump 4.9.2).

0

Вы можете заставить tcpdump печатать вывод на stdout и направлять его в tee . Таким образом, вы можете сохранить вывод в файл и распечатать его на стандартный stdout . Если у вас есть это, вы можете использовать pv/grep/tail или что-то подобное для отслеживания прогресса

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .