PROTOCOL · CORE · COMPATIBILITY

Clash協定與核心參考

比較 SS、VMess、Trojan、VLESS、Hysteria2 與 TUIC 的設計取捨,並從連線特性、裝置資源、mihomo 相容性與訂閱格式建立選擇依據。

6 種常見協定 Clash 核心家族 行動裝置耗電表現 訂閱相容性檢查

01 · DECISION MODEL

先建立協定選擇架構

協定名稱不是速度排名

在 Clash Plus、Clash Verge Rev、FlClash 等用戶端中,節點旁顯示的 SS、VMess、Trojan、VLESS、Hysteria2 或 TUIC,首先代表用戶端與伺服器交換資料時採用的協定結構,而不是一份可以直接按速度排序的產品清單。一次連線的實際表現同時受到伺服器處理能力、線路往返時間、封包遺失率、壅塞程度、傳輸層、加密實作、用戶端核心與裝置效能影響。即使協定類型相同,兩個節點也可能因線路與伺服器負載不同而表現懸殊;反過來,不同協定在穩定網路中也可能帶來相近的網頁載入體驗。

因此,選擇協定應從「是否相容」開始,再考慮「是否適合目前網路」,最後才比較速度。相容性包括用戶端核心是否支援該協定、訂閱轉換過程是否保留必要欄位、傳輸層組合是否已實作,以及裝置系統能否正常建立 UDP 或 QUIC 工作階段。如果設定在匯入時就遺失關鍵欄位,後續測速便沒有意義。一般使用者優先採用訂閱提供方已驗證的完整設定,比手動將一種協定改成另一種更可靠;協定類型不能只修改名稱就完成轉換。

將影響因素拆成四個層次

第一層是基礎網路。固定寬頻通常延遲與封包遺失較穩定,TCP 類方案容易有平順表現;行動數據、公共 Wi‑Fi 或跨電信商鏈路可能出現瞬間封包遺失與網路切換,此時採用 UDP 且具備壅塞控制能力的 Hysteria2 或 TUIC 可能更具適應性,但前提是網路能穩定傳輸 UDP。第二層是伺服器與線路,同一協定若伺服器 CPU 飽和、出口壅塞或路由繞行,僅在用戶端更換參數並不能消除瓶頸。

第三層是協定與傳輸組合。VMess、VLESS 可搭配 TCP、WebSocket、gRPC 等傳輸方式,VLESS 也常與 TLS、REALITY 等安全層組合;SS 更接近精簡的加密代理結構;Trojan 依賴 TLS 語意;Hysteria2 與 TUIC 則建立在 QUIC 或 UDP 傳輸思路上。第四層是用戶端實作。mihomo 對較新的協定與規則能力涵蓋更完整,而較早的原版 Clash 設定能力有限。選擇協定時必須把這四層連在一起看,不能將網路問題、線路問題和核心問題全部歸因於協定名稱。

01

確認相容性

核對核心、訂閱欄位、傳輸層與驗證參數是否完整。

02

觀察網路

判斷目前鏈路較接近穩定的 TCP 環境,還是高封包遺失的行動網路。

03

測試實際任務

分別檢查網頁首次開啟、持續下載、語音視訊與待機恢復。

04

保留回退方案

為 UDP 受限、網路切換或核心差異準備另一類可用協定。

測試時記錄哪些項目

用戶端中的延遲測試通常只反映一次探測要求,不能完整代表長連線吞吐量與穩定性。更實用的測試應包含四項:首次開啟多個網站時的回應速度、持續下載一段時間後的吞吐量波動、影片或會議連線中的卡頓情況、裝置鎖定螢幕再喚醒後的恢復速度。每次只變更一個變數,例如固定同一網路與同一伺服器,再比較協定;或固定協定,比較 Wi‑Fi 與行動數據。若同時更換節點、網路、用戶端和協定,就無法判斷改善來自哪一層。

也應在記錄檔中確認失敗發生的位置。網域名稱解析錯誤、連線逾時、驗證失敗、TLS 交握錯誤、UDP 無法連線,分別指向不同問題。記錄檔顯示驗證失敗時,反覆切換全域模式無法解決問題;記錄檔顯示 DNS 解析異常時,更換協定也未必有效。關於記錄檔頁面與代理、設定頁面的對應關係,可繼續閱讀Clash Verge 介面功能速覽。建立這種分層檢查方式後,協定選擇才會從「嘗試哪個名稱」變成可重複、可核對的技術判斷。

02 · ESTABLISHED DESIGNS

SS、VMess 與 Trojan 的設計取捨

SS:精簡結構與廣泛實作

Shadowsocks 通常簡稱 SS,其核心思路是以相對精簡的結構完成加密代理傳輸。用戶端設定主要圍繞伺服器位址、連接埠、加密方法與驗證金鑰展開,協定本身不負責提供複雜的使用者體系或大量傳輸層語意。較少的協定開銷、成熟的跨平台實作與較低的設定複雜度,使 SS 長期適合資源有限的裝置,也方便在桌面與行動裝置之間維持一致設定。

