C # - захват сетевого трафика - PullRequest
13 голосов
/ 16 января 2012

Я заинтересован в захвате сетевого трафика с определенного компьютера.Меня интересует только захват трафика с компьютера, на котором установлено мое приложение (например, Fiddler).Как и Fiddler, я хочу, в частности, захватить информацию, отображаемую в разделе «Веб-сеансы» (ID #, код статуса Http, протокол, хост, URL, размер тела, тип содержимого и процесс.

Пока яЯ очень хорошо знаю C #. Я понятия не имею, как на самом деле захватить сетевой трафик, как это. Может кто-нибудь, пожалуйста, укажите мне в каком-то направлении.

Большое вам спасибо!

Ответы [ 2 ]

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

ПРИМЕЧАНИЕ: Я не уверен на 100%, что вы ищете с точки зрения автономного приложения или чего-то, что нужно интегрировать в ваше приложение, но мой ответ предполагает, что вы ищете что-то, чтобы интегрировать в ваше приложение. Если нет, я удалю это.

Если вы ищете что-то, чтобы интегрировать в свое приложение то, что вы можете включить или отключить, вы должны взглянуть на FiddlerCore , который является основной функциональностью, которую использует Fiddler, но может быть интегрирован в автономные приложения .NET.

Вики FiddlerCore здесь , и она довольно хорошо описывает использование. Пример приложения также является хорошим описанием того, как использовать FiddlerCore.

Надеюсь, это поможет. Удачи!

1 голос
/ 16 января 2012

winpcap или одна из его оболочек .net - ваш лучший вариант. Это очень хорошо задокументировано. Если вы делаете это в моно, вам нужно будет использовать libpcap на машинах Unix. API идентичны.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...