Скрипач и захват трафика, который идет через ICS
Основная проблема:
Как заставить Fiddler захватывать трафик, поступающий через сетевой адаптер, который использует ICS (Internet Connection Sharing) для доступа в Интернет.
Фон:
ОС Windows 8.1 Update 1 x64
У меня есть компьютер с 2 сетевыми картами. NIC1 подключен к моему маршрутизатору и имеет доступ в Интернет. NIC2 подключен к другому WiFi-маршрутизатору, к которому будут подключаться дополнительные устройства, такие как интеллектуальные устройства, не поддерживающие прокси-сервер. Маршрутизатор устройства - это маршрутизатор на базе Linux.
NIC1 использует ICS для обмена доступом в Интернет к NIC2.
Я вижу информацию, поступающую через WireShark, а сами устройства подключаются к Интернету через ICS.
Fiddler, похоже, не воспринимает трафик, который идет через NIC2.
Fiddler перехватывает запросы от моего браузера к пользовательскому интерфейсу веб-сервера, который работает на маршрутизаторе, подключенном к NIC2, и любой трафик, исходящий с моего компьютера, исходящий.
Что я пробовал
Я попытался с помощью команды NETSH winhttp set proxy 127.0.0.1:8888 установить глобальный прокси winhttp для маршрутизации через Fiddler, но это, похоже, не работает
Я также попробовал переадресацию портов на стороне Windows с помощью интерфейса порта proxy NETSH, прослушивания IP-адреса NIC2 и порта 80 и переадресации на IP-адрес NIC1 и порт 8888, но это не сработало.
Я попытался выполнить переадресацию портов на маршрутизаторе устройства для переадресации портов с помощью iptables, но, если честно, я не до конца понимаю, как это работает.
Команды, которые я выполнил
iptables -t nat -A ПРЕДУПРЕЖДЕНИЕ -p tcp --dport 80 -j НАПРАВЛЕНО --to-port 8888
Любые идеи и комментарии приветствуются
2 ответа
Fiddler не является инструментом захвата пакетов; он показывает трафик, который отправляется на него, а не трафик, который просто проходит через ПК.
Клиентские устройства должны быть настроены так, чтобы их трафик передавался по IP-адресу ПК, на котором работает Fiddler, через порт 8888.
Установка прокси WinHTTP на машине, работающей с Fiddler, не поможет, и, как правило, попытка использовать переадресацию портов, чтобы заставить Fiddler действовать как прозрачный прокси, не будет надежной.
Если вам нужно только увидеть трафик, но вам не нужно его изменять, просто возьмите PCAP трафика и импортируйте его, используя команду Fiddler File > Import.
У меня та же проблема.
Некоторые браузеры Android, кажется, не отправляет запрос через прокси системы Android. Мой miuibrowser просто игнорирует системный прокси.
Похоже, что Fiddler может захватывать трафик порта 8888, если включен параметр "Разрешить подключение к удаленному компьютеру".
После поиска в Google один из рабочих способов - перенаправить трафик с порта 80 маршрутизатора на порт 8888 моего компьютера, чтобы скрипач мог захватывать. И телефон может подключиться к Wi-Fi роутера без каких-либо настроек прокси.
Ниже приведена команда:
iptables -t nat -I PREROUTING -p tcp --dport 80 -j DNAT --to 192.168.137.1:8888
Я использую помидор dual-wan router, и команда немного отличается.