SS 的實際安全性與效能高度依賴加密方法及其實作。目前的設定應使用伺服器明確提供、用戶端核心支援的 AEAD 或現代加密方法,不能只根據舊教學任意替換 cipher。加密方法是雙方協商前的固定設定,用戶端與伺服器不一致時會直接連線失敗。部分訂閱還會包含外掛程式或擴充參數,這些內容不屬於最基礎的 SS 欄位;匯入不同核心時,需要確認外掛名稱與參數是否保留。若節點可以匯入但連線立即中斷,應先比對加密方法、密碼、外掛與連接埠,而不是先調整代理規則。

VMess:身分資訊與多種傳輸組合

VMess 的設計包含用戶端身分、時間相關驗證以及豐富的傳輸組合,常見設定欄位包括伺服器、連接埠、UUID、alterId、cipher、網路類型與 TLS 設定。現代設定中 alterId 往往為零,但舊訂閱可能仍帶有非零值;是否可用取決於伺服器與核心實作,不能在不了解伺服器設定時自行刪改。VMess 可與 TCP、WebSocket、HTTP 或 gRPC 等傳輸方式組合,因此看到 VMess 只能確定上層協定類型,不能推斷完整的連線路徑。

這種組合能力帶來彈性,也增加設定出錯點。WebSocket 通常還要核對 path、Host 與 TLS server name;gRPC 需要核對 service name;TLS 情境要確認伺服器名稱和憑證驗證相關欄位。訂閱轉換器若只保留位址、連接埠與 UUID,卻遺漏 transport-opts,節點可能仍出現在清單中,卻無法完成連線。VMess 也不是「參數越多越快」,傳輸層額外封裝會帶來一定開銷,但在特定部署架構中可能具備相容性價值,效能判斷仍應回到實際鏈路。

Trojan:以 TLS 工作階段為基礎的驗證結構

Trojan 以 TLS 連線為基礎,透過密碼進行驗證。設定通常包括伺服器、連接埠、密碼、SNI、憑證驗證選項及可選的傳輸設定。理解重點不是「像某種網頁流量」,而是用戶端必須先正確完成 TLS 交握,之後才能繼續驗證與轉送。因此,系統時間、SNI、憑證鏈、伺服器網域與 TLS 實作都會影響連線。記錄檔出現 certificate、handshake 或 server name 相關錯誤時,應先檢查這些欄位。

Trojan 的協定結構較清晰,在穩定的 TCP 網路中通常容易維持平順連線。其 TLS 交握與加密會消耗一定 CPU,但在現代桌面裝置和多數手機上通常不是主要瓶頸。真正需要注意的是長連線數量、伺服器 TLS 處理能力及網路重新連線頻率。行動網路頻繁切換時,每次重新建立工作階段都要重新完成必要交握,因此待機恢復體驗可能受到網路狀態影響。若訂閱同時提供 Trojan 與 UDP 類協定,可以把 Trojan 作為穩定的 TCP 回退項,而不是假設某一種協定能涵蓋所有網路。

協定 主要設定重點 典型優勢 常見失敗位置
SS 加密方法、密碼、外掛參數 結構精簡、實作廣泛、資源需求較低 cipher 不一致、外掛欄位遺失
VMess UUID、傳輸類型、TLS、路徑或服務名稱 傳輸組合豐富、舊有設定涵蓋範圍廣 傳輸選項遺漏、時間或身分參數錯誤
Trojan 密碼、SNI、憑證鏈、TLS 設定 設定邏輯清晰、TCP 鏈路表現平穩 TLS 交握、憑證名稱或驗證失敗

這三類協定都不應只按「新舊」判斷是否值得使用。SS 的精簡在低效能裝置上仍有價值,VMess 的既有部署與傳輸組合仍可能符合特定設定,Trojan 在穩定 TCP 環境中也有明確定位。更合理的做法是先驗證伺服器提供的完整組合,再結合記錄檔和實際任務進行比較。若某個設定長期穩定、資源占用合理且訂閱更新正常,僅因協定名稱較早就更換,並不會自動改善體驗。

03 · CURRENT OPTIONS

VLESS、Hysteria2 與 TUIC 的適用範圍

VLESS:分開理解驗證與加密層

VLESS 使用 UUID 等資訊表達用戶端身分,但協定本身不提供與 VMess 相同的內建加密思路,實際連線安全性通常由 TLS、REALITY 或其他外層機制承擔。理解 VLESS 時必須將協定、傳輸層與安全層分開:VLESS 決定部分驗證與轉送結構,TCP、WebSocket、gRPC 等決定承載方式,TLS 或 REALITY 決定相應的安全交握。用戶端清單只顯示 VLESS 時,仍需展開設定核對 network、tls、servername、reality-opts 和 flow 等欄位。

