Protocol & Kernel Reference

Clash 通訊協定與 mihomo 核心選型手冊

針對用戶端的實際選擇,比較 SS、VMess、Trojan、VLESS、Hysteria2 與 TUIC 的設計界線、連線表現、資源占用及設定相容性。本頁適合系統查閱;若目標是快速完成首次匯入與系統代理設定,請先閱讀快速入門教學

  • 6 類常見通訊協定
  • mihomo 核心
  • 行動裝置耗電
  • 訂閱相容性

建立可重複使用的通訊協定選型模型

先區分通訊協定、傳輸方式與用戶端

在 Clash 設定介面中看到的 SS、VMess、Trojan、VLESS、Hysteria2 和 TUIC,屬於節點連線方式;Clash Plus、Clash Verge Rev、FlClash 等名稱則代表圖形化用戶端;mihomo 是負責解析設定、建立連線與執行規則的核心。三者處於不同層級。用戶端決定操作入口與系統整合方式,核心決定設定語法與協定能力,協定決定單條代理連線如何交握、加密、複用與傳輸資料。混淆這些概念,常會產生「更換用戶端後速度是否一定提升」或「能匯入訂閱是否就代表節點可用」等誤判。更換圖形介面通常不會直接改變線路條件,但用戶端附帶的核心版本、預設 DNS、TUN 實作與連線參數,可能改變最終表現。

協定選擇也不是單純的速度排名。一次連線的實際體驗,取決於伺服器處理能力、用戶端裝置效能、網路往返時間、封包遺失、傳輸層行為、網域解析路徑及規則命中結果等因素。協定只控制其中一部分。例如在穩定的有線網路中,傳統 TCP 協定通常表現平穩;在頻繁切換基地台且有隨機丟包的行動網路中,採用 UDP 並自行管理壅塞控制的方案可能更快恢復,但持續執行、連線保活與重傳策略也可能增加耗電。脫離網路條件討論「最快協定」,結論通常無法重現。

用四個問題縮小範圍

第一,確認目前用戶端核心是否支援目標協定及其必要欄位。原版 Clash 的能力範圍很早便已固定,後續出現的 VLESS、Hysteria2、TUIC 等類型,主要由 Meta 分支與 mihomo 擴充。第二,確認訂閱提供的是完整節點參數,還是只有名稱與伺服器位址。協定名稱相同不代表設定可以互換;驗證識別碼、TLS 伺服器名稱、傳輸類型、UDP 支援、略過憑證檢查等欄位,都可能影響交握。第三,明確主要使用平台。桌面裝置更重視系統代理、TUN 接管與長期穩定性;行動裝置還要評估背景保活、網路切換與電池限制。第四,判斷主要流量是短連線瀏覽、持續下載、即時影音,還是大量並行請求,因為不同連線模式對交握成本、隊頭阻塞與複用的敏感度不同。

  1. 先確認能否解析

    在用戶端匯入後,檢查節點類型是否被識別;設定記錄中不應出現未知類型或缺少欄位。

  2. 再確認能否連線

    在同一網路下分別測試交握、網頁存取與持續傳輸,不要只依據單次延遲探測。

  3. 最後確認是否適合長時間執行

    觀察網路切換、系統休眠恢復、背景耗電與規則命中,避免把短時間峰值當成穩定結論。

維持一致的測試條件

比較協定時,應固定用戶端、核心、伺服器區域、測試時段與 DNS 設定,並避免同時開啟持續占用頻寬的同步程式。先記錄直連網路的基準狀態,再逐一測試候選節點。延遲測試主要反映探測請求的往返時間,不等同於網頁開啟速度;下載峰值也不能代表弱網恢復能力。更可靠的方式是連續完成三類任務:多次開啟包含多項資源的網頁、進行數分鐘穩定傳輸,以及在 Wi-Fi 與行動網路間切換後觀察連線恢復。若結果差異很小,應優先選擇設定較簡單、用戶端支援較成熟的一項,而不是為了理論特性增加參數複雜度。

SS、VMess、Trojan、VLESS、Hysteria2 與 TUIC 的設計取捨

SS:結構簡潔,相容範圍廣

