Re: Why do 3 completely different proxy mechanisms exist in Windows?
Marion <[email protected]>
| Newsgroups | alt.comp.os.windows-10,alt.comp.os.windows-11,alt.comp.microsoft.windows |
|---|---|
| Organization | BWH Usenet Archive (https://usenet.blueworldhosting.com) |
| Message-ID | <[email protected]> |
When I started this thread, oh, about a month ago, I didn't have any experience with PAC (proxy auto config) files on Windows. Now I do. It turns out, after I wrote a complete Windows system proxy utility, that the question I had oh so innocently asked on 9/11 was confusing to all. It turns out, after I wrote and tested a few tutorials for using proxies with and without PAC files, that Windows has two built-in proxy mechanisms. 1. WinINET 2. WinHTTP I'm indebted to Andy Burns for cluing me into PAC files a month ago because WinINET and WinHTTP are global "all or nothing" proxy mechanisms, whereas the PAC file mechanisms (proxy auto config) allow you to decide, per request, per app (such as FF) whether to go direct or thru the proxy. In addition, since a month ago when I knew nothing about proxies, I've written tutorials on using proxifiers (such as ProxyBridge which Allan Higdon kindly clued me into) which allow you to choose binaries to proxy. Some apps (like Firefox) can load a PAC file directly. Others can use it if you serve it via HTTP and point Windowsβ system proxy settings at it. For serving the PAC file, I've written tutorials in the past month using the free lightweight "mongoose" file server, launched with a vbs script. I've also written tutorials in the past month on how to use the Tor & Psiphon & Freegate free ad-free no-registration proxies for your use. With these methods, we can fine tune which traffic is tunneled thru the proxy, which stays local, and even chain multiple proxies if needed. In summary, in the past month since I asked this innocent question, I've learned that Windows already has two built-in proxy systems: 1. WinINET (used by user-facing apps like Internet Explorer, Edge, Office, and anything that says "Use system proxy settings"). 2. WinHTTP (used by background services and scripts). Both let us set a proxy, but they're blunt tools where it's either everything through the proxy or nothing. As Andy had suggested to me, a PAC file is smarter. It's just a tiny JavaScript function that runs for every web request and decides: should this go direct, or through the proxy? That means we can tunnel most of our traffic through Psiphon or Tor (or any SOCKS/HTTPS proxy) while letting sensitive or local sites bypass it automatically. Instead of flipping proxy settings on and off, the PAC file acts like a traffic cop, routing each request down the right road. In a nutshell, I think that's the answer to the question originally asked. -- Helping others & learning from them is what this Usenet ng is all about.