VLESS 設定中的 flow 並不是可以隨意填寫的效能開關。某些組合會使用特定流量控制值,用戶端、伺服器與底層實作必須一致;錯誤值通常會造成交握或資料傳輸失敗。REALITY 設定還可能包含 public-key、short-id 和 servername,這些欄位具有配套關係。訂閱轉換若改寫欄位名稱、刪除空值時誤刪必要參數,或舊版用戶端不認識相關結構,都會導致「節點存在但無法連線」。因此 VLESS 更適合由支援 mihomo 的現代用戶端完整匯入,而不是複製舊版 Clash 範例後手動拼接。

Hysteria2:面向高封包遺失鏈路的 QUIC 思路

Hysteria2 運作於基於 UDP 的 QUIC 傳輸之上,重點是利用現代壅塞控制與多路複用能力,適應延遲、抖動或封包遺失較明顯的鏈路。這不代表它在所有網路中都會更快:當 UDP 路徑穩定、伺服器頻寬充足且參數合理時,持續傳輸可能維持良好吞吐量;如果本地網路對 UDP 限速、路由品質不佳或中間設備頻繁回收 UDP 工作階段,則可能出現連線逾時、速度波動或待機恢復緩慢。

常見設定欄位包括伺服器位址、連接埠、驗證資訊、TLS server name、憑證驗證以及頻寬相關參數。頻寬值用於協助壅塞控制判斷傳送節奏,不是數字填得越大就能獲得越高速度。設定明顯高於實際線路能力時,可能造成排隊與封包遺失;設定過低則會限制吞吐量。較新的實作也可能依模式自動調整,使用訂閱下發的值通常比盲目修改更穩妥。若用戶端記錄檔顯示 UDP timeout,應先更換網路交叉測試,並確認系統防火牆、路由器與伺服器連接埠,而不是只反覆提高頻寬參數。

TUIC:低延遲工作階段與 UDP 傳輸

TUIC 同樣以 QUIC 和 UDP 為基礎,著重快速建立連線、多路複用與降低隊頭阻塞影響。設定通常包含 UUID、密碼、伺服器名稱、壅塞控制選項及 UDP 中繼模式等。不同實作或設定世代之間可能存在欄位差異,訂閱中的協定標識、版本語意與驗證結構必須與伺服器一致。mihomo 可以識別常見 TUIC 設定,但舊核心或舊版用戶端可能無法解析;匯入後被忽略不代表訂閱為空,也可能是核心不支援該節點類型。

TUIC 適合需要頻繁建立工作階段、網路品質存在波動且 UDP 可用的環境,但它不是 TCP 協定的全面替代方案。企業 Wi‑Fi、訪客網路、部分行動網路或嚴格設定的路由環境可能限制 UDP;此時 TUIC 與 Hysteria2 可能同時失效。實際設定中應保留 SS、Trojan 或其他 TCP 傳輸節點作為回退。對於語音、遊戲和即時通訊,還要區分「用戶端到伺服器使用 UDP」與「目標應用是否經由 UDP 轉送」這兩層,前者可用不代表後者的策略與規則一定正確。

proxies:
  - name: "VLESS-Reference"
    type: vless
    server: node.example.invalid
    port: 443
    uuid: 00000000-0000-4000-8000-000000000000
    network: tcp
    tls: true
    servername: node.example.invalid

  - name: "Hysteria2-Reference"
    type: hysteria2
    server: node.example.invalid
    port: 443
    password: "your-password"
    sni: node.example.invalid

上方片段用於說明 mihomo YAML 中欄位的層級,位址、身分與密碼是明確的示例值,不能直接用於連線。實際訂閱可能採用不同欄位組合,例如 VLESS 增加 REALITY 參數,Hysteria2 增加連接埠範圍或頻寬設定。編輯設定後,應先使用用戶端的設定檢查功能,再觀察記錄檔是否出現 unsupported、missing field、authentication 或 handshake 等資訊。若設定來自訂閱,優先在訂閱來源修正,或使用明確支援目標格式的轉換方式,避免每次更新都覆蓋本地修改。

04 · PERFORMANCE

如何比較連線速度、吞吐量與資源占用

首次開啟速度與持續吞吐量不是同一項指標

使用者感受到的「快」至少包含三類指標。第一類是連線建立時間,包括 DNS 查詢、到伺服器的網路往返、TCP 或 QUIC 建立連線、TLS 交握和協定驗證。網頁由許多短請求組成時,連線建立與複用效率會明顯影響首次開啟體驗。第二類是持續吞吐量,主要受線路頻寬、壅塞控制、封包遺失恢復與伺服器出口影響。第三類是抖動與尾端延遲,這決定視訊會議、語音和互動式應用是否偶爾卡頓。只看一次延遲數字,無法涵蓋後兩類表現。

SS 的協定處理相對精簡,在 CPU 較弱的裝置上容易維持低開銷;Trojan 及使用 TLS 的 VMess、VLESS 需要完成 TLS 相關運算,但現代處理器通常能高效完成。Hysteria2 與 TUIC 的 QUIC 堆疊需要維護 UDP 工作階段、壅塞狀態與加密環境,在高吞吐情境下可能使用更多 CPU,不過在高封包遺失鏈路中,也可能因恢復機制更合適而取得更穩定的有效吞吐量。資源占用不能脫離網路品質討論:協定處理多一點,但減少重新傳輸等待,整體任務反而可能更早完成。