Shadowsocks 通常簡稱 SS,設計重點是在較少協定層的前提下完成加密代理。節點設定主要圍繞伺服器、連接埠、密碼與加密演算法展開,欄位數量相對有限,因此在不同用戶端與訂閱格式間移轉時,更容易維持一致。現代實作通常採用 AEAD 類加密演算法;選擇演算法時必須同時確認用戶端與伺服器端支援,名稱相近但實作範圍不同的演算法不能任意替換。SS 的優勢是實作成熟、交握負擔較低、裝置涵蓋廣,適合希望減少設定變數的情境。它本身不定義複雜的傳輸偽裝層,額外外掛或其他傳輸封裝會帶來更多相容性要求;此時不能再把「支援 SS」理解為「支援所有 SS 擴充」。

VMess 與 VLESS:從整合式驗證到輕量協定層

VMess 將使用者識別、驗證與連線流程整合在協定中,常見設定包含 UUID、傳輸網路、TLS、Host、Path 等欄位。它誕生於需要統一管理多種傳輸方式的用戶端生態,因此歷史訂閱中存量較多。問題不在於無法使用,而在於參數組合較多:WebSocket、HTTP 類傳輸、gRPC 或一般 TCP 的欄位位置不同,訂閱轉換時容易遺失路徑、主機名稱或服務名稱。排查 VMess 時,應從傳輸類型開始核對,不能只比較 UUID 與連接埠。

VLESS 讓協定層更輕,通常將機密性與伺服器身分驗證交由 TLS 等外層機制處理。也就是說,VLESS 本身不是「選取名稱就自動具備完整加密」的一體化方案;用戶端必須正確處理 TLS、伺服器名稱、憑證驗證與所選傳輸方式。其優勢是協定開銷較清楚,便於搭配不同傳輸,也因此更依賴設定完整性。若訂閱轉換工具只保留伺服器與 UUID,卻遺漏 flow、server name、transport 或 Reality 相關欄位,節點雖能匯入,交握仍會失敗。mihomo 對 VLESS 的支援較完整,但仍應以實際設定欄位及目前核心可識別的語法為準。

Trojan:以 TLS 連線為基礎的直接模型

Trojan 的常見設定圍繞密碼、TLS 伺服器名稱與憑證驗證展開,資料承載於 TLS 連線之上。理解路徑相當直接:先確保網域與憑證關係正確,再確認密碼與連接埠,最後檢查是否啟用 UDP。Trojan 並不代表「任何情況下都比 VMess 快」;當兩者使用相同網路路徑與相近傳輸時,差異可能小於線路波動。它更實際的價值在於設定模型清楚,主流 Meta 與 mihomo 用戶端支援成熟。若使用 IP 位址連線,但 TLS 仍要求網域身分,必須保留正確的 server name,不能把伺服器位址機械式複製到所有 TLS 欄位。

Hysteria2 與 TUIC:面向 UDP 傳輸與弱網恢復

Hysteria2 以 QUIC 架構組織連線,並在應用層關注壅塞控制與丟包環境下的吞吐恢復。它適合往返時間較高、頻寬變化明顯或偶發丟包的網路,但效果取決於 UDP 可達性、伺服器端參數與合理的頻寬設定。將上行或下行能力填得遠高於真實網路,不會憑空增加速度,反而可能造成排隊與搶占。設定時還需核對驗證密碼、TLS 伺服器名稱、連接埠跳躍或混淆等選用項目是否由兩端共同啟用。

TUIC 同樣建立在 QUIC 與 UDP 之上,強調多路連線、驗證及網路變化時的連續性。它常見於 mihomo 相容設定,欄位可能包含 UUID、密碼、壅塞控制演算法、UDP 中繼模式與憑證選項。TUIC 與 Hysteria2 不能只因「都使用 UDP」就視為可互換協定:兩者的交握、驗證、參數名稱及伺服器實作都不同。選擇時應以伺服器實際提供的類型為準,而不是在用戶端手動修改節點類型。行動網路下兩者可能更快恢復連線,但持續保活、較活躍的 UDP 工作階段與系統背景策略也會影響耗電。

