Захоплення пакетів інтерфейсу в режимі реального часу для захоплення в Windows за допомогою програми RawCap, Wireshark та деякої утиліти


4

Після наткнення на інший пост Super User про захоплення пакетних пакетів у Windows, мене направили на RawCap , утиліту, яка забезпечує псевдозйомку пакетів з петлею . RawCap записує у файли libpcap, які може прочитати Wireshark. Це відмінно підходить для зйомки та відображення захоплених даних, але у мене є випадок використання, де я хотів би переглянути ці пакети, зняті в режимі реального часу.

Wireshark підтримує потокові пакети з STDIN , але RawCap не підтримує спрямування свого виводу на STDOUT. Він може записувати лише у файл. RawCap підтримує можливість відключення буферизації, записуючи кожен пакет у файл у міру введення.

Чи є якась третя утиліта, яку я можу використовувати, подібно до tailтієї, яка видаватиме вміст файлу, як він записується під вікнами, тож я можу передавати з файлу захоплення RawCap в Wireshark в режимі реального часу?

RawCap -> Intermediate File -> Tail-Like Utility for Binary -> Wireshark STDIN

що ти маєш на увазі під схожим на хвіст? чи допомагає ця команда? tee en.wikipedia.org/wiki/Tee_(command)
барлоп

до речі, чи показує дротик навіть у режимі реального часу? Я намагався досягти цього, коли це було ефірним років тому, і це не сталося. і немає нічого про це тут ask.wireshark.org/questions/4052 / ... ах я бачу wiki.wireshark.org/CaptureSetup/Pipes
barlop

@barlop Дивно ... Ефірна для мене завжди відображалася в режимі реального часу. Трійник не допомагає, оскільки RawCap не пише в STDOUT. Якби це сталося, я міг би просто передати його прямо Wireshark. Мені потрібен якийсь інструмент, який може читати з файлу, як він записується, і надсилати дані в Wireshark. Якщо Windows підтримує названі труби, я б просто пішов цим маршрутом.
Бред

Відповіді:


8

Виявляється, я фактично можу просто використовувати tailдля цього. Це не ідеально, оскільки він, ймовірно, шукає \nдані перед виведенням, але є достатньо даних у захопленнях пакетів, щоб зробити цю роботу здачею. Ось що я зробив:

  1. Встановіть UnixUtilities, щоб отримати порт хвоста для Win32.
  2. Встановіть RawCap
  3. Встановіть Wireshark
  4. rawcap -f 127.0.0.1 localhost.pcap
  5. tail -c +1 -f localhost.pcap | wireshark -k -i -

Оскільки RawCap потребує вашого початкового терміналу, вам потрібно буде запустити другий для хвоста. Крім того, явно підміняйте будь-які потрібні вам шляхи.

Трохи хак, але це працює! Я можу лише сподіватися, що Wireshark включить обстріл RawCap як більш прямий метод у майбутньому випуску.


-1

Дайте більш повну відповідь, ніж моя, показуючи, як Wireshark показує пакети в режимі реального часу, але команда, яку, можливо, ви шукаєте, - tee .

$ ls -l | tee file.txt | head -n 1

... скидає на екран, зберігає як файл і передає те, що скидається на екран до голови.


Це не допоможе мені. Вся проблема полягає в тому, що RawCap не підтримує запис у STDOUT і не може бути переданий у Wireshark. RawCap записує лише у файли, тому мені потрібен певний спосіб перетікати з цього файлу, поки він записується, в STDIN на Wireshark.
Бред
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.