加密、封裝與多路複用的代價

任何協定都會產生標頭、驗證或加密開銷,差異通常體現在每條連線的狀態數量、封裝層數與資料封包大小。WebSocket、gRPC、TLS 等組合會增加額外處理,UDP 上的 QUIC 也有自己的控制框架與確認機制。對於大檔案傳輸,這些固定開銷占比可能較低;對於大量短連線,小封包與頻繁交握的影響更明顯。多路複用可以減少重複建立連線,但並非越多越好:過多邏輯連線集中到一條底層連線後,底層連線一旦抖動,多個任務可能同時受影響。

mihomo 中的連線複用、TCP 並行與 UDP 處理選項應依用戶端版本與訂閱說明使用,不宜從不同教學複製一組所謂「通用最快參數」。尤其是頻寬、壅塞控制與連線池參數,必須與實際線路相符。行動網路的瞬時頻寬變化很大,固定上行與下行值只能作為估計。測試時可以先維持訂閱預設值,再逐項調整;每次至少涵蓋網頁、小檔案、持續傳輸與休眠恢復,確認收益不是偶然峰值。

觀察面向 SS VMess / VLESS / Trojan Hysteria2 / TUIC
建立連線組成 結構較精簡,視外掛而定 傳輸層與 TLS 組合決定交握次數 建立 QUIC 連線並維護 UDP 工作階段
高封包遺失適應性 主要依賴底層 TCP 恢復機制 TCP 組合依賴 TCP,具體取決於傳輸層 壅塞控制可針對波動鏈路運作
CPU 負載 通常較低 受 TLS、封裝與連線數量影響 高吞吐時需要處理 QUIC 與壅塞狀態
對網路限制的敏感點 連接埠、外掛與伺服器設定 TLS、SNI、傳輸欄位完整性 UDP 可達性、工作階段維持與限速

以可重現流程進行比較

建議先關閉背景下載與系統更新,固定一台裝置、一種網路及同一時段。每個候選節點先進行一次連線測試,再連續開啟相同的一組網頁,接著執行時間足夠長的檔案傳輸或影片播放,最後讓裝置鎖定螢幕數分鐘後恢復。記錄不必精確到小數點,而應包括首次開啟是否穩定、持續傳輸是否週期性下降、語音是否出現長時間停頓、喚醒後是否需要手動重新連線。重複兩到三輪後再作判斷,可以排除快取與瞬時壅塞。

記錄檔和系統監視器有助於定位資源瓶頸。若單核心 CPU 長時間接近滿載,而網路吞吐量無法繼續上升,可能是裝置處理能力或加密實作受限;若 CPU 負載較低但封包遺失與重傳明顯,重點應轉向線路;若多個協定在同一節點同時變慢,則更可能是伺服器或出口問題。記憶體方面,規則集規模、連線數量與 DNS 快取往往比單一協定類型更有影響。比較協定時應保持規則與 DNS 設定一致,避免將大型規則載入造成的記憶體差異歸因於協定。

05 · MOBILE AND PLATFORM

行動裝置耗電、網路切換與平台差異

耗電量來自持續運作方式

行動裝置的耗電表現不能簡單等同於協定加密強度。影響耗電的主要因素包括無線模組保持活躍的時間、連線重建頻率、背景保活方式、資料傳輸總量、DNS 要求數量、規則比對負擔以及 CPU 處理時間。一個協定若能快速完成任務並讓無線模組回到低功耗狀態,即使瞬間 CPU 使用率略高,總耗電量也可能較低;另一個協定若在不穩定網路中持續重新傳輸或頻繁重新連線,即使單次處理較輕,也可能消耗更多電量。

SS 在設定簡單、鏈路穩定時通常具有較低的處理負擔。Trojan、VMess 或 VLESS 搭配 TLS 時會產生交握與加密成本,但長連線複用正常時,持續使用的差異可能並不顯著。Hysteria2 與 TUIC 需要維持 UDP 或 QUIC 工作階段,網路穩定時可以減少部分等待;當系統頻繁切換基地台、路由器回收 UDP 對映或背景策略限制活動時,工作階段重建可能增加喚醒次數。實際耗電結果還與 Android 廠商的背景限制、iOS 網路延伸機制及用戶端實作有關,不能僅根據協定名稱預判。

Android:背景策略與 VPN 服務

Android 用戶端通常透過系統 VPN 服務接管流量。Clash Plus、Clash Meta for Android、FlClash 與 Surfboard 的介面和功能範圍各不相同,但都會受到系統省電策略、背景活動權限和廠商程序管理影響。出現鎖定螢幕後斷流時,應先確認用戶端是否仍在執行、VPN 標誌是否保留、系統是否限制背景耗電,再檢查協定。若應用程式程序被系統停止,改用另一種協定通常無法解決根本原因。

