核心與用戶端
核心負責實際處理網路連線,GUI 用戶端則將核心功能整理成可操作的介面。了解兩者分工,有助於判斷問題來自設定、核心,還是用戶端的外層功能。
- mihomo
-
mihomo 是由 Clash Meta 延續發展而來的代理核心,負責建立協定連線、處理 DNS、比對規則並轉送流量。多數圖形用戶端只是呼叫核心功能,再提供設定管理、系統代理與日誌介面。
排查問題時,應先區分用戶端介面設定與核心設定。日誌中出現的規則命中、DNS 查詢與連線錯誤,通常由核心直接產生。
- Clash Meta
-
Clash Meta 是 Clash 核心生態中的擴充實作,加入更多代理協定、規則功能與網路處理選項。相關文件中的 Meta 欄位,通常指向這套擴充語法或相容能力。
目前資料中可能同時看到 Clash Meta 與 mihomo 兩個名稱。閱讀舊設定時,需配合欄位與核心版本判斷,不應只依名稱推測功能是否可用。
- GUI 用戶端
-
GUI 用戶端是具備圖形介面的桌面或行動應用程式,常見功能包括更新訂閱、切換策略、系統代理、TUN 開關與檢視日誌。用戶端本身與代理核心可以分別更新,兩者版本不一定同步。
某項設定未出現在介面中,不代表核心不支援。部分進階欄位需要透過覆寫或直接編輯 YAML 設定啟用。
- YAML
-
YAML 是 Clash 常用的設定資料格式,透過縮排表達欄位層級。它對空格、冒號位置與清單符號較為敏感,Tab 字元、層級錯位或遺漏空格都可能導致解析失敗。
修改設定時,應保持相同層級的縮排一致。含有特殊符號的字串可用引號包住,避免內容被誤判為布林值、數字或註解。
- 設定檔
-
設定檔儲存連接埠、運作模式、DNS、節點、策略群組與規則表等設定,是核心啟動時讀取的主要輸入。訂閱產生的內容也會以設定檔形式載入用戶端。
設定可以下載,不代表核心一定能正確解析。載入失敗時,應先檢查 YAML 語法,再確認欄位是否受目前核心支援。
代理協定
協定決定用戶端如何與代理伺服器建立連線。系統代理入口使用的 HTTP、SOCKS5,與節點使用的 Shadowsocks、Trojan 屬於不同層面的概念。
- HTTP 代理
-
HTTP 代理介面接收支援代理設定的應用程式要求,常用於瀏覽器、下載工具與開發工具。HTTPS 網站通常透過 CONNECT 方法建立通道,代理不等於將目標網站改成一般 HTTP。
Clash 設定中的 HTTP 連接埠屬於本機監聽入口,與遠端節點採用何種協定沒有直接對應關係。
- SOCKS5
-
SOCKS5 是較通用的代理協定,可承載多種上層連線,並允許應用程式選擇在本機或代理端解析網域名稱。許多命令列工具與開發軟體支援直接填寫 SOCKS5 位址。
使用
socks5h這類寫法時,網域名稱通常交由代理端處理;一般socks5的解析行為則取決於應用程式實作。 - Shadowsocks
-
Shadowsocks 是以加密傳輸為基礎的代理協定。節點定義通常包含伺服器位址、連接埠、密碼與加密方式,任何一項不相符都會導致連線失敗。
設定中的加密方法必須與伺服器端一致。名稱相近的演算法也不能互換,複製節點參數時應保留原始拼寫。
- Trojan
-
Trojan 使用 TLS 建立加密連線,節點設定通常涉及伺服器、連接埠、密碼與憑證網域。啟用憑證驗證時,網域與憑證不相符會直接造成交握失敗。
sni用於指定 TLS 交握中的伺服器名稱。它可能與連線位址不同,但應與伺服器端部署及憑證設定保持一致。
規則與分流
規則會依序由上至下比對連線,命中後將流量交給策略群組、節點或內建動作。順序、目標名稱與規則資料是否更新,都會影響最終出口。
- 規則分流
-
規則分流是依網域、IP、連接埠、程序或規則集合判斷連線去向的過程。規則通常由上至下檢查,第一條命中的結果決定該連線使用哪個策略。
將寬泛規則放在前面,可能讓後面的精確規則永遠無法命中。修改規則表時,需要同時檢查順序與目標策略名稱。
- Rule Provider
-
Rule Provider 用於從獨立檔案或遠端位址載入規則集合。主要設定只需引用集合名稱,規則內容可依設定的時間間隔個別更新。
規則集需要宣告正確的行為類型與資料格式。下載失敗、路徑錯誤或格式不相符時,對應的規則引用可能無法正常運作。
- 策略群組
-
策略群組會將多個節點或其他策略組合成一個邏輯入口。規則通常指向策略群組,再由使用者選擇、自動測速、故障切換或負載分配決定具體出口。
策略群組可以繼續引用其他策略群組,但名稱必須完全一致。循環引用或引用不存在的名稱會造成設定錯誤。
- DIRECT
-
DIRECT 是內建的直連策略,表示連線不經過代理節點,由目前裝置直接存取目標位址。區域網路位址、裝置服務與適合本地出口的連線常使用此策略。
直連仍會受到本機路由、防火牆與 DNS 結果影響。命中 DIRECT 只能表示代理核心選擇直連,不代表目標一定可達。
- REJECT
-
REJECT 是拒絕連線的內建動作,常用於封鎖特定網域、位址或要求類型。它會在規則層終止符合條件的流量,而不是選擇某個代理節點。
過於寬泛的拒絕規則可能影響網頁資源、應用程式介面或系統服務。排查載入不完整時,可以在日誌中確認相關要求是否命中 REJECT。
- GeoIP
-
GeoIP 會依目標 IP 所屬地區進行比對,取決於本機地理資料庫。它適合處理已取得目標 IP 的連線,但結果會受到資料庫涵蓋範圍與更新時間影響。
網域對應的伺服器位址可能因地區、網路與 CDN 調度而變化。GeoIP 適合作為分流條件之一,不應理解為永久固定的位址歸屬。
- GeoSite
-
GeoSite 是依用途、服務或地區整理的網域集合。規則可以引用某個分類,批次比對相關網域,減少逐條維護網域後綴的工作量。
GeoSite 與 GeoIP 的比對對象不同:前者面向網域,後者面向 IP。資料庫過舊時,新網域或分類調整可能無法及時反映。
DNS 與解析
DNS 決定網域如何轉換為位址,也會影響規則能否繼續使用網域資訊。排查解析問題時,需要同時查看增強模式、解析伺服器與實際查詢出口。
- DNS 洩漏
-
DNS 洩漏是指網域查詢繞過預期的代理或加密解析路徑,改由系統預設 DNS、路由器或其他解析伺服器處理。它關注查詢實際送往何處,而不只是網頁連線使用哪個出口。
判斷時應結合系統 DNS、瀏覽器安全 DNS、用戶端 DNS 設定與 TUN 接管範圍。只修改一個 nameserver,不一定能涵蓋所有查詢來源。
- Fake-IP
-
Fake-IP 模式會先由核心回傳保留位址,並維護該位址與原始網域之間的對應。應用程式之後連線至此位址時,核心可以還原網域資訊並繼續執行網域規則。
部分區域網路裝置、連線檢測與依賴真實位址的服務可能需要加入
fake-ip-filter。例外範圍不宜無限擴大,否則會削弱網域對應的效果。 - Redir-Host
-
Redir-Host 模式會向應用程式回傳真實解析位址,同時嘗試保留網域與連線之間的關聯。它與 Fake-IP 的位址回傳方式不同,因此相容性表現與規則比對路徑也不同。
遇到依賴真實 IP 的應用程式時,可以比較兩種增強模式,但切換後應重新測試 DNS 出口、網域規則與本機服務探索。
- Nameserver
-
Nameserver 是設定中負責一般網域解析的伺服器清單,可填寫傳統 DNS、DoH 或其他受支援的位址。多部伺服器的選擇方式取決於核心設定與查詢結果。
若加密 DNS 位址本身使用網域名稱,核心還需要先解析該伺服器網域。相關引導解析設定錯誤時,可能形成無法完成的依賴鏈。
- DoH
-
DoH 是 DNS over HTTPS 的縮寫,透過 HTTPS 傳送 DNS 查詢。它可以加密裝置與解析伺服器之間的查詢內容,但不會自動決定後續網站連線走直連還是代理。
瀏覽器可能啟用獨立的 DoH 設定,進而繞過系統或用戶端 DNS。排查解析路徑時,應確認瀏覽器與作業系統是否存在額外入口。
訂閱與設定檔
訂閱負責提供可更新的設定內容,節點是其中的連線定義,覆寫則用於保留本機調整。測速與 TUN 是用戶端使用階段常見的輔助功能。
- 訂閱
-
訂閱是由伺服器提供並可定期更新的設定或節點集合。用戶端透過訂閱位址擷取內容,再將其解析為節點、策略群組與規則等可操作項目。
更新訂閱可能覆蓋先前直接修改的內容。需要長期保留的本機規則或 DNS 設定,更適合放在用戶端支援的覆寫或合併設定中。
- 節點
-
節點是單一代理伺服器的連線定義,通常包含協定、伺服器位址、連接埠與驗證參數。節點名稱只是顯示標籤,不能證明線路品質或實際位置。
同一節點可以被多個策略群組引用。修改或刪除節點名稱後,所有引用該名稱的策略群組也需要同步調整。
- 延遲
-
延遲通常是指用戶端向指定測試位址發起連線探測後取得的回應耗時。它可協助判斷節點是否可達並初步比較回應速度,但不等於下載速度或持續穩定性。
不同用戶端使用的測試位址、逾時時間與連線重用方式可能不同,因此數值不適合跨用戶端直接比較。偶發結果也應結合多次測試判斷。
- TUN 模式
-
TUN 模式透過系統虛擬網路介面接管流量,讓不支援手動代理設定的應用程式也能進入核心的規則處理流程。它通常比僅啟用系統代理涵蓋更廣。
啟用 TUN 可能需要系統權限,也可能與其他 VPN、虛擬網卡或安全軟體產生路由衝突。發生斷網時,應檢查預設路由、DNS 劫持與其他網路工具的運作狀態。
- 覆寫
-
覆寫是在不直接修改訂閱原文的情況下,補充、替換或刪除設定欄位。常見用途包括固定連接埠、調整 DNS、增加規則與修改策略群組。
不同用戶端對覆寫、合併與腳本處理的命名及執行順序可能不同。修改後應查看最終產生的設定,而不能只檢查覆寫片段本身。