当 Internet Explorer 设置为自动检测代理设置时,有没有办法查看它检测到的内容?
答案1
设置取自http://wpad/wpad.dat这是一个 javascript 文件,描述了在什么情况下应该使用哪个代理服务器。最好的办法是打开该 URL 并从其返回的内容中找出代理。
答案2
如果http://wpad/wpad.dat
不可用,您可以通过浏览网站然后检查建立的 TCP 连接来推断正在使用哪些代理。这不是很好,但至少有一点用处。
netstat -an | find "EST"
检查(“ ”的缩写)的输出ESTABLISHED
。访问一个新网站(您最近没有访问过的网站)。
再次运行该
netstat
命令,查找新的连接。它可能看起来像:TCP 192.168.1.1:1989 192.168.1.88:8080 ESTABLISHED
在此示例中,您的代理的 IP 是 ,192.168.1.88
并且它正在监听端口8080
。
注意此方法仅显示代理现在正在使用为了这种联系。如果您的环境中配置了多个代理,并且您想要了解所有代理,则可能需要定期重复上述过程以获取完整列表。
可以在非Windows机器上使用相同的过程(使用netstat -an | grep EST
,或任何您的操作系统用来显示活动连接的方法)。
答案3
我尝试了上述两种解决方案,并且各种其他。
最终对我有用的是使用 Chrome 导航至:
chrome://net-internals/#proxy
它给了我一个.pac
文件(=代理自动配置文件),然后我可以下载并阅读该文件以确定所选择的代理。
=== 附录 ===
正如@DaveInCaz 和@ZachBloomquist 指出的那样,从 Chrome 71 开始不再有效。
所以我做的是:
- 找到 Chrome 的旧版本,结果显示70.0.3538。
- 看看这个在https://omahaproxy.appspot.com,得到版本 587811。
- 找到该版本铬在快照页面。该版本似乎存在于Windows 64 位版本页面,这让我想到587811版本页面使用文件
chrome-win32.zip
。 - 下载、解压、运行
chrome.exe
,然后您就可以再次使用该地址chrome://net-internals/#proxy
找到 PAC 脚本!
总结一下所需的步骤:
- 下载 Chromium 版本 70.0.3538 = build 587811这里(对于 Windows,否则请参见上述步骤)。
- 解压并运行
chrome.exe
- 导航
chrome://net-internals/#proxy
答案4
netstat
技术先前的答案已针对 Powershell 版本 5.1.17763.1007 (Windows 10) 进行更新:
netstat -an | find --% "EST"
对于 Powershell 3.0 及更新版本来说,这--%
是新的,“逐字论据“使用停止解析符号的参数。 有关“查找错误”的详细信息请点击此处。