在 Android 上還應注意 IPv6、私人 DNS、按應用程式代理和熱點分享。某些應用程式會直接使用 IPv6,若設定只處理 IPv4,可能表現為部分應用程式無法連線;私人 DNS 與用戶端 DNS 劫持策略並存時,解析路徑可能與預期不同。按應用程式代理會改變進入核心的流量範圍,測試協定時應確認目標應用程式確實包含其中。Hysteria2 或 TUIC 在行動數據上異常時,可切換至 Wi‑Fi 重新測試;若 Wi‑Fi 正常而行動網路持續逾時,應優先判斷 UDP 路徑與網路策略。

iOS:系統網路延伸功能與前後台切換

iOS 用戶端依賴系統提供的網路延伸能力,連線狀態、記憶體預算與背景行為由系統統一管理。本網站下載清單中的 iOS 首推用戶端為 Clash Plus,可從iOS 下載區進入 App Store。使用時應注意系統設定中的 VPN 狀態、用戶端設定是否啟用,以及切換 Wi‑Fi 與行動網路後是否自動恢復。iOS 不會向一般使用者公開與桌面系統相同的程序控制細節,因此排查重點是系統 VPN 狀態、設定記錄與網路切換結果。

行動裝置使用 UDP 類協定時,切換網路會改變本地位址與 NAT 對映。QUIC 具備處理連線變化的相關機制,但實際能否順利恢復仍取決於用戶端、伺服器與網路路徑。若切換網路後長時間無法恢復,可以在用戶端中斷後重新連線,並檢查記錄檔是否反覆出現 timeout;如果 TCP 類節點能立即恢復,而 UDP 類節點持續失敗,表示目前網路不利於 UDP 工作階段,應暫時使用 TCP 回退項。

桌面平台的差異重點

Windows、macOS 與 Linux 通常沒有手機電池和背景凍結問題,但系統代理、TUN 權限、防火牆與睡眠恢復更為關鍵。Windows 的部分應用程式可能不完全遵循系統代理,需要 TUN 模式或在應用程式內設定;商店應用程式還可能受到迴圈存取限制,可參考Windows UWP 應用程式迴圈存取限制排查。macOS 上應區分系統代理與虛擬網路介面,睡眠後若連線異常,可先重新啟動系統代理或 TUN。Linux 則要重點確認桌面代理設定、路由權限、systemd 服務狀態和 DNS 管理元件。

行動裝置優先檢查

背景權限、VPN 狀態、切換網路後的恢復、UDP 可達性、按應用程式代理與 DNS 路徑。

桌面裝置優先檢查

系統代理、TUN 權限、防火牆、應用程式代理行為、睡眠恢復與路由表。

評估行動裝置耗電時,建議使用系統電池統計觀察完整使用週期,而不是盯著幾分鐘內的瞬間百分比。維持相近的螢幕使用時間、資料量和應用程式任務,分別測試候選協定。若某協定在訊號較差時導致裝置持續發熱、背景活動時間明顯增加或喚醒後反覆重新連線,應優先更換穩定節點或回退協定。耗電表現本質上是協定、網路、用戶端和系統排程共同作用的結果,選擇目標應是減少無效工作,而不是追求某個抽象的最低開銷標籤。

06 · CORE FAMILY

原版 Clash、Meta 與 mihomo 的家族關係

用戶端介面與核心是兩個層次

Clash 生態中的「用戶端」與「核心」需要分開理解。用戶端負責視窗介面、訂閱管理、系統代理、TUN 權限、記錄檔顯示和更新流程;核心負責讀取設定、建立代理連線、執行規則、處理 DNS 與轉送流量。同一個核心可以由不同介面封裝,同一個用戶端專案也可能在發展過程中更換核心。因此,判斷協定是否支援時,應查看用戶端實際使用的核心,而不是只看軟體名稱。

原版 Clash 奠定了 YAML 設定、代理群組、規則比對和控制介面等基本結構,許多訂閱格式也以其欄位為基礎。隨著協定與網路功能擴充,Clash Meta 分支增加了更多協定、傳輸方式、DNS 能力與規則擴充。該分支後來以 mihomo 名稱持續發展。日常語境中的 Meta 設定、Clash Meta 核心與 mihomo 往往指向同一條演進路線的不同階段,但排查時仍應以目前用戶端顯示的核心名稱與文件為準。

功能差異如何影響協定選擇

較早的原版 Clash 能識別 SS、VMess、Trojan 等常見類型,但不會自動支援後來新增的所有協定與欄位。VLESS、Hysteria2、TUIC、REALITY 相關選項以及較新的 DNS 與規則能力,通常需要 mihomo。若將包含這些節點的訂閱匯入只支援舊核心的用戶端,常見結果包括節點被跳過、設定驗證失敗、未知欄位被忽略,或整份設定無法載入。這類問題不是節點線路故障,而是在解析階段就已不相容。

