Ladicí proxy oslepne, když se připojí firemní VPN
Ve vašem proxy se nic nezměnilo. Záznam tunelu nese vlastní nastavení, spravovaný PAC se může vrátit a někteří klienti systémové proxy vůbec nečtou.
Nástroj pro zachytávání funguje celé dopoledne, tunel se přihlásí a on ztichne. Odpojíte se a zase běží. První myšlenka je, že VPN rozbila proxy, ale v konfiguraci proxy se ve skutečnosti nic nezměnilo. Změnilo se to, kterou konfiguraci aplikace nyní čtou: záznam tunelu může nést vlastní nastavení proxy, spravovaný profil může znovu zapnout automatickou konfiguraci a některá běhová prostředí čtou jen část toho, co operační systém nabízí. Přečtěte si hodnotu pro konkrétní připojení, než sáhnete na globální.
Windows drží proxy pro každé připojení
V možnostech Internetu jsou dvě vrstvy, které v dialogu vypadají stejně. Nastavení místní sítě platí pro běžné místní připojení, zatímco záznam vytáčeného nebo VPN připojení drží vlastní kopii pod HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Connections, uloženou jako binární hodnotu. Zapsání známých globálních hodnot registru tuto kopii neaktualizuje.
Přesně tak se nástroj chová správně před připojením a špatně po něm, aniž by se v jeho nastavení něco viditelně změnilo. Dialog, na který jste zírali, byl panel místní sítě. Byl správný a byl nepodstatný. Záznam, který Windows skutečně použil, byl ten vytvořený pro tunel.
Podporovaný způsob, jak změnit jeden záznam, je API voleb připojení WinINET: naplňte INTERNET_PER_CONN_OPTION_LIST názvem připojení, příznaky, proxy serverem a seznamem výjimek, použijte ho a pak obnovte. Pro rychlou kontrolu otevřete vlastní dialog nastavení záznamu tunelu a porovnejte jeho panel proxy s panelem místní sítě; rozdíl je obvykle zřejmý, jakmile víte, kam se dívat.
Spravovaný PAC se může sám znovu zapnout
V macOS jsou skript automatické konfigurace proxy a automatické zjišťování proxy vlastnostmi síťové služby, ne stroje. Konfigurační profil je může vyžadovat, takže se po odškrtnutí znovu objeví a každý požadavek pak jde na proxy, kterou vybere skript.
Prohlédněte to a, pokud k tomu máte oprávnění, vypněte tyto dva přepínače pro službu, která nese provoz:
networksetup -setautoproxystate "Wi-Fi" off
networksetup -setproxyautodiscovery "Wi-Fi" off
scutil --proxy
Použijte skutečný název služby, ne odhad. Notebook s Wi-Fi i USB Ethernet adaptérem má dvě takové a jen jedna nese váš provoz. scutil --proxy vypíše hodnoty pro aktuální primární službu. Porovnejte tento výstup s tím, co jste upravili, než usoudíte, že profil vyhrál.
Namiřte nástroj na skutečný nadřazený server
Pokud skript obsahuje firemní proxy, přečtěte ho a zadejte stejnou adresu jako externí proxy uvnitř nástroje pro zachytávání. Nástroj pak předává skutečnému nadřazenému serveru, což firemní proxy očekává, a zůstává v cestě požadavku, místo aby bojoval s politikou.
To je krok, který vás udrží u ladění, a ne u přenastavování.
Natlačte proxy do tunelu
Klient založený na OpenVPN může přijmout volby proxy, které platí po navázání tunelu, což je pohodlné, když klient vlastní trasy:
dhcp-option HTTPPROXY 127.0.0.1:8888
dhcp-option HTTPSPROXY 127.0.0.1:8888
Použijí je jen klienti, kteří tu volbu respektují, a ta natvrdo zapisuje váš port pro naslouchání do profilu. Berte to jako laboratorní vymoženost, ne jako standard nasazení, protože příští rozeslání profilu ji odstraní.
Někteří klienti nikdy nečtou systémovou proxy
Firefox drží vlastní nastavení proxy, a proto někdy zachytává dál, když prohlížeč se systémovou proxy ne. Starší klient .NET, který nerozumí automatické konfiguraci, se připojuje přímo, ať běží kdekoli, takže stránka načtená přes záznam tunelu může uvnitř aplikace stejně selhat.
Síťové nástroje mají také své příčiny. FTP relace, která visí přes tunel nebo tethering z telefonu, je často problém aktivního proti pasivnímu režimu, o kterém vyjednává klient, a žádné nastavení proxy to nezmění.
Čtěte konfiguraci, ne přepínač
Pracujte v tomto pořadí: vlastní hodnota proxy záznamu tunelu, stav PAC a automatického zjišťování pro službu, pak vlastní zpracování proxy v aplikaci. Zastavte se u prvního, které se liší od vašeho předpokladu.
Každý případ je tu problémem priority konfigurace. Ani jeden není tunel, který vám ničí nástroj.