手機與電腦共用 Clash 訂閱設定的同步方案

比較訂閱網址直連、自架設定託管與覆寫指令碼,說明如何保留手機與桌面版的規則差異,以及訂閱更新間隔和本機覆寫衝突時的處理順序。

先確認同步範圍:共用訂閱不等於複製所有設定

先在手機和電腦上分別開啟用戶端的「設定檔」或「Profiles」頁面,查看目前啟用的設定來源。如果兩端都從同一個訂閱網址下載設定,節點來源就已統一;但目前選取的節點、規則模式、系統代理開關和背景執行權限,通常仍由各裝置分別儲存。

訂閱網址是用戶端取得遠端內容的位址。它可能回傳完整的 YAML 設定,也可能只回傳節點清單,甚至是經過編碼的其他格式內容。YAML 是以縮排表示結構的文字格式。只有用戶端能解析的內容才能直接匯入,不能只因網址名稱裡有「訂閱」就認定相容。

mihomo 是 Clash Meta 後續採用的核心名稱,負責處理代理協定和分流規則。用戶端則提供匯入設定、接管系統、更新等操作介面。兩台裝置都支援 mihomo 設定,不代表兩個用戶端的覆寫入口和合併方式完全相同。

設定內容是否建議共用處理位置
節點來源、通用策略群組建議遠端訂閱或共用設定
共用網域分流規則建議共用規則來源或共用覆寫
監聽連接埠、控制介面依裝置分別保留用戶端本機設定
Android 個別應用程式代理僅設定於手機Android 用戶端介面
TUN、系統代理、VPN 授權分別設定用戶端與作業系統

方案一:兩端分別匯入同一個訂閱網址

如果只有手機和電腦兩台裝置,且主要使用服務商提供的規則,建議先採用這個方案。無須額外架設託管伺服器,發生問題時也容易判斷是下載失敗還是本機設定衝突。

  1. 在服務商的帳戶頁面複製適用於 Clash 或 mihomo 的訂閱網址。不要複製瀏覽器目前開啟的帳戶頁面網址。
  2. 在 Android 用戶端開啟「設定檔」,尋找「新增」、「建立」或「從 URL 匯入」,貼上網址並儲存。選項名稱會因用戶端而異。
  3. 在電腦版開啟「設定檔」或「Profiles」,透過 URL 匯入同一個網址。下載完成後,記得選取這份設定。
  4. 在兩端各手動更新一次,確認更新時間、節點清單和策略群組符合預期,再開啟自動更新。
  5. 分別選取需要的節點或策略群組。除非用戶端明確提供狀態同步功能,否則不要預期電腦切換節點後,手機也會跟著切換。

更新間隔先設為 24 小時

如果介面以小時為單位,可先填入 24;如果明確以秒為單位,24 小時相當於 86400 秒。有些用戶端只提供固定選項,請選擇最接近的值。遵循服務商公布的更新頻率,不要為了排除連線問題而把更新間隔縮短到幾秒。

Android 進入省電或背景限制狀態後,排程工作可能延遲,因此「每天更新」不代表每天都會在特定時間執行。遇到節點變更時,先開啟應用程式手動更新,再檢查背景限制。電腦長時間休眠也可能錯過預定的更新時間。

這個方案不會同步本機修改

直接編輯下載後的訂閱內容,下次更新時可能會被覆蓋。需要長期保留的規則,應放在用戶端獨立的本機覆寫區,而不是插入遠端設定的副本。用戶端若不支援覆寫,可保留一份本機設定避免內容遭覆蓋,但之後就需要自行維護節點和規則更新。

方案二:自架設定託管,統一管理共用規則

如果需要管理多台裝置,或希望統一維護工作網域、策略群組和規則順序,可以將共用設定放在自己管理的 HTTPS 服務上。用戶端訂閱這個託管網址,由維護者更新遠端檔案。這裡的託管是用來儲存與發佈設定,不是讓手機和電腦直接互傳檔案。

區分完整設定與節點提供器

完整設定通常包含 proxies 或 proxy-providers、proxy-groups、rules 等欄位。proxy-providers 是節點提供器,可依設定取得節點集合;其資源不能任意替換成任何格式的訂閱內容。

  • 如果服務商提供可直接用於節點提供器的 YAML,可以在共用設定中引用,再讓策略群組透過 use 使用該提供器。
  • 如果服務商只提供完整設定,請先確認是否有專用的節點輸出格式。不能直接把完整設定當成節點提供器檔案使用。
  • 如果必須轉換格式,請在自己掌控的環境中完成。轉換後的協定欄位仍須與兩端的核心相容。

這樣可以將「節點更新」和「共用規則更新」分開管理,但也多了一個故障點:主設定下載成功,不代表提供器也成功下載。排查時應分別查看兩者的更新時間與記錄。

託管前檢查三個項目

  1. 存取回應:使用未登入的瀏覽器測試用戶端使用的網址,確認回傳的是設定文字,而不是登入頁、分享預覽頁或錯誤頁面。若需要驗證,請先確認用戶端支援相應方式。
  2. 權限範圍:含有節點憑證的檔案不得放進公開儲存庫,也不要將存取權杖寫進公開的規則檔或截圖。
  3. 快取策略:發佈後分別手動更新兩端,確認實際內容已經更新。如果仍然取得舊檔案,請檢查託管服務和中間快取,不要反覆修改用戶端。

