如何从命令行更改系统代理?

如何从命令行更改系统代理?

如果我必须访问互联网,我必须连接到我的大学代理,而且我的大学有两个代理。

现在,有时其中一个代理会被流量淹没,所以我们会切换到另一个代理,现在我想知道我是否可以编写批处理脚本或 python 文件并为其分配键盘快捷键,以便快速切换!

答案1

您应该能够使用以下方式设置代理netsh

netsh winhttp set proxy myproxy
netsh winhttp set proxy myproxy:80 "<local>;bar"
netsh winhttp set proxy proxy-server="http=myproxy;https=sproxy:88" bypass-list="*.foo.com"

这些是来自的示例netsh winhttp set proxy help。并非所有应用程序都使用 WinHTTP 代理设置。最好使用中概述的解决方案zelanix 答案然后只需将 IE 设置导入 WinHTTP 即可:

netsh winhttp import proxy source=ie

答案2

代理配置比较棘手,因为它通常在每个应用程序中单独配置。但是,许多应用程序使用 Internet Explorer 设置作为默认设置,并且可以通过注册表进行设置,详情如下这里(Microsoft 支持)。您可以为每个代理创建一个 .reg 文件,然后双击它以应用设置,或者创建一个简单的批处理脚本来导入它。

注册表文件具有以下格式:

Regedit4

[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings]
"MigrateProxy"=dword:00000001
"ProxyEnable"=dword:00000001
"ProxyHttp1.1"=dword:00000000
"ProxyServer"="http://ProxyServername:80"
"ProxyOverride"="<local>"

或者依次配置每个代理,然后浏览HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings并导出相关设置。

当然,这个配置也可以被包装在任何其他能够写入注册表的东西(VBScript 或其他)中。

答案3

可以使用网络管理员Windows 7 中的命令。

相关内容