通訊協定 主要設定核心 常見優勢 重點核對項目
SS密碼與加密演算法結構簡潔、相容性廣演算法名稱、外掛擴充
VMessUUID 與傳輸組合歷史設定存量較多Host、Path、傳輸類型
Trojan密碼與 TLS設定關係清楚server name、憑證驗證
VLESSUUID、TLS 與外層傳輸協定層較輕、組合靈活flow、transport、TLS 欄位
Hysteria2驗證、QUIC 與頻寬行為弱網吞吐恢復能力UDP 可達性、頻寬參數
TUICUUID、密碼與 QUIC 參數多路傳輸與網路切換壅塞控制、UDP 中繼模式

正確比較連線速度、穩定性與資源占用的方法

交握速度與持續吞吐不是同一項指標

網頁首次開啟更容易受到 DNS 查詢、TCP 或 QUIC 建立連線、TLS 交握及第一個請求回應時間影響;大檔案傳輸則更依賴壅塞控制、線路容量與持續丟包狀態。SS 的協定層較簡潔,通常不會引入複雜的額外交握;Trojan、啟用 TLS 的 VMess 與 VLESS 需要完成 TLS 流程,但連線複用與工作階段恢復會降低後續請求成本;Hysteria2 與 TUIC 透過 QUIC 建立安全連線,首次連線同樣需要交握,建立後可在單一連線中承載多個串流。因此「按一下延遲測試」只能觀察很小一段行為,無法完整代表持續下載或多資源網頁的使用體驗。

TCP 的隊頭阻塞表示同一連線中的丟包,可能讓後續資料等待重傳。QUIC 在串流層級處理傳輸,可降低單一串流丟包對其他串流的牽連,但若底層網路的 UDP 品質不佳,理論優勢可能無法發揮。某些網路會給 UDP 較短的工作階段保留時間,導致閒置後重新交握;某些路由器在大量 UDP 工作階段下處理能力有限。選型時應觀察真實應用:短連線頻繁失敗、長時間傳輸速度波動、休眠後恢復緩慢,分別可能對應不同問題,不能一概歸因於協定名稱。

CPU、記憶體與連線數量

資源占用首先取決於核心實作與規則規模,其次才是協定。大量規則集、複雜 DNS 處理、TUN 流量接管、連線嗅探與記錄層級,都可能比協定加密本身占用更多資源。SS 使用現代 AEAD 演算法時,桌面處理器通常能有效執行;在較舊的低功耗裝置上,不同演算法是否具備硬體加速會影響 CPU 使用率。VMess 的協定處理與多層傳輸組合可能增加一定工作量,尤其是疊加 WebSocket、TLS 與複用時。Trojan 和 VLESS 的成本與 TLS 實作及所選傳輸密切相關。Hysteria2、TUIC 需要維護 QUIC 狀態、確認與壅塞控制,在高速或丟包環境中可能使用更多 CPU,但也可能透過更好的吞吐恢復縮短任務完成時間。

記憶體占用不能只看用戶端主程序。圖形介面、WebView、系統匣、記錄快取與核心通常會同時存在。比較 Clash Plus、Clash Verge Rev 或 FlClash 時,應在相同設定、相同執行時間與相同連線數量下觀察,並區分介面程序與 mihomo 核心程序。某個用戶端閒置時占用較低,不代表載入數十萬條規則後仍然相同;某個協定單一連線開銷較小,也不代表開啟大量並行後沒有累積成本。對路由器與小型伺服器而言,減少規則提供者數量、關閉不需要的詳細記錄、控制連線複用與並行,通常比反覆更換協定更有效。

可重複的三階段測試

第一階段測試建立連線:清除舊連線後,連續存取多個不同網域,記錄是否出現首次等待或偶發交握失敗。第二階段測試穩定傳輸:在數分鐘內觀察速度曲線、CPU 使用率與連線重設,而不是只記錄瞬時峰值。第三階段測試恢復:讓裝置休眠後喚醒,或在 Wi-Fi 與行動網路間切換,檢查節點是否自動恢復、DNS 是否持續運作、舊連線是否正確清理。每個候選協定至少重複兩輪,並維持規則模式一致。若某次結果異常,應先查看記錄中的 timeout、TLS、DNS 或 UDP 錯誤類型,再決定是否納入比較。