Clash Plus、Clash Verge Rev、FlClash、Clash Nyanpasu 等現代 GUI 用戶端在支援平台、介面功能與核心整合方面各有差異。本網站下載頁將 Clash Plus 列為全平台首推項目;Linux 使用者也可依桌面環境選擇 Clash Verge Rev 或 FlClash。選擇用戶端時不只要看能否安裝,還應確認它是否使用符合訂閱需求的核心、是否能更新核心、能否顯示設定檢查錯誤,以及是否支援系統所需的 TUN 模式。對於伺服器或路由器,可直接使用 Mihomo 核心,但這要求使用者自行管理設定檔、服務啟動與記錄檔。

層次 主要職責 與協定相容性的關係
GUI 用戶端 訂閱、介面、系統代理、TUN、更新與記錄檔入口 決定核心如何被封裝、呼叫與更新
原版 Clash 核心 基礎代理、策略組、規則與 DNS 處理 適合較早的常見協定與設定結構
Clash Meta / mihomo 擴充協定、傳輸、DNS、規則與平台能力 涵蓋 VLESS、Hysteria2、TUIC 等現代設定
訂閱或 YAML 描述節點、策略組、規則與 DNS 欄位必須符合目前核心語法

設定相容性並非完全向下相容

mihomo 通常能讀取大量以 Clash 結構編寫的設定,但不能因此假設所有擴充設定都能反向交給原版核心。包含新協定、新規則類型或擴充 DNS 欄位的設定,回到舊核心時可能失敗。即使兩個核心都認識同一欄位,預設行為也可能不同,例如 DNS 處理順序、規則提供者載入方式、健康檢查行為或 TUN 網路堆疊選擇。遷移用戶端後,應重新檢查設定驗證結果、策略組成員、DNS 解析與規則命中,而不是只確認節點清單出現。

設定檔中的頂層結構也應保持清晰:proxies 存放節點,proxy-groups 定義選擇與測試邏輯,rules 決定流量去向,dns 管理解析行為。訂閱更新可能只替換其中一部分,也可能覆蓋整份設定。用戶端提供的覆寫、合併或腳本功能,用於在更新後穩定加入本地設定,但具體語法依用戶端而異。不熟悉合併順序時,先保留訂閱原始設定並逐項新增,避免一次匯入大量擴充欄位後難以定位錯誤。

如何確認目前使用的核心

在用戶端的設定、關於或核心頁面查看名稱;啟動記錄通常也會列印核心識別與設定載入結果。不要根據安裝包名稱猜測。若記錄出現 unsupported proxy type,可先確認核心是否為 mihomo,再確認用戶端是否啟用了正確的核心檔案。若核心啟動成功但設定載入失敗,查看錯誤行號與欄位名稱;若設定成功但連線失敗,再轉向驗證、TLS、DNS 與網路排查。將「用戶端啟動」、「設定解析」、「節點連線」、「規則轉送」分成四個階段,可以大幅減少無效嘗試。

07 · SUBSCRIPTION

訂閱格式與設定相容性檢查

訂閱位址不等於固定格式

「訂閱連結」描述的是取得設定的方式,不代表回傳內容一定採用同一種格式。伺服器可能回傳完整 Clash YAML、只包含節點的 YAML、經過編碼的 URI 清單,或針對特定用戶端產生的設定。用戶端匯入時要先取得內容,再依回應格式解析。連結能在瀏覽器中開啟,只能說明伺服器回傳了資料,不能證明資料符合目前用戶端與核心的要求。

完整 Clash 或 mihomo 設定通常包含代理節點、策略組、規則、DNS 與連接埠設定;節點訂閱可能只有 proxies 資料,策略組和規則則由用戶端範本補充。URI 清單則使用 ss://vmess://trojan://vless://hysteria2://tuic:// 等形式分別表達節點。不同 URI 對複雜傳輸參數的表達能力與實作一致性不同,轉換過程中最容易遺失路徑、SNI、ALPN、指紋、REALITY 和壅塞控制欄位。

匯入前後的四次核對

第一次核對回應狀態。匯入失敗時先確認訂閱位址沒有多餘空格,存取時沒有回傳登入頁、錯誤頁或空白內容。第二次核對節點數量與協定類型,確認預期的 Hysteria2、TUIC 或 VLESS 節點沒有在解析階段消失。第三次核對關鍵欄位,選擇一個節點展開查看伺服器、連接埠、驗證、TLS 與傳輸設定。第四次核對策略組,節點成功解析後還要加入目前策略組,否則代理頁面可能仍只顯示舊節點。

訂閱更新是重新取得與合併的一個流程。若更新後本地修改消失,表示修改位於訂閱管理範圍內;應使用用戶端提供的覆寫或設定合併機制,而不是每次直接編輯產生的檔案。若更新後節點重複,可能是同時啟用了多個內容相同的訂閱,或舊設定沒有被替換。若更新時間正常但節點內容沒有變化,可查看記錄檔與回應快取,並確認訂閱服務確實回傳了新內容。更完整的入口操作與錯誤分類可參考Clash 訂閱連結匯入方法

FORMAT 01

完整 mihomo YAML

可攜帶節點、策略組、規則與 DNS;功能完整,但對核心語法與欄位相容性的要求最高。

