Clash
Clash 最初指的是以規則為基礎的代理核心,如今也常用來泛指以其設定格式為基礎的用戶端生態。不同用戶端採用的核心、協定支援與維護狀況可能不同,不能只看名稱判斷功能。查閱教學時,應一併確認用戶端名稱與實際執行的核心。
用戶端負責操作,核心負責處理連線;協定、規則與 DNS 則各自解決不同問題。
本頁依設定涉及的五個層次整理 25 個術語,逐一說明概念、適用範圍與常見混淆之處。閱讀時可先找出設定中的關鍵字,再核對相關選項;不同用戶端的介面名稱與功能支援可能有所差異。
需要依步驟完成連線,可參閱Clash 使用教學;若涉及平台權限、安裝與 TUN 設定,可查閱跨平台指南。以下術語標題皆有獨立錨點,可分享網址連結至特定項目。
先釐清介面、執行程式與系統入口,再判斷應在哪裡修改設定。
Clash 最初指的是以規則為基礎的代理核心,如今也常用來泛指以其設定格式為基礎的用戶端生態。不同用戶端採用的核心、協定支援與維護狀況可能不同,不能只看名稱判斷功能。查閱教學時,應一併確認用戶端名稱與實際執行的核心。
mihomo 是由 Clash Meta 發展而來的開源代理核心,負責處理連線、比對規則與 DNS 等工作。它不是某個桌面介面的別稱,同一個核心可以整合在不同用戶端中。設定欄位是否可用,應以目前執行的核心版本及其文件為準。
用戶端通常是具備圖形介面的應用程式,負責管理訂閱、選擇策略、顯示記錄及設定系統。介面提供的開關不代表核心具備的所有功能,有些設定仍須透過設定檔或覆寫功能調整。更新用戶端與更新內建核心,也不一定是同一項操作。
代理核心是實際接收連線並執行設定的程式,圖形用戶端通常透過控制介面與其通訊。成功匯入訂閱只表示用戶端取得設定,不代表核心已成功載入。若啟動失敗,應查看設定解析與連接埠監聽記錄,而不只是檢查介面上的連線按鈕。
系統代理會向作業系統登記 HTTP 或 SOCKS 等代理入口,遵循這項設定的應用程式才會將連線交由用戶端處理。部分遊戲、命令列程式或使用自有網路堆疊的應用可能不會遵循設定。若瀏覽器能連線、其他應用卻不行,應先確認流量接管範圍,再判斷是否需要 TUN。
協定決定用戶端如何與伺服器通訊,不直接代表線路品質。以下參數都必須與伺服器設定相符。
Shadowsocks 是一種加密代理協定,節點設定通常包含伺服器位址、連接埠、加密方式與密碼。用戶端與伺服器必須使用彼此相容的參數;部分擴充功能也需要額外選項。協定名稱只描述連線方式,無法據此判斷節點速度、穩定性或營運者是否可信。
VMess 是一種代理協定,設定通常包含伺服器、連接埠、使用者識別碼與傳輸方式。WebSocket、TLS 等參數是連線組合的一部分,必須與伺服器設定相符。連線失敗時也應檢查系統時間,不能只因節點名稱相同就認定兩份設定相同。
VLESS 是一種輕量代理協定,通常搭配 TLS 或 REALITY 等安全機制使用。使用者識別碼、傳輸方式與安全參數都必須符合伺服器設定,只有伺服器位址並不足以建立連線。VLESS 與 VMess 是不同協定,匯入設定時不能只修改類型欄位來替換。
Trojan 通常透過 TLS 傳輸代理連線,設定需要伺服器位址、連接埠、密碼與相關 TLS 參數。伺服器名稱與憑證驗證會影響連線能否建立,IP 位址也可能與憑證網域不同。遇到憑證錯誤時,應核對名稱、時間與伺服器設定,不建議直接略過驗證。
Hysteria 2 是以 QUIC 為基礎的代理協定,底層使用 UDP,因此網路必須允許 UDP 通訊。驗證、TLS 與頻寬相關參數,需依伺服器及實際網路設定調整。Hysteria 與 Hysteria 2 不能直接互換,用戶端也必須支援相應協定。
流量進入核心後,會由比對條件、規則順序與目標策略共同決定去向。
規則分流會依網域、目的 IP、程序等條件,將連線交由指定策略處理。規則通常由上而下比對,第一條符合的規則會決定連線去向,因此具體規則應排在較廣泛的規則之前。這與全域模式不同:同一時間可以有連線直連,也可以有連線經由不同代理。
策略群組會將多個節點或其他策略整合成可供規則引用的目標。手動選擇、連線測試與故障轉移屬於不同的群組類型,選擇邏輯也不相同。規則引用群組名稱後,更換群組中的節點通常不必重寫規則,但群組名稱必須與設定中的引用一致。
GeoIP 會根據資料庫將目的 IP 分類至地區或其他集合,可用於 GEOIP 類型的規則。資料庫結果不代表網站所屬國家,也無法準確指出 CDN 背後內容的來源。若比對條件涉及網域解析,也應留意 no-resolve 參數及規則順序對解析行為的影響。
GeoSite 是依類別整理的網域資料,可將同類網站交由相同策略處理。分類名稱與涵蓋範圍取決於使用的資料來源,並非每個資料庫都提供相同集合。若比對結果異常,應檢查實際載入的資料、類別名稱及順位更前的規則,而不只是修改策略群組。
MATCH 是用來處理剩餘連線的預設規則,通常放在規則清單末尾。其後指定的是目標策略,例如 DIRECT 或已定義的策略群組名稱。若將 MATCH 放在前面,後續規則通常就不會有比對機會;預設流量走代理,也不代表整份設定處於全域模式。
網域解析方式與流量進入核心的路徑彼此相關,但不能混為一談。
DNS 會將網域解析為 IP 等記錄,是建立多數網路連線前的重要步驟。系統、瀏覽器與代理核心可能各自使用不同的解析路徑,修改其中一處未必會影響其他位置。排查解析問題時,應先確認由誰發出請求、使用哪個解析器,以及解析器的連線經由哪條路徑。
Fake-IP 模式會向應用程式回傳虛擬位址,並由核心保存網域與虛擬位址的對應關係。應用程式連線至該位址時,核心可還原網域資訊,再進行分流與代理處理。這不是目標網站的真實 IP;若應用程式依賴真實解析結果,可搭配例外網域與記錄逐項排查。
TUN 模式透過虛擬網路介面與路由設定,讓更多應用程式的 IP 流量進入代理核心。建立介面、修改路由通常需要額外權限,接管範圍也會受路由排除設定及平台實作影響。TUN 與全域模式並非同一概念:經 TUN 接管的連線仍可依規則直連或走代理。
DNS 洩漏是指解析請求未遵循預期的網路路徑,例如原本應經代理處理,卻直接送往本機網路的解析器。測試頁面顯示某個解析服務商,並不足以單獨證明請求的完整路徑。應綜合系統 DNS、瀏覽器安全 DNS、核心設定與連線記錄判斷,調整後再重新測試。
DoH 即 DNS over HTTPS,透過 HTTPS 傳送 DNS 查詢,改變的是解析請求的傳輸方式。它不會自動確保查詢經由代理,也無法取代路由與解析策略設定。使用網域形式的 DoH 位址時,也需確認解析器網域最初由誰解析,以免形成解析依賴循環。
從取得設定到實際生效,還要經過解析、載入、選擇策略與驗證連線等步驟。
訂閱通常是可定期取得節點或完整設定的網址,回傳內容由提供者決定。節點訂閱與完整設定並不相同;後者還可能包含策略群組、規則與 DNS 設定。訂閱網址可能包含存取憑證,分享記錄或截圖前應先遮蔽;更新後也要確認本機修改是否遭到覆蓋。
節點是一組連線至代理伺服器所需的參數,通常包含位址、連接埠、協定與驗證資訊。清單中的名稱只是方便辨識的標籤,不一定代表伺服器的實際位置。成功匯入節點不表示服務可用,還需要進行連線測試,並確認策略群組確實選用了該節點。
用戶端顯示的節點延遲,通常是透過該節點向測試位址發出請求所需的時間,不一定是 ICMP ping。測試目標、逾時設定與連線重用方式都會影響結果,因此不同用戶端顯示的數值不一定能直接比較。延遲較低不代表下載速度較快,仍須實際測試服務的連線表現。
YAML 是 Clash 生態系常用的設定文字格式,以縮排表示階層,並用連字號表示清單項目。編輯時應使用空格而非定位字元,並留意冒號、引號與同層欄位的對齊。語法正確不代表設定有效;策略名稱不存在或核心不支援欄位,也會造成載入或執行問題。
設定檔是用戶端用來儲存與切換設定的管理單位,可來自本機檔案或遠端訂閱。清單中有多份設定檔時,通常只有啟用的那份會用於目前執行;編輯其他設定檔不會立即改變連線。部分用戶端還會套用覆寫或合併設定,排查時應查看最終生效的設定,而不只是原始檔案。