まず同期する範囲を決める:ノード、ルール、設定一式
PCとスマホで同じサブスクリプションを使っても、通常そろうのは同じ配信元のノードや設定だけです。プロキシモード、選択中のノード、TUNのオン・オフ、アプリごとの通信設定まで完全に一致するわけではありません。複数デバイスでClashの設定を同期する前に、「リモートから取得する内容」と「端末ごとのローカル設定」を分けて考えましょう。そうすれば、スマホの機種変更やOSの再インストール、サブスクリプションの更新時に、端末内の設定をバックアップ済みだと誤解せずに済みます。
- ノードとサブスクリプションの内容:サービス提供元が生成します。完全な設定の場合もあれば、プロキシノードだけの場合もあります。サブスクリプションを更新すると、リモートの内容が再取得されます。
- 個人ルールとプロキシグループ:YAMLファイルに保存される場合も、クライアントのオーバーライド、マージ、スクリプト機能で生成される場合もあります。エクスポートにどのレイヤーが含まれるか確認しましょう。
- 端末ごとの設定:システムプロキシ、VPNの許可、TUNサービスの権限、アプリごとの通信設定、ローカルのリスニングアドレスは、通常、端末ごとに設定が必要です。
- 実行状態:プロキシグループの選択状況、接続履歴、キャッシュは設定ファイルとは別物です。保持されるかどうかは、クライアントのバックアップ範囲によって異なります。
3つの同期方法を比較
| 方法 | 向いているケース | 更新方法 | 主な制約 |
|---|---|---|---|
| サブスクリプションURL | PCとスマホで同じノード配信元を継続して使う | 各端末で個別に取得 | ローカルのオーバーライドやシステム権限はURLでは引き継げない |
| 設定ファイルのエクスポート | 一度きりの移行、オフラインでの転送、ルールのスナップショット保存 | 変更後に再エクスポートしてインポート | 外部ルールファイルやクライアントのデータベースが含まれない場合がある |
| WebDAVバックアップ | 定期保存、再インストール後の復元、同種クライアントへの移行 | 手動、またはクライアントが対応するスケジュールでアップロード | クライアント間のリアルタイム同期ではない |
3つの方法はどれか1つを選ぶのではなく、組み合わせて使えます。たとえば、WindowsとAndroidで同じURLを個別に登録し、個人ルールは別ファイルに保存、設定とルールは毎週WebDAVにバックアップします。ノードはサブスクリプションで更新し、ルールの変更履歴を残せば、端末が故障しても復元用のコピーを利用できます。
サブスクリプションURLで同期:各端末に個別に登録
ノードが頻繁に変わり、両方の端末で継続的に更新したい場合に便利
サブスクリプションURLはリモート設定を取得するための入口であり、端末間の同期経路ではありません。PCで更新が完了しても、スマホ側が更新されたとは限らず、両端で異なるタイミングに取得した内容を使っている場合があります。サービスが許可する端末数、同時接続数、通信量の上限を事前に確認してください。同じサブスクリプションを複数端末で使う場合も、通常これらの制限はサーバー側で一括して適用されます。
- 元の端末で現在の設定に対応するサブスクリプションURLを探し、リンク全体をコピーします。クエリパラメーターも含め、ドメイン名やパスだけをコピーしないでください。
- 移行先の端末で設定管理画面を開き、URLからのインポートを選択して、URLを貼り付けて保存します。画面上の項目名はクライアントによって「設定」「サブスクリプション」「Profiles」など異なるため、実際の表示に従ってください。
- 初回ダウンロード後、ノード数、プロキシグループ名、更新日時を確認します。ノードだけが表示され、ルールがない場合は、取得したものがノードサブスクリプションか完全な設定かを確認してください。
- インポートした設定を選択してから接続を有効にします。デスクトップでは必要に応じてシステムプロキシをオンにし、スマホではシステムのVPN許可を完了してください。
- 両方の端末で手動更新を1回ずつ実行し、リモートの内容を取得できることを確認してから、自動更新の間隔を設定します。
更新間隔を時間単位で指定する画面なら、まず24時間ごとに設定できます。設定ファイルの proxy-providers を使う場合、interval の単位は通常秒で、24時間は 86400 です。この2つは別々のタイマーなので、秒単位の項目に「24」をそのまま入力しないでください。スマホではバックグラウンド処理が制限されることもあるため、利用前に手動更新すると状態を確認しやすくなります。
同じサブスクリプションがすべてのクライアントで使えるとは限らない
オリジナル版ClashとClash Meta(現在の名称はmihomo)では、対応する機能が異なります。クライアントによっては別のコアを使う場合もあります。配信元の設定に、移行先のコアが対応していないプロトコルや項目が含まれていると、インポートに失敗することがあります。サービス提供元が移行先のクライアント向けと明記している形式を選びましょう。ファイルの拡張子を .yaml に変えても、形式は変換されません。インポートできない場合は、まずサブスクリプションの登録手順を確認し、次に具体的なエラーメッセージを確認してください。
設定ファイルのエクスポート:復元できるスナップショットを保存
YAMLのエクスポートは、一度きりの移行やルール変更前のスナップショット保存に便利です。ただし、「設定のエクスポート」と「アプリのバックアップ」は別の操作です。前者に含まれるのは通常、コアの実行に必要なテキストだけですが、後者にはサブスクリプションの登録情報、画面設定、オーバーライドファイルなどが含まれる場合があります。移行前にエクスポートしたファイルの中身を確認し、ファイル名だけで完全性を判断しないでください。
- 元の端末でサブスクリプションを手動更新し、現在の設定が正常に起動することを確認します。移行先で対応状況を比較できるよう、クライアント名、コアの種類、バージョンを記録しておきましょう。
- クライアントの設定エクスポート機能、または設定ファイルを開く機能を使い、
profile-2026-10-03.yamlとして保存します。個人用のオーバーライドファイルも別に保存し、生成された一時設定だけを残さないでください。 proxy-providersとrule-providersのpathを確認します。ローカルファイルを参照している場合は、そのファイルも移行してください。リモートURLを参照している場合は、移行先の端末からダウンロードできることを確認します。- 信頼できるファイル転送方法で移行先の端末に送り、ローカルファイルとしてインポートします。まず新しい設定としてテストし、問題なく使えている元の設定は上書きしないでください。
- ポート、LANからの接続許可、DNS、TUNの設定を確認してから接続テストを行います。すべて問題ないことを確認した後、普段使いの設定に切り替えてください。
たとえば、PCで混合ポートを 7890 に設定していても、移行先の端末ですでに別のプロキシアプリがそのポートを使っていると、インポート後に起動できないことがあります。また、PCで保存していたネットワークアダプターのDNSアドレスは、スマホをモバイル回線に切り替えると使えない場合があります。端末間のコピーでは、設定の意図を引き継ぎ、ネットワーク関連の値をすべてそのまま複製しないようにしましょう。ポート関連の問題はポートのトラブルシューティングを参照してください。
WebDAVバックアップ:保存用として使い、リアルタイム同期とは区別する
WebDAVはファイルアクセスの方式であり、Clashやmihomoのコアに共通で備わっている同期機能ではありません。クライアントにWebDAVのURLを登録できるか、暗号化バックアップやスケジュールアップロードに対応しているかは、クライアントによって異なります。専用の項目がない場合は、エクスポートしたファイルをローカルのバックアップフォルダーに保存し、WebDAV対応のファイル管理ツールでアップロードできます。
専用のフォルダーと復元手順を用意する
- 自分のWebDAVサービスに、
clash-backups/laptop/やclash-backups/phone/などの専用フォルダーを作成します。HTTPSを使用し、そのフォルダー専用のアプリ用認証情報を作成するのがおすすめです。 - クライアントがWebDAVに対応している場合は、バックアップ画面にサーバーのURL、ユーザー名、アプリ用認証情報を入力します。ベースURLとディレクトリパスを分けて指定するサービスでは、サーバーの案内に従ってそれぞれ入力してください。
- 初回の手動アップロード後、サーバー上でファイルの日時とサイズを確認します。ファイル名に端末名と日付(例:
laptop-2026-10-03.zip)を付け、2台の端末から同じファイルを繰り返し上書きしないようにしてください。 - バックアップを1つダウンロードし、予備の設定またはテスト環境で復元します。サブスクリプション、オーバーライド、ルールが実際に含まれていることを確認してください。「アップロード成功」は「復元成功」を意味しません。
- 日次バックアップは直近7件、週次バックアップは直近4件を残すか、ストレージ容量に応じた同等の保存ルールを設定します。クライアントをアップグレードする前には、別の場所にもコピーを保存してください。
アプリ専用のバックアップパッケージは、同じクライアントでしか読み込めない場合や、バックアップ形式のバージョンに制限がある場合があります。クライアント間の移行では、両方が対応する設定形式を使い、必要な設定を手動で補いましょう。WebDAV上のファイルを置いただけでは、実行中のコアの設定は変わりません。ダウンロード、インポート、設定の選択、再読み込みが必要です。
双方向の上書きと認証情報の漏えいを防ぐ
PCとスマホの両方で「現在の設定」ファイルを編集し、双方向同期するのは避けてください。両端が古いバージョンを読み込んでから変更を加え、それぞれ相手の変更を上書きする可能性があります。より安全な方法は、1台を個人ルールの管理元に指定し、ほかの端末は読み取り専用にすることです。共同で編集する場合は、まず日付入りの新しいコピーを作成し、内容を確認してから公開しましょう。バックアップにサブスクリプションURLやノードのパスワードが含まれる場合は、クライアントが対応する暗号化バックアップを使うか、信頼できるツールで暗号化してからアップロードし、復元用のパスワードは別に保管してください。
カスタムルールを引き継ぐ:サブスクリプションの設定と個人用オーバーライドを分ける
サブスクリプションから生成されたYAMLを直接編集すると、次回の更新で変更が消えることがよくあります。個人ルールは、クライアントが正式にサポートするオーバーライド、マージ、スクリプトのレイヤーに配置するか、自分で管理する設定ファイルに記述してノードプロバイダーを参照してください。オーバーライドの構文やマージ順序はクライアントによって異なります。あるクライアントのスクリプトを別のクライアントにそのままインポートできるとは限りません。
以下は、実行設定の rules の順序を示す例で、汎用的なオーバーライドファイルではありません。PROXY というプロキシグループがすでにあるものとします。ドメイン名は記述例なので、実際には対象のドメインに置き換えてください。マージ機能を使う場合は、ルールが先頭に追加されることを確認しましょう。最終ルールの MATCH より後ろに追加されると、適用されません。
rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- DOMAIN-SUFFIX,example.net,PROXY
- GEOIP,CN,DIRECT
- MATCH,PROXY
- 順序:ルールは通常、上から順に照合され、最初に一致したルールの接続先が適用されます。
MATCHの後に置いた個人ルールは照合されません。 - プロキシグループ名:
PROXYは現在の設定にある名前と完全に一致させる必要があります。サブスクリプション側で名前が変わった場合は、参照先も合わせて変更してください。 - 外部依存:
GEOIPを使うには地理データが必要です。GEOSITEやRULE-SETを使う場合は、移行先のコアが対応していることに加え、必要なデータとルールプロバイダーが準備できていることを確認してください。 - 端末による違い:Androidのアプリごとのプロキシ設定や、デスクトップのシステムプロキシのオン・オフは、上記のドメインルールとは別に設定します。
更新の前後に、最終的に適用されている設定を確認し、個人ルールがフォールバックルールより前にあることを確かめてください。クライアントでマージ後の結果を表示できる場合は、エディターのオーバーライド部分だけでなく、マージ後の内容を確認します。これならサブスクリプションの更新を受け取りながら、ルールを毎回設定し直す手間を減らせます。
移行後の確認:4つの項目で動作をチェック
- 設定を読み込める:ログを確認し、未対応の項目、見つからないプロキシグループ、ルールファイルの読み込み失敗、ポートの競合が表示されていないことを確認します。インポートと更新の日時も記録してください。
- 通信がクライアントを経由する:デスクトップではシステムプロキシに従うブラウザーでテストし、スマホではVPNの接続状態を確認します。システムプロキシに従わないアプリも制御する場合は、移行先のクライアントの要件に沿ってTUNと権限を設定してください。
- ルールが正しく適用される:直接接続する想定のサイトと、プロキシ経由にする想定のサイトにそれぞれアクセスし、接続一覧で適用ルールと最終的な接続先を確認します。速度テストの遅延値だけでは、ルールが適用された証拠にはなりません。
- 更新後も変更が残る:サブスクリプションを1回手動更新し、個人ルールを再確認してからクライアントを再起動してテストします。現在のセッション中だけ有効な状態でないことを確かめてください。
「PCでは使えるのにスマホではつながらない」場合は、サブスクリプション形式、プロキシグループの選択、DNS、システムの許可の順に確認し、すぐに設定一式を変更しないでください。特定のWi-Fiだけで起きる場合は、そのネットワークとモバイル回線での状態を比較してから、ローカルDNSやネットワーク制限を調べましょう。通信をクライアントに取り込む手順はシステムプロキシの設定ガイドを参照してください。
復元の流れを明確にするには、ノードを再取得できるサブスクリプションのURL、別に保存した個人ルール、復元テスト済みのバックアップの3つを残しておけば十分です。各端末のサブスクリプション更新で日常の更新を行い、ルールは1か所の管理元だけで変更し、ポートと権限は端末ごとに設定します。これなら、端末間でそろえるべき内容だけを同期でき、異なるOS間で複製に向かない実行環境までコピーせずに済みます。