先釐清客戶端、配置與核心的分工
Clash Plus、Clash Verge Rev、FlClash 等桌面程式屬於客戶端外殼,負責呈現介面、管理配置並呼叫代理核心。真正執行規則比對、DNS 解析、連線轉發與 TUN 接管的通常是 Mihomo 核心。不同客戶端的側欄圖示、選單名稱與排列順序可能不同,但核心工作仍可歸納為四個區域:代理頁決定流量交給哪個策略,配置頁決定載入哪套規則,連線頁顯示正在進行的工作階段,日誌頁記錄核心如何處理這些工作階段。
理解這層分工後,操作順序就很清楚:先在配置頁匯入並啟用訂閱,再到代理頁確認執行模式與策略組選擇,接著開啟系統代理或 TUN,最後用連線頁與日誌頁驗證結果。只在代理頁反覆切換節點,卻不確認目前配置與接管方式,是新手最常見的無效操作之一。
| 介面區域 | 主要對象 | 最常進行的操作 | 不負責的事項 |
|---|---|---|---|
| 代理頁 | 執行模式、策略組、節點 | 選擇節點、切換策略、測試延遲 | 更新訂閱內容 |
| 配置頁 | 本機 YAML、遠端訂閱、配置提供者 | 匯入、更新、啟用配置 | 判斷單一連線命中了哪條規則 |
| 連線頁 | 目前的 TCP、UDP 工作階段 | 查看目標位址、規則、代理鏈與流量 | 保存完整的長期診斷紀錄 |
| 日誌頁 | 核心執行事件 | 檢查 DNS、規則、撥號與配置錯誤 | 取代訂閱編輯器 |
| 設定頁 | 系統代理、TUN、連接埠、核心參數 | 決定應用程式如何接管流量 | 取代代理頁選擇策略組 |
代理頁:模式、策略組與節點選擇
代理頁不只是簡單的伺服器清單。它會顯示配置檔中的 proxy-groups,每個分組都有自己的職責。例如「節點選擇」可能是手動選擇組,「自動選擇」可能是 url-test 組,「故障轉移」可能是 fallback 組。最終連線會經過哪條路徑,取決於執行模式、規則命中結果、策略組巢狀關係與目前選項。
三種執行模式分別處理什麼
- Rule:依照配置中的規則由上到下進行比對。網域可能命中
DOMAIN-SUFFIX,IP 可能命中IP-CIDR,未命中的流量最終會進入MATCH。這是日常使用最常見的模式。 - Global:大部分連線會統一交給全域策略組,不再按照一般規則逐條分流。適合暫時確認某個網站能否透過指定節點存取,不適合長期取代規則模式。
- Direct:連線通常會直接傳送至目標,不經過代理節點。可用於對照測試本機網路,但啟用後,即使代理頁選中了節點,業務流量仍可能顯示為
DIRECT。
如果網頁始終直連,第一步應檢查頁面頂部或設定區目前是否為 Direct 模式;如果所有網站都經過同一個節點,再檢查是否誤切換到 Global。客戶端重新啟動後通常會恢復上次狀態,因此排查時不能只憑記憶判斷目前模式。
策略組類型決定選擇方式
| 組類型 | 介面行為 | 適用情境 |
|---|---|---|
select |
由使用者手動選擇節點或下一層策略組 | 固定地區、固定線路、手動控制 |
url-test |
依測試網址的延遲結果自動選擇 | 從同類節點中選擇回應較快者 |
fallback |
優先使用可用清單中排序較前的節點 | 主要線路故障後切換至備用線路 |
load-balance |
依配置策略分配連線 | 多個節點分散連線,不等於頻寬疊加 |
延遲數字只反映測試 URL 在當次檢測中的回應時間。顯示 80 ms 的節點不一定比 120 ms 的節點下載更快,因為實際速度還會受到出口頻寬、封包遺失、目標網站位置與網路壅塞影響。測試失敗也不一定代表節點完全失效:測試網址遭到封鎖、DNS 解析失敗或提供者尚未更新,都可能使結果顯示逾時。
配置頁:匯入、更新訂閱與啟用狀態
配置頁管理的是完整的執行輸入。遠端訂閱通常會下載為 Clash YAML 配置,其中可能包含連接埠、DNS、節點、策略組、規則與規則提供者。部分服務只會回傳通用 Base64 節點清單,這類內容不一定能由 Clash 配置頁直接解析;匯入時若顯示「格式錯誤」,或只出現節點而沒有規則組,應先確認訂閱格式。
成功匯入不代表已經啟用
多數客戶端允許同時保存多份配置。匯入新訂閱後,還需要點擊配置卡片、單選標記或「啟用」按鈕,將其設為目前配置。要判斷是否切換成功,可以回到代理頁觀察策略組名稱是否變化,也可以在日誌頁尋找配置重新載入的紀錄。若新舊訂閱包含同名策略組,只看代理頁標題並不足夠,應核對配置頁的選取標記與更新時間。
- 開啟「配置」或「Profiles」頁面。
- 在訂閱輸入框貼上以
https://開頭的完整網址。 - 點擊「匯入」「下載」或加號按鈕,等待解析完成。
- 選取剛出現的配置卡片,將其設為目前配置。
- 點擊更新按鈕,確認更新時間已變更。
- 返回代理頁,檢查策略組與節點是否如預期出現。
自動更新與本機修改的界線
常見的自動更新間隔為 24 小時,也有客戶端允許設定為 6、12 或 48 小時。更新時間只表示客戶端嘗試擷取訂閱,不代表上游內容一定有變化。若伺服器回傳 401 或 403,通常應檢查訂閱是否過期、驗證參數是否完整;若回傳逾時,則繼續檢查 DNS、目前網路與訂閱網域是否可連線。
直接編輯由遠端訂閱產生的 YAML 時,請注意覆寫關係。下一次更新可能會以遠端版本取代本機修改。若要長期保留自訂規則,可複製為本機配置,或使用客戶端提供的覆寫、腳本、Merge、Mixin 功能。具體入口可能位於「配置」→「覆寫」或「設定」→「配置管理」。修改前請保留一份可正常載入的配置,以便發生語法錯誤時回復。
mixed-port: 7890
mode: rule
log-level: info
allow-lan: false
rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- MATCH,節點選擇
上例中的 mixed-port: 7890 表示 HTTP 與 SOCKS 入站共用 7890 連接埠,但這只是常見配置,並非固定值。客戶端設定頁顯示的實際連接埠優先於教學截圖。手動為瀏覽器、終端機或其他應用程式填寫代理時,應讀取目前的執行配置,不能預設所有客戶端都使用 7890。
連線頁:確認流量實際流向
連線頁是最直接的執行證據。通常會顯示來源位址、目標主機、目標 IP、網路類型、上傳下載量、命中規則、策略組與代理鏈。瀏覽器存取一個網頁時,可能同時建立多條連線:主文件、圖片、腳本、字型與統計介面可能分別存取不同網域,因此清單中出現十幾個工作階段並不異常。
重點查看四個欄位
- Host 或目標網域:確認目前查看的連線是否屬於目標應用程式。只有 IP 而沒有網域時,可能是應用程式直接存取 IP,也可能是網域嗅探未取得結果。
- Rule:顯示命中的規則類型,例如
DOMAIN-SUFFIX、GEOSITE、IP-CIDR或MATCH。規則內容通常會在相鄰欄位顯示。 - Chains:顯示從策略組到最終出口的鏈路,例如「國外網站 → 自動選擇 → HK-01」。最終為
DIRECT時表示直連,為REJECT時表示遭規則拒絕。 - Network:區分 TCP 與 UDP。網頁主體多使用 TCP 或基於 UDP 的 QUIC,語音、遊戲與 DNS 也可能產生 UDP 工作階段。
排查規則時,可以先清除篩選條件,再在搜尋框輸入目標網域。重新開啟網頁後觀察新連線。如果預期走代理卻命中 DIRECT,繼續核對規則順序:Clash 通常會由上到下進行比對,最先命中的規則才會生效。將自訂規則放在寬泛的直連規則之後,即使語法正確也不會執行。
連線頁也可用來判斷切換節點是否生效。假設舊鏈路是「節點選擇 → JP-01」,切換至 SG-02 後,既有長連線仍可能顯示 JP-01,而新建立的連線則顯示「節點選擇 → SG-02」。這是連線重用造成的正常現象。點擊「關閉全部連線」會中斷目前工作階段,正在下載的檔案、遠端終端機與線上會議也會一併受到影響。
日誌頁:從症狀定位到具體環節
日誌頁記錄核心啟動、配置載入、DNS 查詢、規則比對、代理撥號與錯誤事件。連線頁適合回答「這條流量經過哪裡」,日誌頁則適合回答「為什麼沒有建立連線」。排查時先維持 info 等級;只有一般日誌資訊不足時,再暫時切換至 debug。除錯等級會產生更多資訊,完成定位後應恢復為 info。
常見日誌關鍵字與處理方向
| 日誌片段 | 通常表示 | 下一步 |
|---|---|---|
connection refused |
目標連接埠主動拒絕連線 | 檢查節點位址、連接埠與服務狀態 |
i/o timeout |
連線或讀取未能在時限內完成 | 切換網路或節點,檢查封包遺失與目標可達性 |
no such host |
網域解析失敗 | 檢查 DNS 配置、上游伺服器與網路權限 |
address already in use |
監聽連接埠已被其他程序佔用 | 關閉佔用程式,或修改 mixed、HTTP、SOCKS 連接埠 |
proxy provider 更新失敗 |
節點提供者檔案未成功取得 | 檢查 provider URL、更新間隔與存取路徑 |
| YAML 行號或欄位錯誤 | 無法解析配置語法或欄位結構 | 回到配置頁還原副本,再檢查縮排與欄位層級 |
複製日誌尋求協助前,應檢查其中是否包含訂閱 URL、節點伺服器位址、驗證參數、區域網路 IP 或存取網域。比起貼上整頁內容,更有效的做法是保留故障發生前後約 20 至 50 行,並說明操作時間、客戶端名稱、核心版本、執行模式與接管方式。
設定頁:系統代理、TUN 與連接埠如何配合
在代理頁選好節點後,流量仍需要進入核心。系統代理與 TUN 是兩種常見的接管路徑。系統代理會由客戶端將作業系統的 HTTP、HTTPS 或 SOCKS 代理指向本機連接埠,瀏覽器等遵循系統設定的程式會使用它;終端機工具、遊戲與部分獨立網路堆疊可能不會讀取系統代理。
TUN 模式透過虛擬網路介面接管更廣泛的流量,適合不讀取系統代理的程式,但也更依賴系統權限、路由與 DNS 配置。在 Windows 上啟用 TUN 時,客戶端可能要求系統管理員權限或安裝服務模式。系統代理與 TUN 可由客戶端協調使用,但排查階段應明確目前依賴哪一種,避免同時修改多個變數。
需要記住的本機連接埠
7890:常見的 mixed 連接埠,可同時接受 HTTP 與 SOCKS 連線;實際值以設定頁為準。7891:部分舊配置會用作 SOCKS 連接埠,但新配置不一定保留這種分配方式。9090:常見的 external controller 連接埠,供客戶端介面連線至核心控制介面使用,不是讓瀏覽器填寫的代理連接埠。53:標準 DNS 連接埠。TUN 與增強 DNS 配置可能透過內部監聽或轉發處理查詢,不應只憑連接埠號碼判斷是否生效。
出現「客戶端顯示執行中,但網頁無法開啟」時,可依序前往「設定」→「連接埠設定」核對 mixed 連接埠,再檢查系統代理位址是否為 127.0.0.1 且使用相同連接埠。若日誌顯示 address already in use,表示連接埠監聽失敗;此時即使系統代理開關已亮起,應用程式也無法將請求交給核心。
一套穩定的日常操作流程
熟悉介面後,不必每次把所有頁面都檢查一遍。正常使用時可以簡化為固定流程,發生異常再沿著流量路徑逐層回查。
- 配置頁:確認訂閱更新時間與目前啟用的配置。訂閱變更後先更新,再觀察是否出現新的策略組。
- 代理頁:使用 Rule 模式,選擇需要的策略組或節點。延遲測試僅作為可用性參考。
- 設定頁:依照應用程式類型開啟系統代理或 TUN,並核對本機監聽連接埠。
- 連線頁:存取目標網站,依網域篩選新工作階段,查看規則與代理鏈。
- 日誌頁:連線未建立時,依發生時間檢查 DNS、逾時、拒絕連線或配置錯誤。
例如瀏覽器可以存取,終端機指令卻直連,優先檢查終端機是否讀取系統代理,或改用 TUN;如果所有應用程式都沒有連線紀錄,優先檢查系統代理、TUN 與連接埠監聽;如果連線頁有紀錄但鏈路為 DIRECT,回頭檢查代理模式與規則順序;如果鏈路已經抵達指定節點卻仍逾時,再檢查節點可達性、DNS 與目標網站狀態。