Подтвердить что ты не робот

С# - захват сетевого трафика

Мне интересен захват сетевого трафика с определенного компьютера. Меня интересует только захват трафика с компьютера, на котором установлено мое приложение (например, Fiddler). Как и Fiddler, я хочу, в частности, захватить информацию, показанную в разделе "Веб-сеансы" (ID #, Http Status Code, Protocol, Host, Url, Body size, Content-Type и Process.

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

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

4b9b3361

Ответ 1

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

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

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

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

Ответ 2

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