把 Clash 客戶端的系統代理打開之後,瀏覽器、終端工具、大多數桌面軟體都能順利走代理出站,但 Microsoft Store、新版 Outlook、部分微軟自家應用卻像是完全沒感知到代理存在——存取異常、更新卡住、登入反覆失敗。如果你在系統代理已經生效、其他軟體都正常的情況下遇到這類問題,大概率不是節點或規則出了問題,而是撞上了 Windows 平台特有的 UWP 回環隔離(Loopback Isolation) 機制。
為什麼只有部分應用不受影響
Windows 的應用生態裡有兩大類程式:傳統的 Win32 桌面程式(exe 直接雙擊執行,大多數聊天工具、瀏覽器、開發工具都屬於這一類),以及基於 UWP(Universal Windows Platform)框架、透過應用容器(App Container)執行的現代應用。Microsoft Store、系統自帶的郵件與日曆、新版 Outlook、部分預裝的相機與地圖應用,都是以 UWP 或類似容器化方式執行的。
系統代理(包括 Clash 客戶端設定的 HTTP/HTTPS 系統代理,以及 TUN 模式接管全域流量的方式)對 Win32 程式幾乎是「無差別覆蓋」的:只要走系統網路堆疊,代理就能攔截轉發。但 UWP 應用執行在受限的應用容器裡,出於安全隔離的設計,預設禁止容器內程序存取本機回環位址(127.0.0.1 及 ::1)。而 Clash 客戶端的代理監聽埠(混合埠預設 7890,或客戶端介面顯示的埠)恰好就在本機回環位址上——這就是問題的根源:並不是代理沒生效,而是這些應用被系統禁止連線本機的代理埠。
回環隔離是微軟出於沙箱安全設計做的預設限制,不是 bug,也不是 Clash 客戶端的問題。判斷依據很簡單:如果瀏覽器、聊天軟體走代理正常,只有 Microsoft Store、新版 Outlook 等少數應用異常,基本可以確定就是這套機制在起作用。
常見受影響的場景
- Microsoft Store 無法搜尋、下載卡在 0%、應用更新長時間轉圈。
- 新版 Outlook(基於 One Outlook 技術架構的新客戶端)在設定了代理後仍無法連線帳戶,或登入時提示網路錯誤。
- 部分 Xbox 相關應用、系統自帶的天氣/資訊類應用在代理開啟後完全無法刷新內容。
- 某些第三方應用如果是透過 Microsoft Store 發行、以 MSIX/AppX 打包,也可能落入同一限制。
方法一:CheckNetIsolation 命令列解除
Windows 系統自帶一個命令列工具 CheckNetIsolation.exe,專門用於管理應用容器的網路隔離規則,其中就包括回環存取的白名單。這個方法不依賴任何客戶端功能,原理清晰、效果持久,是最基礎、最通用的解決方式。
-
以系統管理員身份開啟命令提示字元
在開始功能表搜尋「命令提示字元」或「cmd」,右鍵選擇「以系統管理員身份執行」。回環隔離規則的修改需要系統管理員權限,一般權限視窗執行會直接失敗。
-
查看目前已放行的應用清單(可選)
先執行下面這條命令,確認目前系統裡已經有哪些應用被豁免,避免重複新增:
CheckNetIsolation LoopbackExempt -s -
為目標應用新增回環豁免
以 Microsoft Store 為例,應用的套件系列名稱(Package Family Name)為
Microsoft.WindowsStore_8wekyb3d8bbwe,執行:CheckNetIsolation LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"命令執行後沒有報錯即代表成功。如果需要為新版 Outlook 或其他 UWP 應用放行,先用
Get-AppxPackage查出對應的套件全名,再替換-n=後面的值即可。 -
查找其他應用的套件全名
開啟 PowerShell(同樣建議系統管理員權限),執行以下命令列出已安裝的 UWP 應用及其套件全名:
Get-AppxPackage | Select Name, PackageFamilyName在結果裡找到目標應用對應的
PackageFamilyName欄位,原樣複製到上一步的命令中即可。 -
重新啟動應用驗證
完全關閉目標應用(而不是最小化)再重新開啟,確認代理是否已經生效。回環豁免的修改通常立即生效,不需要重新啟動系統。
如果之後想撤銷某個應用的豁免,把命令裡的 -a(add)換成 -d(delete)即可:
CheckNetIsolation LoopbackExempt -d -n="Microsoft.WindowsStore_8wekyb3d8bbwe"方法二:客戶端內建的一鍵解除工具
手動查套件名、拼命令對不熟悉命令列的使用者來說門檻偏高,因此不少 Clash 客戶端在 Windows 版裡內建了圖形化的回環豁免工具,本質上是對 CheckNetIsolation 的封裝,但操作上省去了查找套件全名這一步。
- 在客戶端的「系統設定」或「網路設定」分區尋找類似「UWP 回環豁免」「LoopbackExempt」「網路隔離例外」的入口。
- 開啟後通常會自動列出系統內已安裝的 UWP/MSIX 應用,勾選目標應用(如 Microsoft Store、新版 Outlook)後點擊套用即可,內部會自動拼接套件全名並呼叫系統命令。
- 部分客戶端提供「一鍵放行常用應用」按鈕,會預設好 Store、Xbox、郵件等幾個高頻受限應用,適合不想逐個排查的使用者。
圖形化工具同樣需要系統管理員權限才能生效,如果點擊後沒有明顯反饋或修改不生效,先確認客戶端本身是否以系統管理員身份啟動。部分客戶端版本在未取得系統管理員權限時會靜默失敗,而不是彈出錯誤提示,這點容易被誤判為「功能沒用」。
為什麼內建工具有時不如命令列可靠
圖形化封裝雖然方便,但存在兩個限制:一是應用清單依賴客戶端自身的偵測邏輯,新安裝的應用或使用非常規打包方式的應用可能不會出現在清單裡;二是不同客戶端版本對該功能的維護程度不一,有的版本這個入口可能長期沒有更新適配最新的系統應用命名。遇到清單裡找不到目標應用、或者點擊豁免後依然無效的情況,回退到命令列方式手動查套件名新增,是更可靠的兜底手段。
TUN 模式下是否還需要處理回環隔離
這裡需要區分系統代理模式和 TUN 模式的差異。系統代理模式是把 HTTP/HTTPS 代理位址寫入系統網路設定,應用需要主動讀取這個設定並向本機回環埠發起連線,這個連線動作正是被回環隔離攔下的部分,因此系統代理模式下 UWP 應用受影響的機率更高。
TUN 模式則是在系統層建立一張虛擬網卡,直接在網路層劫持所有出站流量(包括 UWP 應用容器內發出的流量),不依賴應用主動連線本機代理埠,理論上能繞開回環隔離的限制。如果你頻繁遇到 UWP 應用代理不生效的問題,且客戶端支援 TUN 模式,可以優先嘗試切換到 TUN 模式驗證問題是否消失。但 TUN 模式需要額外的虛擬網卡驅動權限,設定門檻比系統代理略高,建議先確認客戶端文件裡關於 TUN 模式的開啟步驟,再逐步排查。
回環位址(Loopback Address)
網路基礎指裝置本機的自我定址位址,IPv4 中為 127.0.0.1(整個 127.0.0.0/8 段都屬於回環),IPv6 中為 ::1。本機執行的代理服務通常監聽在回環位址上,只允許本機程序存取,不對外網暴露。
排查思路小結
遇到「部分應用不走代理,大部分應用正常」的情況,建議按下面的順序排查,避免把精力浪費在無關的方向上:
-
確認受影響的應用類型
先確認異常應用是否來自 Microsoft Store 或屬於 UWP/MSIX 打包方式,一般 exe 桌面程式基本不受回環隔離影響,不必往這個方向排查。
-
用命令列核實豁免狀態
執行
CheckNetIsolation LoopbackExempt -s查看目前豁免清單,確認目標應用是否已在其中,避免重複操作或誤判問題原因。 -
新增豁免後完全重新啟動應用
修改回環豁免規則後必須完全關閉再重新開啟目標應用才能生效,僅切換到背景再切回不會觸發重新載入。
-
仍無效時切換到 TUN 模式驗證
如果確認已新增豁免、也完全重新啟動了應用,問題依舊存在,切換到 TUN 模式測試,能進一步區分是回環隔離殘留問題還是其他網路設定問題。
回環隔離機制本身是 Windows 系統層面的安全設計,與 Clash 客戶端使用的核心、訂閱規則都沒有直接關係——即便更換節點、重新匯入訂閱,只要沒有解除對應應用的回環限制,問題依然會重現。理解這一點之後,再遇到「只有商店應用/新版 Outlook 不走代理」這類反饋,就能直接定位到 UWP 回環隔離這一個方向,不用在規則設定裡反覆排查。