觀察項目 主要影響因素 容易產生的誤判
延遲探測探測方式、線路往返時間把最低延遲直接等同於最高下載速度
首次開啟DNS、交握、TLS、連線複用只測試已快取的頁面
持續吞吐頻寬、丟包、壅塞控制只記錄數秒峰值
CPU 使用率加密、QUIC、規則與記錄忽略圖形介面與 TUN 開銷
恢復能力網路切換、工作階段狀態、系統限制把系統終止背景程序誤認為協定斷線

行動裝置耗電、背景執行與網路切換

耗電來自持續運作,而不只是加密

在行動裝置上執行 Clash 類用戶端時,電量消耗由網路收發、CPU 喚醒、VPN 或 TUN 接管、DNS 查詢、規則比對、記錄寫入及系統背景調度共同造成。協定加密只是其中一項。若應用程式持續維持大量連線、頻繁進行健康檢查,或策略組以很短的間隔測試多個節點,即使實際流量很少,裝置也可能不斷從低功耗狀態被喚醒。相反地,一個計算稍複雜但能穩定維持連線的協定,實際耗電未必高於頻繁斷線重連的簡單協定。因此應觀察完整的使用週期,而不是根據幾分鐘內的系統電量百分比下結論。

SS、Trojan、VMess 與 VLESS 通常執行於 TCP 或基於 TCP 的傳輸上。系統對 TCP 連線狀態的管理相當成熟,閒置連線通常容易進入較低活動狀態,但行動網路切換後,舊連線可能需要逾時或重新建立。Hysteria2 與 TUIC 基於 UDP 與 QUIC,在一定條件下能更快處理網路變化,也可能透過較活躍的確認、保活與壅塞控制維持工作階段。耗電結果取決於用戶端實作、keep-alive 參數、網路品質及系統對 UDP 的處理,不能直接概括為某一類協定一定更省電或更耗電。

Android 的電池最佳化與背景限制

Android 各家廠商對背景應用程式、VPN 服務與自動啟動策略的處理差異很大。若用戶端在鎖定螢幕後被系統停止,表面現象通常是通知消失、網路無法存取,重新開啟應用程式後恢復。這種情況首先應檢查系統的電池最佳化、背景活動、VPN 常駐通知與自動啟動權限,而不是立即更換節點協定。Clash Plus、Clash Meta for Android 與 FlClash 的介面路徑不同,但判斷邏輯一致:確認核心仍在執行,再確認 VPN 介面存在,最後查看節點連線記錄。若核心反覆重新啟動,應降低健康檢查頻率、暫時關閉詳細記錄,並檢查設定是否包含過大的規則集。

策略組也是常見的耗電來源。url-test 會依設定間隔探測多個候選節點;節點數量多、間隔短時,會持續喚醒網路。fallback 需要監測可用性,load-balance 則可能同時維持更多連線。行動裝置若主要使用固定節點,可以減少候選數量並適度延長測試間隔。關於這些策略的差異,可繼續閱讀Clash 策略組類型詳解。規則提供者的更新間隔也應合理設定,沒有必要在短時間內重複下載變化很少的清單。

iOS 與系統 VPN 工作階段

iOS 用戶端透過系統提供的網路延伸能力運作,應用程式介面退出不一定代表代理連線已停止,實際狀態應以系統 VPN 標識與用戶端核心狀態為準。Clash Plus 在 iOS 端透過 App Store 提供,設定時應留意系統首次建立 VPN 時的授權提示。若切換 Wi-Fi 後短時間內無法解析網域,應先等待系統網路路徑穩定,再檢查 DNS 與節點重連;頻繁手動開關可能讓問題更難重現。背景執行由系統統一管理,使用者可調整的項目比 Android 少,因此應優先維持設定簡潔,減少高頻探測與不必要的記錄。

使用系統統計進行長期觀察

評估協定耗電時,選擇兩個日常使用強度相近的時段,分別執行候選協定,並大致維持螢幕亮度、網路類型、策略組與背景應用程式一致。觀察系統電池頁面中的前景時間、背景時間與網路活動,而不是只比較總百分比。若某次出現異常耗電,先判斷是否同時伴隨用戶端重新啟動、連線失敗、節點探測增加或網路訊號較弱。訊號微弱會讓行動網路基頻提高發射功率,其影響可能明顯大於代理協定本身。更完整的檢查流程見Clash 行動裝置耗電異常排查

原版 Clash、Meta 與 mihomo 的核心系列關係

原版 Clash:設定基礎與相容性基準