方案三:共用訂閱搭配本機覆寫,保留裝置差異

先開啟用戶端的設定管理頁,尋找「覆寫」、「擴充設定」、「Merge」或「Script」等功能。覆寫是在下載遠端設定後,再套用一層本機修改;指令碼覆寫則透過用戶端提供的執行介面修改設定物件。這些都是用戶端功能,並非所有 Clash 核心用戶端都內建相同的指令碼介面。

較穩妥的配置方式是:訂閱負責節點和基礎策略,共用覆寫負責共用規則,各裝置的覆寫負責本機差異。實際套用順序由用戶端決定;若產品只允許一層覆寫,就將需要的修改合併到該層,並記錄來源。

先用一條規則確認合併方式

以下是完整規則清單的示範片段,並非可脫離節點與策略群組獨立執行的完整設定。DIRECT 代表直連;名為「代理」的策略群組必須已經存在。example.com 是示範網域,實際部署時請換成需要分流的網域。

rules:
  - DOMAIN-SUFFIX,example.com,DIRECT
  - MATCH,代理

Clash 規則通常由上往下比對,符合後就會使用相應策略。MATCH 是預設兜底規則,因此應放在最後。如果把新增規則加在既有的 MATCH 後面,通常不會執行。

尤其要確認清單的合併方式:有些入口會整份取代 rules,有些則支援前置或附加。若上面的兩行被當成整份清單取代,訂閱原有的其他規則就會被移除。正式使用前,請開啟用戶端提供的執行設定預覽,核對最後結果;若沒有預覽功能,請先透過設定檢查和規則頁面驗證。

手機與電腦各自保留這些設定

  • Android:個別應用程式代理、VPN 授權和背景電池限制由手機端管理。依套件名稱選取應用程式的清單,不應直接複製成電腦端規則。
  • 桌面版:系統代理開關、開機啟動和 TUN 權限需分別設定。TUN 是用來接管網路流量的虛擬網卡方式,僅複製一個開關無法完成系統授權。
  • 監聽連接埠:例如桌面版將 mixed-port 設為 7890 時,使用手動代理的程式也應填入相應連接埠;手機透過 VPN 接管流量時,不必照抄桌面程式的代理位址。
  • 控制介面:不要為了同步設定而將 external-controller 暴露在公網。它用於管理核心,不是同步訂閱所需的入口。

更新後規則消失:依設定產生順序排查衝突

如果發現手機規則正常、電腦規則失效,先不要同時修改兩端。保留一台可正常運作的裝置作為對照,在另一台逐項檢查。每次只修改一個位置,才容易找出在哪個步驟發生覆蓋。

  1. 確認目前使用的設定:檢查目前選取的設定名稱和來源。更新未啟用的設定,不會改變正在執行的規則。
  2. 儲存本機設定:匯出本機覆寫和必要的用戶端設定;若備份含有權杖,請妥善保存。不要只備份遠端訂閱內容。
  3. 檢查遠端下載:先確認設定能成功下載並解析。下載失敗時,用戶端可能會繼續使用舊副本,不能只憑「還能連上網路」就判定更新成功。
  4. 檢查提供器:若使用節點或規則提供器,也要確認其更新時間。主訂閱和提供器各自有更新機制,不一定會同時更新。
  5. 檢查覆寫結果:比對最終設定中的 rules 和 proxy-groups,確認規則沒有被整份取代,引用的策略群組名稱也沒有改變。
  6. 重新載入並測試新連線:使用用戶端的重新載入或重新啟動核心功能,再建立新的連線進行測試。既有的長時間連線不一定會立即依新規則重新路由。

常見的「策略不存在」錯誤,通常是服務商更改了策略群組名稱,但本機規則仍引用舊名稱。常見的「更新後自訂規則消失」,則可能是規則寫在遠端檔案中,或後一層覆寫取代了前一層。先找出欄位最終採用的來源,再調整合併順序,不要靠反覆貼上規則來處理。

同步完成後的檢查清單

最後在兩台裝置上各手動更新一次,分別測試直連網域、應走代理的網域和常用應用程式。記錄設定更新時間、核心版本和本機覆寫內容;可在「關於」或核心資訊頁查看版本,不要只記錄用戶端外殼版本。

觀察到的狀況優先檢查項目下一步操作
同一個網址,兩端的節點不同更新時間、快取、服務商依請求回傳的內容兩端手動更新並比對下載結果
節點相同,連線路徑不同模式、規則順序、選取的策略查看連線記錄中的命中規則
電腦匯入成功,手機解析失敗核心支援的協定與欄位查看解析記錄,改用相容的輸出格式
手機鎖定螢幕後不再自動更新背景限制和更新工作排程先手動更新,再檢查電池設定
更新完成,但仍使用舊線路長時間連線、策略選取、設定是否重新載入重新載入後重新建立連線測試

只需要共用節點時,用同一個訂閱分別匯入即可;需要統一管理規則時,再增加自架託管;裝置差異較多時,將差異放進各端的覆寫設定。關鍵是讓每項設定都有明確且唯一的維護位置,而不是要求兩台裝置的所有設定文字永遠完全相同。

下載用戶端