先判断是整机断网,还是某个应用断网

如果浏览器提示 ERR_PROXY_CONNECTION_FAILED,但其他应用仍能联网,优先检查系统代理或浏览器扩展。如果所有软件都失败,要同时考虑 TUN、VPN、网络过滤器和本地网络。只有某个终端命令失败时,还可能是终端环境变量,它与“系统设置”里的代理不是同一份配置。

先把客户端重新打开,在软件里关闭系统代理和 TUN,再正常退出。很多程序的关闭窗口按钮只是把应用留在菜单栏,不代表已经停止内核。如果这样恢复,继续检查启动项和退出行为,不必急着卸载重装。

第一步:查看当前网络服务的代理

  1. 打开“系统设置 → 网络”,选择实际联网的 Wi-Fi 或以太网,进入“详细信息 → 代理”。较旧 macOS 的界面名称可能不同,可以在设置里搜索“代理”。
  2. 先截图保存当前选项与地址;不要把含账号或内网地址的截图公开。分别检查网页代理 HTTP、安全网页代理 HTTPS、SOCKS、自动代理配置和自动代理发现。
  3. 如果某项指向已退出客户端的 127.0.0.1 和本地端口,或它创建的本地 PAC 地址,确认不再使用后关闭该项并保存。工作或学校下发的代理要先向管理员确认。

不要只关闭 HTTP 而漏掉 HTTPS 或 SOCKS。也不要把所有代理都打开:它们是不同的连接方式。Wi-Fi 与 USB 网卡、扩展坞以太网各有自己的设置,只修一个网络服务后换接口仍可能复发。

第二步:用只读命令确认残留

macOS 终端;以下命令不修改设置
scutil --proxy
networksetup -listallnetworkservices
networksetup -getwebproxy "Wi-Fi"
networksetup -getsecurewebproxy "Wi-Fi"
networksetup -getsocksfirewallproxy "Wi-Fi"
networksetup -getautoproxyurl "Wi-Fi"

先用第二条命令查看服务名称,如果你的网络服务不叫 Wi-Fi,后续命令就替换成真实名称。查看 Enabled、端口和 PAC URL,不要照抄别人电脑的值。scutil --proxy 是当前代理状态的一份线索,多网络服务或管理配置下还应回到界面核对。

看到 127.0.0.1:7890 并不代表错误:客户端正在提供这个端口时它是正常配置。错误通常是系统继续指向这个端口,而进程已经退出或端口换了。先确认监听是否存在,而不是看到本地地址就删除。

示例:确认 7890 是否仍有进程监听;端口按实际值替换
lsof -nP -iTCP:7890 -sTCP:LISTEN

第三步:系统代理关闭仍失败,检查其他接管层

在系统设置中搜索 VPN、过滤器或描述文件,查看是否有另一款 VPN、过滤软件或由组织管理的网络配置。它们可能独立于当前代理客户端工作。每次只停用一个自己安装的相关功能,再重试;不要批量移除未知描述文件或网络扩展。

浏览器里若装过切换代理的扩展,应记录规则后临时停用,排除它覆盖系统设置的可能。终端可以只读查看当前会话的代理变量;如果变量内有用户名或密码,别把输出贴到群里。

查看当前终端的代理环境变量
env | grep -iE '^(http|https|all|no)_proxy='

若仅当前终端有问题,先在新终端窗口复测。如果每个新窗口都有相同变量,再检查自己曾编辑的 shell 配置文件;只移除确认由旧工具添加的行,保留其他内容。不要用一条删除命令覆盖整个 .zshrc。

第四步:把网络和客户端分开验证

TUN、VPN 已关闭时,测试不使用 curl 显式代理的请求
curl --noproxy '*' --connect-timeout 8 --max-time 20 -I https://example.com

如果此命令能收到 HTTP 响应,浏览器仍报代理错误,继续查浏览器扩展和代理配置。如果命令也不能解析域名,换手机热点做一次对照,并查看 DNS;这时反复清理浏览器缓存通常没有针对性。--noproxy 不会绕过仍开启的 VPN、TUN 或网络网关。

怎样确认已经修复,并防止再次出现

  1. 退出客户端后,直连网站、浏览器和常用软件都正常;再次启动客户端也能正常代理。
  2. 切换一次 Wi-Fi 与常用以太网服务,确认两份设置都没有不需要的残留。
  3. 检查登录项里是否有两个代理客户端同时启动。保留一个负责系统代理的程序,避免它们互相覆盖。
  4. 恢复为你原先需要的 PAC、企业代理和过滤器设置;只撤销已经确认属于旧客户端的内容。

网络重置、删除系统配置文件和卸载全部网络扩展都不应作为第一步。若受管理的配置自动重新出现,把只读检查结果交给管理员,比反复删除更有用。