FAULT ROUTER

Clash 常見問題與故障排除

別從重新安裝開始。先判斷流量是否進入核心,再檢查規則、節點、DNS 與系統接管層。以下依問題類型提供檢查順序。

設定與訂閱 TUN 與系統代理 連線與 DNS
BASICS

基礎認知

先將用戶端、核心、設定與接管方式分開。概念混在一起,日誌再長也很難定位。

Clash、mihomo 核心與圖形化用戶端是什麼關係?

Clash 通常指規則代理生態與設定格式,mihomo 是持續維護的相容核心;Clash Plus、Clash Verge Rev、FlClash 等則是負責匯入設定、切換節點與顯示日誌的圖形化用戶端。真正處理連線、DNS、規則比對與 TUN 流量的是核心。排查故障時,先分清楚是介面操作、設定內容,還是核心啟動失敗。

規則模式、全域模式和直連模式該怎麼選?

日常使用優先選規則模式,流量會依照 rules 從上到下比對,並進入 DIRECTPROXYREJECT。全域模式會把大多數連線交給目前的代理群組,適合暫時確認節點本身是否可用,不適合長期取代規則。直連模式會繞過代理,可用來快速判斷故障是否由用戶端設定造成。切換模式後應重新開啟目標應用程式,避免沿用舊連線。

系統代理和 TUN 模式有什麼差別?

系統代理只會接管遵循作業系統代理設定的程式,瀏覽器和多數桌面應用程式通常可直接使用,但部分遊戲、命令列工具及自行建立網路堆疊的程式會繞過它。TUN 模式透過虛擬網卡接管更廣泛的 IP 流量,涵蓋範圍較大,但也涉及管理員權限、路由表、DNS 劫持及其他虛擬網卡衝突。先用系統代理完成基本驗證,再依需求啟用 TUN,會更容易定位問題。

訂閱連結和設定檔有什麼差別?

訂閱連結是遠端設定入口,用戶端更新時會重新取得內容;設定檔則是下載到本機後交由核心讀取的 YAML 文件。一份訂閱可能包含節點、代理群組、規則和 DNS,也可能只提供節點,再由用戶端套用範本。直接修改訂閱產生的本機檔案,通常會在下次更新時被覆蓋。需要長期保留的自訂規則,應放入用戶端支援的覆寫、合併或腳本功能。

延遲測試數值為什麼不等於實際網速?

延遲測試通常只測量用戶端經由節點連線至某個測試位址所需的交握時間,不能代表可用頻寬、持續封包遺失、尖峰時段壅塞,或目標網站到節點之間後半段的路由。低延遲節點也可能吞吐量不足,高延遲節點反而可能在傳輸大型檔案時更穩定。選擇節點時,先用延遲排除明顯逾時的項目,再搭配網頁開啟、影片緩衝和持續下載表現判斷。

PROFILE LOAD

安裝設定

匯入只是把檔案下載下來。設定能否解析、是否已選取,以及核心是否成功載入,需要分三步確認。

Clash 訂閱連結應該從哪裡匯入?

開啟用戶端的設定或 Profiles 頁面,找到從 URL 匯入、遠端設定或新增訂閱的入口,貼上完整連結後執行下載。匯入成功後還要選取該設定,讓它成為目前使用中的設定;只下載但沒有切換時,核心仍會使用舊檔案。首次匯入建議查看更新時間、代理群組和節點清單是否出現,再開啟日誌確認設定已載入完成。不要把訂閱連結貼到節點名稱或本機檔案選擇欄位。

匯入訂閱後為什麼沒有節點?

先查看設定更新提示與核心日誌。如果回傳的是登入頁面、錯誤頁面或空白內容,用戶端就無法將其解析為設定;如果 YAML 可以下載但只有規則區段,也不會產生節點。還要確認訂閱網址沒有被聊天軟體截斷,結尾參數和特殊字元仍保持完整。在瀏覽器中開啟連結只能用來確認伺服器是否回應,不要公開頁面內容。確認連結有效後,刪除失敗的設定,重新匯入並切換至新設定。