FORMAT 02

Clash 節點 YAML

重點提供 proxies,通常要由用戶端或範本補充策略組;應確認節點是否自動加入可選組。

FORMAT 03

協定 URI 清單

方便逐個節點表達與分享,但複雜擴充欄位可能因產生器與解析器差異而遺失。

欄位遺失時如何定位

首先比較訂閱原始內容與用戶端匯入後的節點詳細資訊。若原始內容已缺少欄位,問題在訂閱產生端;若原始內容完整而用戶端缺失,問題可能在用戶端解析器、訂閱轉換或核心支援。VMess 和 VLESS 重點查看 network、servername、ws-opts、grpc-opts、reality-opts 與 flow;Trojan 重點查看 password、sni 和 TLS;SS 重點查看 cipher、password 與 plugin;Hysteria2 和 TUIC 重點查看驗證、SNI、壅塞控制與 UDP 相關選項。

其次查看設定檢查錯誤。YAML 對縮排敏感,清單項目、映射與字串層級錯誤會導致整份設定無法讀取。節點名稱包含冒號、井號或特殊字元時,使用引號可以減少歧義。布林值、數字和字串也不應混用,例如連接埠應維持數字語意,而 UUID、密碼和路徑通常作為字串。手動編輯後,先讓核心完成語法檢查,再啟動系統代理,避免將格式錯誤誤判為網路問題。

mixed-port: 7890
mode: rule

proxy-groups:
  - name: "協定選擇"
    type: select
    proxies:
      - "VLESS-Reference"
      - "Hysteria2-Reference"
      - DIRECT

rules:
  - DOMAIN-SUFFIX,example.com,協定選擇
  - MATCH,協定選擇

這段設定展示策略組與規則如何引用節點名稱。引用名稱必須與 proxies 中完全一致,包括大小寫與空格;節點改名後,策略組中的舊名稱會失效。實際設定通常還包含 DNS、規則提供者與更多策略組,但排查時可以先縮小到最小結構,確認一個節點能建立連線,再逐步恢復其他部分。大段複製未知設定會同時引入多個變數,不利於判斷問題位置。

訂閱轉換的界線

轉換工具可以將一種容器格式改寫為另一種,但不能憑空補齊伺服器參數,也不能將協定本身轉換成另一種協定。它能做的是映射欄位、產生策略組、篩選節點與調整名稱。對新協定或擴充傳輸的支援取決於轉換器本身的實作;如果轉換器不認識某欄位,即使來源訂閱正確,輸出也可能不完整。涉及 VLESS REALITY、Hysteria2 或 TUIC 時,優先使用伺服器直接提供的 mihomo 格式,並在更新後抽查關鍵欄位。

遇到訂閱為空、格式無法識別或更新失敗時,可先查看常見問題中的安裝設定分類。排查順序應保持明確:位址可存取、回應內容正確、格式可識別、核心支援協定、關鍵欄位完整、節點進入策略組、連線記錄正常。依此順序逐層確認,比頻繁刪除用戶端和重新安裝更容易找到根本原因。

08 · PRACTICAL CHOICE

依使用情境選擇協定並完成排查

穩定家用寬頻與日常網頁

在延遲與封包遺失較穩定的家用寬頻中,協定差異往往小於線路差異。SS、Trojan、VMess 或 VLESS 的 TCP 類組合都可作為日常選擇。優先選擇訂閱中設定完整、用戶端記錄乾淨、網頁首次開啟穩定的節點。若裝置效能有限,結構較精簡的 SS 值得先測試;若訂閱提供維護良好的 Trojan 或 VLESS TLS 設定,也可直接使用。此情境沒有必要僅為追求協定名稱而切換到 UDP 類方案,除非持續傳輸或高封包遺失測試顯示明確收益。

家用網路中若所有協定都在固定時段變慢,應檢查寬頻壅塞、Wi‑Fi 訊號、路由器負載與伺服器出口。若只有某一個傳輸組合失敗,則檢查對應連接埠、TLS、SNI 與傳輸路徑。使用規則模式時,還要確認測試流量確實經過所選策略組;規則命中 DIRECT 時,切換節點不會影響結果。記錄檔頁面可用於核對目標網域最後命中了哪條規則與哪個策略。

行動數據、公共 Wi‑Fi 與高抖動鏈路

行動數據或公共 Wi‑Fi 的延遲、頻寬與封包遺失變化較大。若 UDP 路徑穩定,可以比較 Hysteria2、TUIC 與一個 TCP 回退節點。測試重點是切換網路後的恢復、持續使用期間的停頓與裝置發熱,而不是單次峰值速度。Hysteria2 的頻寬設定應接近實際能力,TUIC 的壅塞控制與 UDP 中繼設定應採用訂閱提供的組合。切換網路後若 UDP 類節點持續逾時,立即改用 Trojan、SS 或其他 TCP 節點,比不斷重試更有效。

