Как я могу открыть файл pcap-ng в C # - PullRequest
4 голосов
/ 23 января 2012

До сих пор я использовал WinPcap для открытия файлов pcap в C #:

[DllImport("wpcap.dll", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
private extern static IntPtr pcap_open_offline(string fname, byte[] errbuf);

Теперь я хочу сделать что-то похожее на открытие файлов pcap-ng, чтобы получить разрешение с точностью до наносекунды (я получил новый сниффер :-))

К сожалению, WinPcap завершается с ошибкой: «неверный формат файла дампа»

Кто-нибудь знает, как работать с pcap-ng в Windows?

Ура, Pedro

Ответы [ 3 ]

6 голосов
/ 24 января 2012

Libpcap 1.1.x и более поздние версии поддерживают чтение некоторых файлов pcap-ng (файлов, в которых все интерфейсы имеют одинаковый тип заголовка канального уровня и длину снимка);тем не менее, не существует выпуска WinPcap, основанного на libpcap 1.1.x или 1.2.x, поэтому не существует выпуска WinPcap, который может читать файлы pcap-ng.Таким образом, никакая оболочка на языке CLR вокруг WinPcap не сможет читать файлы pcap-ng до тех пор, пока не выйдет такой релиз WinPcap.

Кроме того, libpcap / WinPcap API в настоящее время не возвращает отметки времени с наносекундным разрешениемтак что даже если вы прочитали файл с меткой времени с наносекундным разрешением с помощью libpcap, вы не увидели бы метки времени с наносекундным разрешением.

На данный момент вам придется написать собственный код или написатьобертка вокруг библиотеки Wireshp.(Обратите внимание, что API-интерфейс Wiretap подвержен значительным и несовместимым изменениям с одного основного выпуска Wireshark на другой.)

3 голосов
/ 16 мая 2015

Я портировал WinPcap в libpcap 1.7.3 , и теперь он может открывать файлы pcap-ng и поддерживает разрешение временных меток наносекунд.

0 голосов
/ 23 января 2012

Вы пробовали использовать sharpPcap?не уверен, поддерживает ли он это (не могу попробовать прямо сейчас), но он также поддерживает открытие файлов захвата iirc: http://sourceforge.net/apps/mediawiki/sharppcap/index.php?title=Main_Page

...