訂閱更新失敗或顯示逾時該怎麼處理?

先關閉系統代理,測試訂閱網址能否直接取得;如果只能透過代理存取,再啟用一份已可用的舊設定後更新。檢查系統時間、訂閱有效期限和服務端狀態,時間偏差可能影響 HTTPS 連線。如果用戶端設定了更新代理,也要確認該代理群組目前有可用節點。仍然逾時時,可複製連結重新建立一份遠端設定,以排除舊項目的快取、錯誤請求標頭或損毀的中繼資料。

YAML 設定顯示解析錯誤要如何定位?

先查看日誌提供的行號和欄號,再檢查該位置的上一行,因為縮排或引號錯誤經常到下一行才會被回報。YAML 使用空格縮排,不能混入定位字元;冒號後通常需要空格,包含特殊字元的名稱也應正確加上引號。代理群組引用的節點名稱必須與 proxies 中完全一致。修改前先保留原始檔案,並優先使用用戶端的設定檢查功能;一次只修改一處,避免多個語法問題疊加。

Windows 啟用 TUN 時為什麼需要管理員權限?

TUN 需要建立或控制虛擬網卡,並修改路由與 DNS,這些操作通常需要提升權限。先完全退出用戶端,再以管理員身分啟動並重新開啟 TUN;只提升設定視窗權限、卻沒有重新啟動核心,通常並不足夠。如果用戶端支援服務模式,可依設定頁指示安裝服務後再啟動。企業裝置也可能受到安全性原則限制,此時應查看系統事件與用戶端日誌,不要連續重複安裝虛擬網卡驅動程式。

RULE CONTROL

使用技巧

規則符合、程序接管和 DNS 過濾都能從連線記錄反推。先看事實,再修改設定。

如何讓命令列工具使用 Clash?

先確認用戶端顯示的 HTTP 或 mixed 監聽位址與連接埠,常見的本機位址是 127.0.0.1,但連接埠以目前設定為準。支援環境變數的工具可設定 HTTP_PROXYHTTPS_PROXYALL_PROXY;只識別系統代理的工具,則可在啟用系統代理後重新啟動終端機。使用 TUN 時,多數程式不需要另外設定變數。排查時執行工具自身的詳細日誌參數,確認請求究竟是透過環境變數、系統代理,還是直連。

如何讓指定網站固定使用某個代理群組?

在規則中將更具體的 DOMAINDOMAIN-SUFFIX 項目放在通用規則之前,並將策略欄位指向既有的代理群組名稱。例如,目標網域規則必須排在 GEOIPGEOSITEMATCH 之前,否則流量會先符合前面的寬泛條件。修改後重新載入設定,並在連線記錄中查看符合的規則與策略。若訂閱更新會覆蓋原始檔案,應透過覆寫或規則合併功能保存這條自訂規則。

Fake-IP 模式下個別應用程式連線異常怎麼辦?

先在連線記錄中確認應用程式存取的網域,再將不適合 Fake-IP 的網域加入 fake-ip-filter,接著清除系統 DNS 快取並重新啟動該應用程式。區域網路裝置探索、印表機、部分登入元件,以及依賴真實 DNS 回應值的程式更容易受到影響。不要一開始就關閉整個 Fake-IP 模式;先排除單一網域,既能保留網域映射能力,也方便確認究竟是哪一段解析路徑出現相容性問題。

如何判斷一條連線符合了哪條規則?

開啟用戶端的連線或 Connections 頁面,重新發出目標請求,查看網域、目標位址、程序、符合的規則與最終策略。沒有程序資訊時,可利用網域和時間點縮小範圍。如果結果總是 MATCH,表示前面的網域、IP 或規則集都沒有符合;如果符合的規則正確但出口不對,繼續檢查該規則指向的代理群組目前選取的節點。舊連線不會自動重建,修改規則後應關閉原有連線再測試。

如何暫時讓區域網路裝置連線至本機 Clash?

