Windows系统代理和WinHTTP代理有什么区别?命令行不生效的原因

浏览器、系统服务和命令行程序可能读取不同配置
发布于
12

Windows设置里打开代理,Edge查询出口已经变化,PowerShell脚本、Windows Update或后台服务却还是直连。问题往往不是代理节点,而是这些程序读取的代理配置并不相同。

三套常见来源

配置来源 常见使用者
用户系统代理 浏览器及部分桌面应用
WinHTTP代理 部分系统组件、服务和程序
应用自带设置/环境变量 curl、Git、开发工具等

先看WinHTTP当前状态

netsh winhttp show proxy

显示“Direct access”只说明WinHTTP没有设置代理,不代表浏览器系统代理没开。不要在不清楚影响范围时直接导入或重置,企业电脑还可能由组策略管理。

命令行工具要看自己的文档

很多工具支持 HTTP_PROXY、HTTPS_PROXY 或命令行参数,也有工具维护独立配置。Git、包管理器和脚本运行环境的行为并不完全一致。先用该程序的调试输出确认实际连接,再决定改哪一层。

一个安全的排查顺序

  1. 浏览器确认系统代理是否生效;
  2. 运行 netsh winhttp show proxy 只读检查;
  3. 查看目标程序官方代理说明;
  4. 核对IPv4、IPv6和DNS是否被覆盖;
  5. 记录修改,准备恢复直连的方法。

需要让指定Windows程序使用SOCKS5时,可评估Proxifier等按程序规则工具,但应在合法授权环境中使用并核对软件来源。不要为了“全局”而同时修改多套配置。

本文由作者原创/授权发布于极跃圈(jiyueip.com),未经许可,禁止转载。题图来自Unsplash,基于CC0协议。

声明:极跃圈(JIYUEIP.com)内网友所发表的所有内容及言论仅代表其本人,并不反映任何极跃圈(JIYUEIP.com)之意见及观点。

0 / 600
0 讨论
热门最新
总结
暂无总结

暂无数据