原版 Clash 建立了廣泛使用的 YAML 設定結構,包括 proxiesproxy-groupsrules、DNS、規則提供者與控制介面等核心概念。許多訂閱轉換器與圖形化用戶端仍以這些欄位作為相容性基準。它對 SS、VMess、Trojan 等常見類型形成了成熟語法,但專案維護狀態與功能範圍已經固定,後續協定及更複雜的網路能力不應預設存在。看到某份設定標示「Clash 格式」,通常只代表它採用這個設定系列,並不保證原版核心能解析所有節點。

原版語法仍具重要價值:基礎代理組、網域規則、IP 規則與 MATCH 規則具有很高的可移植性。若設定只使用這些通用能力,在不同衍生核心間移轉通常較平順。問題主要出現在擴充節點類型、規則語法、DNS 進階選項、TUN 參數與協定專屬欄位。因此,判斷相容性不能只看檔案副檔名是 YAML,也不能只看頂層鍵名;應逐項確認核心是否認得節點的 type、策略組行為與擴充規則。

Clash Meta:面向新協定與進階網路能力的分支

Clash Meta 在原版設定模型上擴充了 VLESS、Hysteria、Hysteria2、TUIC、WireGuard 等類型,並強化 DNS、規則、TUN、嗅探與傳輸參數。許多舊資料會將支援這些能力的核心統稱為 Meta。對使用者而言,重點不是記住分支歷史,而是理解 Meta 設定可能包含原版不認識的欄位。將 Meta 訂閱匯入只支援原版 Clash 的用戶端,輕則忽略部分參數,重則在載入階段直接報錯。反向移轉通常較容易:基礎原版設定大多能被 Meta 系核心讀取,但某些預設行為仍可能不同。

mihomo:目前常用的延續實作

mihomo 延續並維護 Meta 系列能力,是 Clash Plus、Clash Verge Rev、FlClash 等現代用戶端常見的核心選擇。它保留 Clash 設定的主要組織方式,同時繼續支援新協定、規則集、TUN 與 DNS 相關功能。名稱改變不代表設定必須從頭重寫,許多 Meta 設定仍可繼續使用;但「通常相容」不等於所有歷史欄位永久等價。升級用戶端或移轉設定後,應查看啟動記錄中的棄用提示、未知欄位與解析錯誤,並依目前文件調整,而不是讓轉換器反覆改寫整份檔案。

圖形化用戶端與核心並非固定綁定關係。有些用戶端允許切換核心或更新核心元件,有些則將核心與應用程式安裝包一同提供。排查時應在「關於」、「核心」或記錄頁面確認實際執行的是哪一類實作,不要只根據用戶端名稱推斷。Clash for Windows 與 ClashX Meta 已停止維護,仍可能讀取部分舊設定,但不適合作為驗證新協定相容性的唯一環境。需要 VLESS、Hysteria2 或 TUIC 時,應優先使用明確採用 mihomo 或相容 Meta 能力的用戶端。

核心系列 設定定位 協定範圍 移轉注意事項
原版 Clash基礎設定模型以 SS、VMess、Trojan 等為主不應預設支援後續擴充類型
Clash Meta原版結構上的能力擴充加入 VLESS、Hysteria2、TUIC 等擴充欄位無法直接回退至原版
mihomoMeta 系列持續維護實作現代協定與網路功能較完整留意欄位調整與啟動記錄
mixed-port: 7890
mode: rule
ipv6: false

profile:
  store-selected: true
  store-fake-ip: true

以上片段只使用常見頂層設定,可作為檢查 YAML 縮排與核心載入的最小起點。它不包含節點、訂閱位址與規則,無法單獨完成代理連線。完整設定應由可信訂閱或明確的手動參數補充。進一步了解專案關係,可閱讀Clash 開源生態專案關係原版、Meta 與 mihomo 功能相容性比較

訂閱格式、YAML 欄位與轉換相容性

能匯入不代表欄位完整

訂閱通常以兩種形式進入用戶端:一類是完整 Clash YAML,已包含節點、策略組、規則與 DNS;另一類是節點連結集合,由用戶端或轉換服務解析後產生本機設定。完整 YAML 較容易保留策略結構,但可能使用特定核心擴充;節點連結較便於在不同軟體間傳遞,卻不一定能表達所有進階欄位。匯入成功只表示檔案可以被讀取,不能證明每個節點都保留原始傳輸參數。尤其是 VMess、VLESS、Hysteria2 與 TUIC,欄位較多,轉換鏈越長,遺漏的可能性越高。