公共 Wi‑Fi 還可能要求先透過入口網站完成網路驗證。連線 Clash 前,應先暫停系統代理並確認基礎網路可存取;完成驗證後再啟用用戶端。若基礎網路本身未連通,任何協定都會失敗。部分網路允許 TCP 但限制 UDP,此時 Hysteria2 與 TUIC 同時不可用是可預期的現象。策略組可以將穩定的 TCP 節點設為 fallback 候選,但自動健康檢查只表示探測位址可達,仍需用實際應用程式驗證。

持續下載、影片與即時通訊

持續下載應關注長時間吞吐量與波動。線路品質良好時,多種協定都可能接近頻寬上限;高封包遺失時,Hysteria2 或 TUIC 的壅塞控制可能表現更好,但伺服器頻寬仍是硬性限制。影片播放還受內容分發、緩衝策略與規則分流影響,不能將一次卡頓直接歸因於協定。應確認影片網域進入預期策略組、DNS 回傳結果合理,並觀察同一節點在不同時段的表現。

即時通訊更重視抖動、尾端延遲與 UDP 轉送。用戶端到伺服器使用 QUIC,不代表目標應用程式的每個 UDP 封包都一定會依預期轉送;需要確認節點支援 UDP、用戶端啟用相應能力,且規則沒有將相關流量分流到錯誤出口。若語音可以連線但週期性中斷,檢查網路切換、UDP 工作階段逾時與 Wi‑Fi 訊號;若完全無法建立連線,則檢查應用程式是否經過 VPN、DNS 是否正常,以及伺服器是否支援對應轉送。

低效能裝置、路由器與伺服器

資源有限的路由器應優先控制規則集規模、連線數量與記錄等級,再比較協定。SS 的精簡實作通常適合作為基礎選項;TLS 或 QUIC 協定能否達到預期吞吐量,要看裝置是否具備足夠 CPU 與加密能力。mihomo 核心適合需要現代協定、規則和 DNS 功能的環境,但啟用大量規則提供者、複雜 DNS 與高並行會增加記憶體使用量。本網站Linux 與核心下載區提供面向伺服器與路由器使用者的 Mihomo 檔案入口,一般桌面使用者更適合使用帶介面的用戶端。

伺服器環境應將核心作為系統服務管理,設定啟動失敗時查看服務記錄與結束狀態。升級核心前先儲存目前設定,並執行設定檢查。若新協定節點無法載入,確認使用的二進位檔架構與設定語法;若服務能啟動但區域網路裝置無法使用,再檢查監聽位址、防火牆、路由與區域網路存取設定。協定選擇只是其中一個層次,系統網路設定錯誤不會因更換節點類型而消失。

使用情境 優先測試 保留回退 重點觀察
穩定寬頻與網頁 SS、Trojan、VMess 或 VLESS TCP 組合 任一經驗證的同類節點 首次開啟、TLS 錯誤、規則命中
高抖動行動網路 Hysteria2 或 TUIC SS、Trojan 或 VLESS TCP 切換網路後恢復、UDP 逾時、耗電量
持續傳輸 逐一實測線路穩定的候選協定 不同線路或不同傳輸類型 長時間吞吐量、封包遺失、CPU
低效能裝置 精簡 SS 或經驗證的輕量設定 減少規則與並行後的現代協定 單核心使用率、記憶體、裝置溫度

一套可執行的最終決策順序

第一步,選擇支援訂閱協定的現代用戶端。需要跨平台一致體驗時,優先從 Clash Plus 開始,再依系統與介面需求比較 Clash Verge Rev、FlClash 等選項。第二步,確認核心為 mihomo,並讓設定通過語法檢查。第三步,從訂閱中各選一個 TCP 類節點與一個 UDP 類節點,核對驗證、TLS、傳輸與策略組欄位。第四步,在常用網路中執行網頁、持續傳輸、即時應用程式與待機恢復測試。第五步,根據記錄檔將失敗歸入解析、驗證、TLS、DNS、UDP、規則或系統代理,而不是只記下「這個協定不行」。

第六步,為主要情境保留一個首選項和一個回退項。家用寬頻可以選擇穩定的 Trojan、VLESS 或 SS,並保留另一條線路;行動網路在 UDP 可用時可以使用 Hysteria2 或 TUIC,同時保留 TCP 節點;資源有限的裝置則優先選擇處理負擔可控、設定簡單的方案。第七步,訂閱更新或用戶端升級後抽查節點欄位與策略組,不要預設舊結果永久有效。網路、伺服器和核心都會變動,選擇應是一套可重複驗證的方法。

若所有節點都無法連線,先回到基礎鏈路:確認裝置能正常連網、系統時間正確、訂閱可以更新、設定已啟用、代理模式與系統代理狀態一致,再查看第一條明確的錯誤記錄。若只有特定應用程式異常,檢查應用程式是否遵循系統代理、是否需要 TUN、是否使用獨立 DNS 或 UDP。若只有某一類協定異常,再檢查對應核心支援與欄位。進一步的錯誤分支可在FAQ 問題排查中查閱,策略組自動選擇邏輯可參考url-test、fallback 與 load-balance 比較