先确认是否属于回环访问受限
浏览器可以通过 Clash 打开网页,Microsoft Store 却一直加载或报告网络错误,常见原因之一是应用无法连接本机代理。Windows 10、Windows 11 中,受 AppContainer 网络隔离约束的应用,默认不能像普通桌面程序一样访问本机回环服务。系统代理即使写入了 127.0.0.1,也不代表该应用已经获得访问权限。
这里的“回环”是应用访问同一台电脑上的服务,例如 127.0.0.1:7890。回环豁免只放开指定应用包的这项限制,不负责启动 Clash、不负责选择节点,也不会替应用设置代理地址。
操作前先完成三个检查
- 确认客户端可用:启用一份有效配置,选择可用策略,打开系统代理,再用浏览器访问目标服务。浏览器也失败时,应先处理配置、节点或网络问题。
- 确认本地入口:查看客户端的“端口”或“混合端口”设置。本文用
7890举例,实际值可能不同;HTTP 代理应指向 HTTP 端口或兼容 HTTP 的混合端口,不能误填仅提供 SOCKS 的端口。 - 建立单一测试条件:先使用系统代理测试,暂时关闭其他 VPN、代理客户端;若 TUN 已开启,可暂时关闭以区分流量路径。企业设备不要擅自更改组织要求的网络设置。
Windows 11 可在「设置」→「网络和 Internet」→「代理」→「使用代理服务器」→「编辑」核对地址与端口;Windows 10 对应「设置」→「网络和 Internet」→「代理」中的手动代理设置。由客户端自动管理时,优先在客户端修正端口,避免下一次切换开关又被覆盖。
方法一:使用客户端内置 UWP 工具
部分 Windows Clash 图形客户端提供应用回环管理入口,常见名称是“UWP 回环豁免”“UWP 工具”或“Loopback”。它是界面层提供的辅助功能,不是 Clash 或 mihomo 内核中一个通用的 YAML 开关。不同客户端、不同版本的入口可能不同,没有该按钮也可以使用下文的系统命令。
- 打开客户端的「设置」,寻找带有“UWP”或“回环豁免”的工具入口。旧版 Clash for Windows 曾在「General」→「UWP Loopback」中提供「Launch」按钮;这只是旧界面的定位参考,不要求为此安装旧客户端。
- 启动工具时,核对 Windows 用户账户控制提示,允许其以管理员权限修改回环列表。如果账户没有相应权限,需要设备管理员协助。
- 在应用列表里找到 Microsoft Store,仅勾选本次需要排查的应用。若工具提供保存按钮,点击「Save Changes」或对应的“保存更改”,而不是只勾选后关闭窗口。
- 完全退出目标应用再重新打开,重复刚才失败的操作。若应用仍在后台运行,可通过任务管理器结束确认属于该应用的进程后重试。
不建议为了省事直接选择全部应用。豁免会允许被选应用连接本地服务,范围应与实际需要一致。工具列表不显示目标应用时,先确认它安装在当前 Windows 用户下,再通过 PowerShell 查询包标识;不要凭显示名称猜一个包名填入。
方法二:用 CheckNetIsolation 添加豁免
CheckNetIsolation.exe 是 Windows 自带的网络隔离管理工具,无需额外安装。以下命令在管理员 PowerShell 或 Windows 终端的 PowerShell 标签页执行。先查看、再添加、最后复查,方便确认改动是否真正生效。
1. 查询当前用户安装的应用包
右键开始按钮,选择「终端(管理员)」或「Windows PowerShell(管理员)」。输入以下命令,查找 Microsoft Store 的包族名称:
Get-AppxPackage -Name Microsoft.WindowsStore |
Select-Object Name, PackageFamilyName
标准 Microsoft Store 包通常返回 Microsoft.WindowsStore_8wekyb3d8bbwe。应使用查询到的 PackageFamilyName,不要使用包含版本号和架构的 PackageFullName。包族名称用于标识这个应用家族,不需要随着每次应用版本升级手动改写。
查找其他应用时,可以先列出当前用户的包,再按名称识别:
Get-AppxPackage |
Sort-Object Name |
Select-Object Name, PackageFamilyName
2. 查看现有列表并添加 Microsoft Store
CheckNetIsolation.exe LoopbackExempt -s
CheckNetIsolation.exe LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"
CheckNetIsolation.exe LoopbackExempt -s
-s:列出当前回环豁免记录,适合操作前后核对。-a:添加一条记录,-n后面是实际应用包族名称。- 命令提示操作完成后,仍应通过最后一次列表查询确认对应记录存在,再重新打开应用测试。
添加时出现“拒绝访问”,先检查终端是否确实以管理员权限运行。出现包名或参数相关错误,应重新核对查询结果,并使用英文半角引号和连字符。不要把网页排版中的弯引号复制到命令中,也不要将应用的中文显示名称当作包族名称。
3. 不再需要时撤销单项豁免
CheckNetIsolation.exe LoopbackExempt -d -n="Microsoft.WindowsStore_8wekyb3d8bbwe"
CheckNetIsolation.exe LoopbackExempt -s
-d 删除指定记录。若只是验证某个应用,测试后可以按需撤销。保留其他应用已有的豁免,不要为了排查一个商店错误而清空整个列表。
验证流量:区分未连接代理与规则直连
豁免添加成功,只能证明隔离配置已修改,不能证明所有请求都会通过代理节点。返回客户端的「连接」页面,重新触发商店加载,观察是否出现相应的目标域名、连接记录和最终策略;必要时在「日志」页短时提高日志级别,复现一次后恢复,避免长时间生成大量诊断信息。
| 观察结果 | 优先检查 | 下一步 |
|---|---|---|
| 浏览器和商店都失败 | 本地监听、配置与节点 | 先恢复基础代理连接,再判断回环限制 |
| 浏览器成功,商店没有连接记录 | 包名、豁免、系统代理与应用网络栈 | 复查列表并重启应用;没有记录也可能是缓存或未发起请求 |
| 出现连接,策略为 DIRECT | 规则命中结果 | 检查规则顺序,确认直连是否符合预期 |
| 已选代理策略,仍超时 | 节点、DNS 与目标服务 | 更换可用节点并对照日志,不要反复添加同一豁免 |
| 商店页面可开,下载任务失败 | 下载相关服务与独立网络路径 | 记录具体错误码,不能直接认定仍是回环问题 |
Clash 与 mihomo 的规则通常从上到下匹配,命中后执行相应策略。应用进入本地代理后,若命中 DIRECT,依然会直接连接目标;这与“没有接入代理”是两件事。不要为解决单个应用问题就长期切成全局模式,也不要直接覆盖订阅中的全部规则。
TUN、WinHTTP 与系统代理不能混为一谈
TUN 不是回环豁免的同义词
系统代理主要供遵循该设置的应用使用;TUN 模式通过虚拟网卡和路由接管符合条件的流量。在 mihomo 客户端中,TUN 还涉及服务权限、自动路由与 DNS 设置。某个应用开启 TUN 后恢复连接,说明接管路径发生了变化,并不表示回环列表已经自动修复。
可以把 TUN 作为另一种测试路径,但应一次只改变一项设置。若系统代理明确指向本地回环地址,受隔离应用访问该地址时仍可能需要豁免;不能承诺只开 TUN 就解决所有 UWP 问题。
不要直接把系统代理导入所有服务
部分 Windows 服务使用 WinHTTP,其代理设置与当前用户的系统代理并非同一层。可以用下面的只读命令查看状态,但“直接访问”本身不能证明配置错误,也不能据此认定商店一定走这条网络路径:
netsh winhttp show proxy
不要把批量修改 WinHTTP、重置网络或关闭防火墙当作回环豁免的必要步骤。它们可能影响系统服务、企业管理和其他软件,应在确认具体故障来源后单独处理。
仍然失败时的收尾检查
- 检查服务状态:确认 Windows 日期、时间和时区正确,核对账号登录状态及目标服务是否正常。应用界面报“网络错误”不一定代表本机代理故障。
- 重置商店缓存:若只有 Microsoft Store 页面异常,可按
Win + R,运行wsreset.exe后重试。它处理的是商店缓存,不会替代回环豁免或修复失效节点。 - 核对应用生命周期:旧版 Windows 邮件和日历已于 2024 年 12 月 31 日结束支持。到本文日期,旧客户端无法正常使用不能只归因于回环限制;应确认实际使用的是旧邮件应用还是新版 Outlook,并按对应产品排查。
- 保留最小诊断信息:记录 Windows 版本、客户端名称、本地端口、应用包族名称、错误码和失败时间。分享日志前移除订阅链接、令牌与账号信息。
推荐顺序是:确认普通应用代理正常,核对系统代理入口,为目标应用添加单项豁免,重启应用,再根据连接记录判断规则和节点。这样每一步都对应一个可验证的环节,既能处理典型的 UWP 回环限制,也能避免把商店缓存、服务网络与旧应用停服混成同一个问题。