SS 節點連結通常包含加密演算法、密碼、伺服器與連接埠,結構相對直接;Trojan 還需留意 TLS 伺服器名稱、ALPN 與憑證相關選項;VMess 與 VLESS 可能包含網路類型、Host、Path、service name、flow、指紋與 TLS 設定;Hysteria2 涉及驗證、伺服器名稱、連接埠及選用傳輸參數;TUIC 則常見 UUID、密碼、壅塞控制與 UDP 中繼設定。若轉換後節點名稱仍在但無法連線,應將轉換前後的關鍵欄位並列比較,而不是反覆點擊更新訂閱。

Clash YAML 的三個層次

第一層是節點定義,也就是 proxies 中每個連線的類型與參數。第二層是策略組,也就是 proxy-groups 如何組合節點、決定手動選擇或自動偵測。第三層是規則,也就是 rules 如何將網域、IP 或其他比對結果交給策略組。三層彼此引用:規則寫的是策略組名稱,策略組引用節點或其他群組,節點才包含伺服器連線資訊。修改名稱時必須同步更新引用,否則會出現策略組找不到節點,或規則指向不存在目標的錯誤。

proxies:
  - name: "HY2-example"
    type: hysteria2
    server: example.com
    port: 443
    password: "your-password"
    sni: example.com
    skip-cert-verify: false

proxy-groups:
  - name: "手動選擇"
    type: select
    proxies:
      - "HY2-example"
      - DIRECT

rules:
  - MATCH,手動選擇

此範例展示節點、策略組與最終規則之間的引用關係,伺服器與密碼為明確的範例值。實際設定中應替換為實際提供的參數,並維持空格縮排一致。YAML 不允許使用定位字元代替階層縮排;包含特殊字元的名稱建議加上引號。若用戶端提示解析錯誤,先檢查縮排、冒號後的空格與重複鍵,再檢查協定欄位。若設定能載入但節點交握失敗,則應轉而檢查伺服器位址、驗證、TLS 與傳輸參數,不應繼續修改 YAML 排版。

訂閱轉換的界線

訂閱轉換適合完成格式整理、節點篩選、名稱處理與基礎策略組產生,不適合猜測缺少的參數。轉換器無法從普通 SS 連結推導出 VLESS 的 UUID 與 TLS 結構,也不能只透過改寫 type,將 Hysteria2 節點變成 TUIC。即使來源與目標都屬於 Clash 設定系列,目標範本若基於原版欄位,也可能過濾 mihomo 擴充。轉換後應保存一份來源設定作為對照,並重點檢查節點數量、協定類型、TLS 欄位、策略組引用與規則末尾的 MATCH。

遠端規則提供者與遠端訂閱還涉及更新失敗後的行為。用戶端通常會保留最近一次成功下載的設定,但具體快取策略取決於實作。更新後突然出現大量節點遺失,應先查看設定更新時間與下載記錄,避免立即覆蓋仍可運作的本機副本。訂閱位址屬於敏感設定,不應發布到公開頁面或記錄截圖中。需要排查時,可遮蓋位址參數,只保留錯誤狀態、回應類型與用戶端提示。

用戶端、作業系統與協定能力的配對

圖形化用戶端首先解決系統整合

選擇用戶端時,先看作業系統支援、核心類型、系統代理與 TUN 整合,再看介面偏好。Clash Plus 支援 Windows、macOS、Android 與 iOS,是本站各平台首推的入口,適合希望在多部裝置上維持相近操作邏輯的使用者。Clash Verge Rev 適合 Windows、macOS 與 Linux 桌面環境,常用於 mihomo 設定管理、系統代理與 TUN。FlClash 支援桌面與 Android,可作為跨平台備選。Clash Nyanpasu 面向 Windows;Clash Meta for Android 與 Surfboard 可用於 Android;ClashX Meta 與 Clash for Windows 已停止維護,更適合處理既有環境,而不是用於新協定選型。

