Sniffer для локального хоста (ОС Windows)

Я ищу сниффер, который может работать с адресом обратной связи в Windows.

До сих пор я нашел Microsoft Network Monitor, который является хорошим инструментом, но для localhost он бесполезен, потому что в Windows пакеты localhost не проходят через обычный сетевой стек, поэтому они невидимы для анализатора Ethernet, такого как MS Network Monitor.

Как вы отлаживаете приложения, которые отправляют данные в петлевом механизме? Любые хорошие (с открытым исходным кодом) снифферы, которые могут работать с localhost?

ОБНОВЛЕНИЕ: Если у вас есть опыт работы с инструментом, было бы неплохо иметь краткое описание для дальнейшего использования

5 ответов

Решение

Я столкнулся с этой проблемой и ничего не получил после долгих исследований. В основном все доступные снифферы полагаются на стек сетевых драйверов, и Windows не предоставляет через него вызовы локального хоста.

В конечном итоге я использовал инструмент SocketSniffer, который просматривает вызовы Winsock и отслеживает соединения через сокеты TCP, UDP. Это помогло мне отладить проблему приложения, которая возникала только в win 2k3.

Его сайт загрузки находится по адресу http://www.nirsoft.net/utils/socket_sniffer.html

Обратите внимание, что это больше не работает в Windows 8. Теперь Microsoft Message Analyzer способен анализировать петлевой трафик из коробки. Официальное сообщение в блоге здесь: http://blogs.msdn.com/b/winsdk/archive/2014/08/15/rejoice-we-can-now-capture-loopback-traffic.aspx

Для Windows доступен новый инструмент, который может захватывать сетевой трафик loopback / localhost. Он называется RawCap и доступен здесь: http://www.netresec.com/?page=RawCap

Просто запустите RawCap следующим образом, чтобы прослушать интерфейс обратной связи: RawCap.exe 127.0.0.1 localhost.pcap

Затем вы можете открыть localhost.pcap в Wireshark или любом другом анализаторе pcap для просмотра захваченного трафика.

Btw. RawCap не только способен прослушивать петлевой трафик в Windows, но также может анализировать ваш интерфейс WiFi, а также интерфейсы PPP, такие как соединения 3G/UMTS.

Я полагаю, что вы можете сделать http://localhost/ (обратите внимание на точку в конце), чтобы заставить пакеты localhost через обычный сетевой стек.

Это работает для того, чтобы http был распознан таким инструментом, как fiddler - не уверен насчет других протоколов.

У меня возникла такая проблема, когда я хочу отслеживать трафик на localhost после настройки на нем SelfSSL. После поиска других полезных инструментов я обнаружил, что fidllre как-то подходит для моей проблемы, вы должны попробовать этот Fiddler для Http и Https

Надеюсь, это поможет вам!

Я бы порекомендовал Wireshark, он может подключаться к любому сетевому устройству и предлагает несколько полезных утилит для анализа трафика, плюс это бесплатное программное обеспечение.

Другие вопросы по тегам