CONFIG.YAML / 術語查詢
Clash 設定術語表。
從介面名稱找到對應的設定含義。依五大主題查詢 25 個常用術語,分清連線接管、DNS 解析與規則選擇,避免混淆不同層面的問題。
核心與用戶端
先確認目前使用的程式、核心與設定來源。同一個介面按鈕,在不同用戶端中可能對應不同的設定處理方式。
- mihomo / Clash.Metamihomo 核心
- mihomo 是由 Clash.Meta 演進而來的代理核心,負責協定連線、DNS 處理與規則比對等工作;Clash.Meta 是其沿革中的舊名稱。圖形介面通常只是管理核心的入口,介面更新與核心更新不一定同步。遇到設定欄位不支援時,先在用戶端的「關於」或核心資訊中確認實際版本,不要只看應用程式名稱。
- client / GUI用戶端
- 用戶端是使用者安裝並操作的應用程式,可用來匯入訂閱、選擇節點、設定系統代理及管理核心。啟動前可能會合併訂閱、覆寫設定或擴充設定,因此編輯訂閱來源檔案不一定會改變最終生效的內容。排查時應一併檢查用戶端開關與執行中的設定;選擇應用程式可參考用戶端評測比較。
- subscription / profile訂閱
- 訂閱通常是取得節點或整份設定的遠端入口,更新時會重新請求該資源。回傳內容可能是完整 YAML,也可能只是節點清單,須由用戶端或轉換流程辨識,並非所有連結都能直接互換。連結往往含有個人存取憑證,不宜出現在截圖、公開記錄或公開求助內容中;匯入方式請參閱匯入訂閱。
- proxies / server節點
- 節點是一組連線至代理伺服器所需的參數,通常包含伺服器位址、連接埠、協定與驗證資訊。節點名稱中的地區只是提供者標註,無法直接證明入口伺服器或實際出口的位置。單一節點連線失敗時,先改用同一份設定中的其他節點交叉比對,再判斷是伺服器無法連線、憑證失效,還是本機接管設定有問題。
- config.yaml / indentationYAML 設定格式
- YAML 是用來表示設定層級的文字格式,透過縮排區分父子欄位,清單項目通常以連字號開頭。縮排應使用空格而非定位字元,同一層的欄位須對齊;即使欄位仍在檔案中,也可能因層級變動而無法如預期生效。修改前先保留原設定,每次只調整一處,並先用用戶端檢查設定,再觀察實際運作情況。
代理協定
本機應用程式連線至代理入口所用的協定,與核心連線至遠端節點所用的協定不同。填寫前先確認參數適用於哪一段連線。
- HTTP / CONNECTHTTP 代理
- HTTP 代理是應用程式向代理入口送出請求的一種方式;造訪 HTTPS 網站時,通常透過 CONNECT 方法建立通道。目標網站使用 HTTPS,不代表本機代理入口也啟用了 TLS。為瀏覽器或命令列工具填寫位址時,請使用用戶端實際監聽的連接埠;
mixed-port可在同一入口接受 HTTP 與 SOCKS 連線。
- SOCKS5 / UDP ASSOCIATESOCKS5
- SOCKS5 是應用程式可明確指定使用的代理協定,支援 TCP 連線,也定義了 UDP 轉送機制;實際能否轉送 UDP,取決於應用程式及整條連線路徑。部分工具可選擇在本機解析網域名稱,或交由代理端解析,選擇不同會改變 DNS 路徑。若應用程式內已設定 SOCKS5,也要將這項設定列入排查,不能只檢查系統代理。
- ss / cipherShadowsocks
- Shadowsocks 是核心與遠端代理伺服器之間使用的加密代理協定,設定中常以
type: ss標示。位址、連接埠、加密方式與密碼都必須符合伺服器設定,部分節點還會附帶額外的外掛程式參數。成功匯入只代表設定已被辨識,不代表驗證與網路連線一定成功;舊版核心也可能不支援較新的加密方式。
- trojan / TLS / SNITrojan
- Trojan 通常透過 TLS 連線傳送代理流量;除了密碼,也要留意伺服器名稱與憑證驗證。連線位址與憑證對應的網域不一致時,應核對訂閱提供的 SNI 等參數,而不是直接關閉驗證。系統時間不正確、憑證過期或伺服器名稱填錯,都可能導致交握失敗;這與一般網路能否探測到節點是不同的問題。
- hysteria2 / QUICHysteria 2
- Hysteria 2 是以 QUIC 為基礎的代理協定,需要所在網路允許相應的 UDP 通訊。在部分封包遺失的連線環境中可能適用,但不能只憑協定名稱就認定速度一定較快。同一網路中的 TCP 類節點正常,這類節點卻持續逾時時,請檢查 UDP 限制、伺服器連接埠與防火牆;頻寬參數也應依照伺服器端要求設定。
運作模式
接管方式決定請求能否進入核心,運作模式則決定請求進入後如何處理。先分清這兩個層次,再選擇要調整的開關。
- mode: rule規則模式
- 規則模式會依據設定中的比對條件,為已進入核心的連線選擇直連、代理或拒絕策略。日常使用通常從此模式開始,接著可在連線清單中查看目標網域符合了哪條規則。規則模式不會讓所有應用程式自動進入核心;若連線清單中根本沒有目標請求,應先檢查接管方式。模式差異請參閱選擇運作模式。
- mode: global / GLOBAL全域模式
- 全域模式會將已進入核心的連線交由全域策略處理,適合短時間測試規則是否造成連線差異。名稱中的「全域」不代表會接管整台裝置:忽略系統代理設定的應用程式仍可能繞過核心。測試後請切回規則模式,並確認全域策略目前選用的節點,以免全域群組與日常策略群組選用不同節點而造成誤判。
- system proxy / mixed-port系統代理
- 系統代理是在作業系統中設定代理位址與連接埠,遵循這項設定的應用程式會將請求傳送至本機用戶端。某些遊戲、命令列工具或採用自有網路堆疊的應用程式不會讀取這項設定,因此開關已開啟不代表所有流量都已接管。退出用戶端後若網頁仍無法連線,請檢查系統是否留有指向已關閉連接埠的代理設定。
- tun / auto-routeTUN 模式
- TUN 透過虛擬網路介面接收 IP 封包,並配合路由設定將流量交給核心,可涵蓋部分不遵循系統代理設定的應用程式。桌面系統通常需要管理員權限、服務或驅動程式;行動裝置則通常需要 VPN 權限。啟用失敗時,先檢查權限與其他 VPN 是否衝突;TUN 只是流量接管入口,並不會自動確保 DNS 路徑與分流規則正確。
- url-test / timeout延遲測試
- 用戶端的延遲測試通常會測量經由節點連線至指定位址所需的時間,是否包含交握等階段則依實作而異。這不是下載頻寬測試,在不同測試位址、逾時門檻與網路狀態下得到的數值也不宜直接比較。測試逾時不一定代表所有網站都無法連線,應搭配實際連線情況與記錄判斷;詳細步驟請參閱節點延遲問題。
DNS 與解析
解析請求與服務連線可能走不同路徑。查看設定時,請一併確認由誰解析、查詢送往何處,以及查詢連線由誰接管。
- dns / nameserverDNS 網域解析
- DNS 用來將網域名稱解析為 IP 位址等記錄,讓應用程式找到要連線的目標。作業系統、瀏覽器、應用程式與代理核心可能各自快取結果或發出查詢,因此修改核心 DNS 後,既有連線不一定會立即改變。若網域連線失敗,但直接連線至位址正常,應檢查解析記錄與快取;不過直接連線至 IP 也可能因憑證或虛擬主機設定而失敗。
- enhanced-mode: fake-ipFake-IP 虛擬位址
- Fake-IP 會回傳虛擬位址給應用程式,並在核心中儲存位址與網域的對應關係,讓後續連線仍能套用網域規則。看到虛擬位址不代表解析到真實伺服器,也不代表設定異常。若部分區域網路服務或應用程式不相容,可針對相關網域檢查
fake-ip-filter,不必直接停用整個 DNS 模組。
- DNS leak / resolver pathDNS 洩漏
- DNS 洩漏是解析請求繞過預期路徑,送往其他解析服務的情況;判斷重點在於這是否符合預先設定的策略。偵測頁面顯示的解析器地區只能作為線索,不能單憑此點證明某項查詢已被網路業者得知。應交叉檢查瀏覽器的加密 DNS、系統設定、TUN 接管狀態與連線記錄;刻意讓直連網域使用本機解析,也不應一概視為異常。
- DoH / DoT加密 DNS
- DoH 透過 HTTPS 傳送 DNS 查詢,DoT 則使用 TLS;兩者都能保護查詢的傳輸過程,但不會讓查詢自動經由代理節點。解析服務仍能處理收到的網域查詢,連線路徑也需要另外確認。若上游 DNS 以網域名稱表示,也要考慮如何首次解析該上游位址,避免形成解析依賴循環。
- nameserver-policy依網域選擇解析器
nameserver-policy用來為不同網域或支援的比對條件指定上游 DNS,例如將內部網域交由組織內部的解析服務處理。這項設定改變的是解析器選擇,而非服務連線的最終出口,因此還須搭配規則分流檢查連線路徑。此欄位須放在dns層級內;使用複雜的比對語法時,應確認目前核心是否支援,不宜直接照抄其他版本的範例。
規則與分流
規則負責比對,策略群組負責選擇,提供器負責載入資源。設定中名稱相近的欄位,實際用途往往不同。
- rules / DIRECT / REJECT / MATCH規則分流
- 規則分流會依網域、IP 位址等條件,將連線交給相應策略。一般的
rules清單由上而下比對,第一條符合的規則就會決定連線去向。DIRECT代表直連,REJECT代表拒絕;清單末尾的MATCH通常用來處理其他未符合規則的流量。新增例外規則時,應放在會先行符合的廣泛規則之前,並透過連線記錄確認結果。
- proxy-groups / select / url-test策略群組
- 策略群組會將節點或其他策略整理成可供規則引用的目標,常見類型包括手動選擇、延遲選擇與故障轉移。切換群組不代表所有連線都會改用新節點:規則可能指向其他群組,已建立的連線也可能繼續沿用舊路徑。測試時先查看符合的群組,再確認該群組目前實際選用的成員,必要時重新建立目標連線。
- GEOIP / geodataGeoIP 位址歸屬
- GeoIP 會使用位址資料庫判斷目標 IP 所屬的地區等資訊,常用於依位址範圍分流。資料庫有更新週期,也可能存在誤差;比對結果不等同於裝置所在地或服務所屬公司的所在地。結果不符預期時,應核對實際目標 IP、資料庫來源與更新狀況;設定中是否使用
no-resolve也會影響網域連線的比對方式。
- rule-providers / RULE-SET規則集提供器
rule-providers用來載入本機或遠端的規則集合,將較大的網域與位址清單從主要設定中拆開管理。只宣告提供器不會自動參與分流,還須在規則清單中透過RULE-SET等方式引用,並指定流量去向。更新失敗時,請檢查資源網址、內容格式與行為類型是否相符;下載成功不代表規則已生效。
- proxy-providers / use節點提供器
proxy-providers用來獨立載入與更新節點集合,通常由策略群組透過use引用。它不是整份用戶端設定訂閱,無法直接取代模式、DNS 或規則設定;回傳的資源也必須符合核心要求。提供器更新後,群組仍是空的話,請檢查引用名稱、篩選條件與載入記錄;常見處理方式請參閱訂閱更新失敗。