用戶端支援某個協定,通常表示其附帶核心能解析並建立該類型連線,但仍需確認圖形介面是否完整提供相關參數。例如手動新增節點時,介面表單可能只涵蓋常用欄位,而匯入 YAML 則能保留更多進階參數。遇到表單沒有 flow、sni、udp relay mode 或壅塞控制選項時,不要用意義相近的欄位替代;可改用完整設定匯入,並透過記錄確認。各平台可用安裝包與用戶端順序見下載頁,下載相關問題可查看下載頁常見問題

Windows:系統代理、TUN 與應用程式差異

Windows 上的系統代理主要影響遵循系統設定的應用程式,部分程式會使用自己的網路堆疊。需要更完整接管時可使用 TUN,但通常需要額外權限與虛擬網路介面。協定本身不會改變哪些應用程式遵循系統代理;這是由用戶端執行模式決定的。若瀏覽器正常而商店應用程式異常,應檢查應用程式回環限制與代理路徑,參考Windows UWP 應用程式無法使用 Clash 的處理步驟。啟用 TUN 後若局域網存取出現變化,還應核對路由、DNS 與排除項目,而不是先更換 SS 或 VLESS。

macOS 與 Linux:權限、系統服務與架構

macOS 的系統代理適合一般桌面應用程式,TUN 或增強模式涉及系統網路延伸功能與權限確認。Apple Silicon 與 Intel 的安裝包架構不同,但設定檔中的協定語法通常相同。Linux 桌面可使用 Clash Verge Rev 或 FlClash;伺服器與路由環境則更適合直接執行 mihomo 核心,透過設定檔與控制介面管理。一般桌面使用者若不需要自行維護服務、權限與啟動指令碼,優先使用圖形化用戶端可減少步驟。核心套件的處理器架構必須與裝置一致,AMD64、ARM64、ARMv7 與 MIPS 不能互換。

Android 與 iOS:優先使用系統 VPN 介面

Android 與 iOS 上的 Clash 類用戶端通常透過系統 VPN 介面接管流量。此時「系統代理開關」的意義與桌面不同,是否涵蓋應用程式還會受到分應用程式設定、系統 VPN 限制與本機網路權限影響。Android 可在 Clash Plus、Clash Meta for Android、FlClash 與 Surfboard 之間選擇;需要 mihomo 擴充協定時,應確認實際核心與匯入結果。iOS 以 Clash Plus 為主要入口。行動裝置匯入包含大量規則的桌面設定前,應評估記憶體與更新時間,必要時使用更精簡的規則集。

平台 優先用戶端 主要執行方式 選型重點
WindowsClash Plus、Clash Verge Rev系統代理或 TUN權限、應用程式代理行為、回環限制
macOSClash Plus、Clash Verge Rev系統代理或網路延伸功能晶片架構、系統權限
LinuxClash Verge Rev、FlClash、mihomo桌面代理或服務執行架構、服務管理、路由權限
AndroidClash Plus、Clash Meta for Android系統 VPN背景限制、電池最佳化
iOSClash Plus系統 VPN網路延伸狀態、規則規模

更換用戶端前應匯出或備份目前設定,並記錄手動修改過的 DNS、TUN、策略組與規則。移轉後先在規則模式下驗證基本網頁、DNS 與單一節點,再恢復複雜設定。一次同時更換用戶端、核心、訂閱範本與協定,會讓錯誤來源難以定位。較穩妥的移轉方式是每次只改變一個層次:先維持設定不變並更換用戶端,確認能運作;再升級核心能力;最後匯入新協定節點。

依使用情境得出協定與核心選型結論

日常桌面使用:先選成熟設定,再比較協定

在 Windows 或 macOS 上以網頁、辦公應用程式與一般下載為主時,優先選擇 mihomo 用戶端,並使用訂閱中欄位完整、連線穩定的協定。SS、Trojan、設定規範的 VMess 或 VLESS 都可以列為候選。若同一服務提供多種協定,先在相同線路下測試首次開啟、數分鐘持續傳輸與休眠恢復。差異不明顯時,選擇欄位較少、更新後較不易出錯的一項。用戶端方面首選 Clash Plus,也可依桌面管理需求選擇 Clash Verge Rev 或 FlClash。

行動網路與頻繁切換:關注恢復能力與背景狀態

