Clash 瀏覽器能上網但軟體不能聯網怎麼辦?
簡答:Clash 瀏覽器能上網但軟體不能聯網時,先看連線面板有沒有該軟體的請求;再按代理入口、規則、端口與 DNS 分支排查。
定義:「Clash 瀏覽器能上網但軟體不能聯網」是指瀏覽器已使用代理,但其他應用程式沒有讀取相同的系統代理、軟體代理或 TUN 接管設定。
先試這一步:看軟體請求有沒有進入 Clash

本文主要涵蓋 Windows 上使用 mihomo 核心的 Clash 衍生客戶端。不同客戶端的選單名稱、端口顯示與 TUN 入口可能不同,以下欄位應以目前版本介面為準。本文不是任何品牌的官方網站,步驟重點是先透過連線面板判斷流量在哪一層失敗。
先開啟客戶端的連線、請求或日誌面板,清除或記住目前記錄,再在出問題的軟體中重新執行一次登入、更新或存取操作。不要一開始同時修改節點、DNS 和 TUN。
| 連線面板結果 | 代表什麼 | 先做什麼 |
|---|---|---|
| 完全沒有新請求 | 軟體沒有使用系統代理,或沒有被 TUN 接管 | 先設定軟體代理;沒有入口時再查 TUN |
| 出現請求並命中 DIRECT | 流量已進入 Clash,但規則分配為直連 | 短時間切換全域模式對照,再檢查規則 |
| 出現 timeout | 代理鏈路、節點、目標位址或協定可能失敗 | 查看同一請求的日誌,再更換策略組或節點 |
| 出現 connection refused | 本機端口、監聽位址或代理類型可能不匹配 | 核對 HTTP、SOCKS5 或 mixed-port 入口 |
| 主要是網域解析失敗 | 可能涉及 DNS、Fake-IP、IPv6 或軟體自帶解析 | 保留原設定,進入 DNS 分支重新測試 |
mihomo 可以透過代理端口、TUN 和監聽器接收流量,因此「請求有沒有出現在面板」是區分應用程式尚未接入,還是接入後才失敗的第一步。查看 mihomo 入站設定說明
Windows 先核對系統代理與軟體代理
- 確認客戶端正在執行。檢查設定已載入,代理模式不是直連,並確認系統代理開關仍然開啟。選單名稱和開關位置以目前客戶端為準。
- 核對本機位址與端口。系統代理通常使用本機回環位址;端口必須填寫客戶端目前顯示的 HTTP 或 mixed-port 端口。不要把訂閱位址、控制面板位址或遠端伺服器位址當成本機代理端口。
- 軟體有代理入口時,優先使用軟體代理。軟體只支援 HTTP,就填寫 HTTP 入口;只支援 SOCKS5,就填寫 SOCKS5 入口;支援兩者時才考慮 mixed-port。mihomo 文件說明,mixed-port 可以同時接受 HTTP(S) 和 SOCKS5,但實際端口仍以目前設定為準。查看 mihomo 代理端口說明
- 重新啟動軟體後再測試。部分應用程式只會在啟動時讀取代理設定。每次只測試一個軟體和一個動作,避免多個應用程式同時產生請求,導致日誌無法對應。
瀏覽器能上網,不代表所有應用程式都會讀取同一套代理。Windows 文件區分 WinINet 與 WinHTTP;桌面應用程式、服務和系統元件可能採用不同網路堆疊,因此需要按軟體個別驗證。WinINet 文件 WinHTTP 文件
命令列與 Git:另外檢查環境變數和 WinHTTP
如果瀏覽器正常,但終端機、腳本或 Git 失敗,不要只查看瀏覽器的系統代理設定。
- 先檢查 Git 自身設定。Git 支援
http_proxy、https_proxy、no_proxy環境變數,也支援http.proxy等設定項目。先查看現有設定,再按照軟體支援的代理類型設定。查看 Git 官方 FAQ - 檢查目前命令列是否有代理環境變數。確認變數中的位址和端口仍由目前客戶端監聽,避免指向已關閉的本機端口。不要把包含真實憑證的命令複製到公開腳本或截圖中。
- 需要排查 WinHTTP 時再查看它。執行
netsh winhttp show proxy查看 WinHTTP 設定。這個命令只反映 WinHTTP,不是所有桌面軟體的通用代理狀態。Microsoft 文件列出查看、設定和重設 WinHTTP 代理的命令。查看 netsh winhttp 文件 - 回復設定前先記錄原狀態。如果確認是遺留代理導致系統元件失敗,可根據記錄恢復原設定;沒有確認影響範圍時,不要直接重設整個網路設定。
軟體沒有代理入口時,再考慮 TUN
TUN 適合無法讀取系統代理、沒有代理設定入口,或需要接管更多系統流量的應用程式。它不應該成為瀏覽器正常時的預設第一步,因為啟用後會涉及虛擬網卡、路由、DNS 和防火牆行為。
- 先關閉其他接管工具。暫時退出其他 VPN、代理客戶端、虛擬網卡工具,以及可能修改 DNS 的安全軟體,只保留一個接管入口。
- 按照目前客戶端要求啟用權限。Windows 下 TUN 是否需要管理員授權、虛擬網卡名稱和設定入口,取決於客戶端實作;請按照客戶端提示操作,不要照搬其他版本的選單。
- 驗證 TUN 是否真的接管。啟用後重新執行軟體操作,同時觀察系統網路介面狀態和 Clash 連線面板。如果仍然沒有請求,可能是 TUN 未建立成功、程序被排除,或流量沒有被目前設定覆蓋。
- 出現異常立即回復。如果區域網路、虛擬機器、DNS 或其他網路功能異常,先關閉 TUN,恢復原來的系統代理狀態,再單獨驗證。mihomo 文件特別說明,Windows 的 strict-route 在某些 VirtualBox 情境下可能造成異常。查看 mihomo TUN 文件
選擇順序:有軟體代理入口時先使用軟體代理;沒有入口且系統代理不生效時再嘗試 TUN;TUN 引發其他問題時關閉 TUN,回到單一應用程式代理與規則排查。
出現請求後:按規則、DNS 和協定分流
命中 DIRECT 或 REJECT
如果面板出現請求,但規則模式下無法連線,可以短時間切換全域模式作為對照。全域模式能連線,通常表示流量已經進入 Clash,下一步應檢查網域、程序規則、規則提供器和規則順序,而不是長期停留在全域模式。mihomo 文件說明規則會按照順序匹配,MATCH 用於匹配前面規則未處理的請求。查看 mihomo 規則文件
DNS 失敗或只有網域請求失敗
先確認客戶端的 DNS 模組是否啟用、DNS 監聽是否正常,以及軟體是否使用自己的解析方式。mihomo 支援 redir-host 和 fake-ip 等 DNS 模式,但最終行為取決於目前設定和客戶端實作;先備份設定,只修改一個變數後重新測試。查看 mihomo DNS 文件
只有遊戲、聊天軟體或更新器失敗
- 遊戲平台或更新器:如果軟體使用獨立網路元件或 UDP、QUIC 等連線方式,系統代理可能無法涵蓋所有請求。不能只憑瀏覽器成功下結論,應同時觀察 Clash 面板和軟體日誌,確認是否有請求進入。
- 聊天軟體:檢查軟體自身代理開關、獨立 VPN 和登入網域,不要只測試網頁版。
- Microsoft Store:下載或更新失敗時,還應檢查所需端點是否被防火牆或代理阻擋。Microsoft 官方排查文件將代理、防火牆和應用程式註冊列為檢查項目。查看 Microsoft Store 排查文件
複測、記錄與回復清單
- 記錄修改前的代理模式、系統代理開關、TUN 狀態、軟體代理設定和錯誤提示。
- 先只保留一種接管方式:軟體代理、系統代理或 TUN,不要同時疊加多個入口。
- 重新啟動出問題的軟體,執行同一個操作,並觀察連線面板是否出現對應請求。
- 如果成功,逐項恢復之前關閉的功能,每次只恢復一項;再次失敗時即可鎖定衝突點。
- 如果仍然失敗,保存日誌中的時間、目標網域、錯誤類型和命中策略,不要公開訂閱連結、節點憑證或控制介面密鑰。
- 最後回復時關閉 TUN,恢復系統代理原狀,再按「是否有請求進入—規則命中—端口連線—DNS 解析」的順序重新測試。
最短判斷路徑只有四步:無請求查代理入口;命中 DIRECT 查規則;timeout 查代理鏈路;網域失敗查 DNS 與軟體自帶解析。
常見問題
為什麼 Clash 瀏覽器能上網,但其他軟體不能聯網?
通常是瀏覽器讀取了系統代理,而其他軟體沒有讀取,或軟體使用獨立代理、WinHTTP、TUN 或自帶 DNS。先看連線面板:沒有請求就查軟體代理或 TUN,有請求再查規則、端口和日誌。查看 Microsoft 網路堆疊說明
軟體代理應該填 HTTP、SOCKS5 還是 mixed-port?
按照軟體支援的協定填寫:只支援 HTTP 就使用 HTTP,只支援 SOCKS5 就使用 SOCKS5;軟體支援兩者時才使用 mixed-port。端口必須以目前客戶端顯示為準。查看 mihomo 代理端口說明
Clash 瀏覽器正常,是否應該直接開啟 TUN?
不建議。軟體有代理入口時先填寫軟體代理;沒有入口且系統代理不生效時再嘗試 TUN。啟用前關閉其他接管工具,出現虛擬機器、路由或 DNS 異常時先關閉 TUN 回復。查看 mihomo TUN 文件
切換全域模式後軟體能聯網,代表什麼?
這表示軟體請求大概率已進入 Clash,但規則模式可能將它分配到 DIRECT、REJECT 或其他不合適的策略。全域模式只用於短時間對照,之後應檢查網域、程序規則和規則順序。查看 mihomo 規則文件
Git 能使用代理,為什麼遊戲平台或 Microsoft Store 仍然失敗?
不同軟體可能使用不同網路堆疊或協定。Git 支援環境變數和自身代理設定;遊戲平台、更新器或 Microsoft Store 還需分別檢查請求是否進入 Clash,以及端點是否被代理或防火牆阻擋。Git 官方 FAQ Microsoft Store 排查文件
常見問題
為什麼 Clash 瀏覽器能上網但其他軟體不能聯網?
通常是瀏覽器讀取系統代理,而其他軟體沒有讀取,或使用獨立代理、WinHTTP、TUN 或自帶 DNS。先看連線面板有沒有該軟體的請求。
Clash 瀏覽器能上網但軟體不能聯網,先改 DNS 嗎?
不應先改 DNS。沒有請求時先查軟體代理或 TUN;有請求但命中 DIRECT、timeout 或 connection refused 時,應先按對應分支檢查規則、鏈路和端口。
軟體代理應該使用 HTTP、SOCKS5 還是 mixed-port?
只支援 HTTP 就使用 HTTP,只支援 SOCKS5 就使用 SOCKS5;軟體支援兩者時才使用 mixed-port,端口以目前客戶端顯示為準。
瀏覽器正常時,是否可以直接開啟 TUN?
不建議。軟體有代理入口時先使用軟體代理;沒有入口且系統代理不生效時再嘗試 TUN。若造成虛擬機器、路由或 DNS 異常,先關閉 TUN 回復。
切換全域模式後軟體恢復連線,下一步怎麼做?
這通常表示請求已經進入 Clash,但規則模式選到了 DIRECT、REJECT 或不合適的策略。全域模式只作短時間對照,之後檢查網域、程序規則和規則順序。
相關閱讀
參考資料
- mihomo 入站設定文件
- mihomo 代理端口文件
- mihomo TUN 文件
- mihomo 路由規則文件
- mihomo DNS 設定文件
- Microsoft Learn:About WinINet
- Microsoft Learn:netsh winhttp
- Microsoft Learn:排查 Microsoft Store 下載失敗
- Git FAQ:Can I use a proxy with Git(git-scm.com)