在用戶端啟用允許區域網路連線,並確認監聽位址不是只限於 127.0.0.1。其他裝置的代理伺服器應填入這台電腦的區域網路 IP 與用戶端實際監聽的連接埠,而不是 localhost。接著檢查 Windows 防火牆是否允許該程式在目前網路類型中通訊。只在可信任的區域網路中開啟,並避免透過路由器將監聽連接埠直接暴露至公網;測試結束後即可關閉區域網路存取。

TRACE PATH

故障排除

建議順序:直連基準 → 流量入口 → 規則符合 → 節點連線 → DNS → TUN 路由。不要同時修改五個項目。

Clash 顯示已連線,但瀏覽器無法上網要怎麼排查?

依固定順序檢查:先切換至直連模式,確認本機網路正常;再切回規則模式,選擇通過基本測試的節點;接著查看系統代理是否開啟、瀏覽器是否使用獨立代理擴充功能,以及連線記錄中是否出現請求。沒有請求通常表示流量沒有進入用戶端;有請求但失敗,則查看符合的策略與錯誤日誌。最後關閉其他代理、加速器或封包擷取軟體,避免多個程式同時修改系統代理與連接埠。

節點全部顯示逾時,應該先查什麼?

先確認目前設定不是空白訂閱,並核對系統日期與時間。接著關閉 TUN,只保留一般系統代理進行測試,以排除虛擬網卡與路由衝突。查看日誌中的錯誤類型:拒絕連線通常指向節點位址或連接埠無法使用;解析失敗優先檢查 DNS;憑證或交握錯誤則檢查時間、協定參數與設定是否完整。如果所有節點同時失效,應優先懷疑訂閱狀態、本機網路或 DNS,而不是逐一更換節點。

開啟系統代理後仍有程式直連怎麼辦?

系統代理不是強制接管層,程式可能使用自己的代理設定、內建 DNS,或透過直接 Socket 連線繞過它。先重新啟動目標程式,讓它重新讀取系統設定;再檢查程式內部是否設定為不使用代理。命令列工具需查看 HTTP_PROXY 等環境變數,遊戲和部分商店應用程式則較適合使用 TUN。如果連線頁面完全看不到該程式的請求,表示流量沒有進入核心,應繼續從應用程式代理設定或 TUN 接管範圍排查。

Windows 商店或 UWP 應用程式不使用系統代理怎麼處理?

部分 UWP 應用程式受到 AppContainer 網路隔離影響,無法直接存取本機回環代理。可使用用戶端提供的 UWP 回環工具,為目標應用程式勾選回環豁免,然後完全關閉並重新啟動該應用程式。不要一次勾選全部項目,先只處理實際需要的應用程式,方便撤銷與定位。如果用戶端沒有回環工具,可改用 TUN 模式接管流量;切換前先關閉其他虛擬網卡軟體,避免路由衝突。

開啟 TUN 後斷網或 DNS 解析失敗,如何恢復?

先關閉 TUN 和系統代理,再完全退出用戶端,確認直連網路是否恢復。如果仍然無法解析,重新連線目前網路並刷新系統 DNS 快取。重新啟用時先維持預設路由與 DNS 設定,不要同時疊加自訂網卡、網路過濾器和多個虛擬私人網路工具。查看日誌是否出現虛擬網卡建立失敗、路由寫入失敗或連接埠遭佔用。逐項恢復設定,比反覆重新安裝用戶端更容易找出衝突來源。

如何檢查 Clash DNS 洩漏或解析路徑異常?

先確認目前使用的是系統代理還是 TUN。系統代理模式下,未被接管的程式可能繼續使用系統 DNS;TUN 搭配 DNS 劫持時,涵蓋範圍通常更完整。檢查用戶端日誌中的 DNS 請求、nameserverfallback 設定,並確認瀏覽器沒有啟用獨立的加密 DNS 設定而干擾測試。一次只保留一套解析方案,清除快取後重新存取新網域,避免快取結果造成誤判。

NEXT STEP

仍然無法定位

先依入門指南重新走過一次最短設定流程,或查看協定與核心參考,確認目前用戶端支援訂閱中的協定類型。