手機經常在 Wi-Fi 與行動網路間切換時,可將 Hysteria2 或 TUIC 納入測試,因為 QUIC 類連線在網路變化與丟包條件下可能有較好的恢復表現。但前提是目前網路穩定支援 UDP,用戶端核心能完整解析設定,伺服器端參數也正確。若鎖定螢幕後中斷,應先處理系統背景限制;若閒置後首次存取緩慢,應查看連線保活與 DNS;若耗電增加,應減少健康檢查與候選節點,而不是立即判定協定不可用。

高延遲或有丟包的線路:同時觀察吞吐與公平性

在往返時間較高、頻寬變化明顯的網路中,Hysteria2 與 TUIC 的壅塞控制可能比一般 TCP 連線更快恢復吞吐。不過測試不能只看單一任務是否跑滿,還要觀察其他應用程式是否明顯受影響、路由器 CPU 是否持續升高,以及網路閒置後是否頻繁重連。頻寬參數應接近可持續能力,不應以接入速率上限取代實際測量。若 UDP 路徑不穩定,設定成熟的 Trojan、VLESS 或 SS 反而可能更容易預測。

舊裝置、路由器與小型伺服器:減少變數

資源有限的裝置應優先控制規則數量、記錄層級、DNS 複雜度與並行連線。協定選擇可從實作成熟、參數較少的 SS 或現有穩定 TCP 方案開始,再依實際需求測試其他類型。執行 mihomo 核心時,必須下載與處理器匹配的套件,並使用最小設定確認服務能啟動,再逐步加入 DNS、規則提供者與 TUN。不要直接把桌面端的大型設定複製到低記憶體裝置,因為沒有介面不代表規則與連線狀態沒有資源成本。

已有訂閱:以伺服器實際提供的類型為準

使用者不需要為了追求協定名稱而自行改寫節點。訂閱提供 SS 就依 SS 參數使用,提供 VLESS 就核對其 TLS 與傳輸欄位,提供 Hysteria2 或 TUIC 則確認 mihomo 支援與 UDP 環境。伺服器端未部署對應協定時,用戶端修改類型無法建立匹配的交握。若同一訂閱包含多種協定,可建立手動選擇組與單獨測試組,保留一個已知穩定節點作為基準,再比較其他節點。

選型摘要

相容性優先:SS、Trojan 或欄位完整的常見 TCP 設定。現代擴充:mihomo 搭配 VLESS。弱網與網路切換測試:Hysteria2、TUIC。用戶端:全平台優先選擇 Clash Plus,桌面端可選 Clash Verge Rev 或 FlClash。

發生故障時依層次排查

第一層檢查設定是否載入:若出現 YAML 解析、未知類型或缺少欄位錯誤,問題位於格式或核心相容性。第二層檢查節點交握:若記錄提示驗證、TLS、timeout 或 UDP 錯誤,核對節點參數與網路條件。第三層檢查系統接管:節點可連線但應用程式無法存取時,檢查系統代理、TUN、VPN 權限與 DNS。第四層檢查規則:只有部分網域異常時,確認規則順序、策略組選擇與 MATCH 去向。依層次排查能避免將系統代理問題誤判為協定問題,也能避免在節點參數錯誤時反覆調整規則。

  • 需要盡快完成首次使用

    前往快速入門,依序執行匯入訂閱、選擇模式、啟用系統代理與驗證連線。

  • 需要選擇安裝包

    前往下載頁,依 Windows、macOS、Android、iOS 或 Linux 選擇用戶端。

  • 需要比較核心

    優先確認目前用戶端實際執行的核心,再參考核心相容性比較進行移轉。

  • 需要最佳化策略組

    閱讀url-test、fallback 與 load-balance 的差異,避免探測行為與實際目標不匹配。

最終選擇應以「設定能完整表達、用戶端能穩定解析、目前網路可重複執行」為標準。協定名稱代表設計方向,不代表脫離環境後仍有固定等級。對大多數使用者而言,穩定的 mihomo 用戶端、結構清楚的訂閱、適量規則與可重現的測試流程,比追逐單次延遲或頻繁更換協定更重要。保留已驗證的設定作為基準,每次只調整一個變數,並記錄日誌中的具體錯誤,才能讓後續升級與故障排查維持可控。