Shadowrocketを機種変更するときは、アプリの購入履歴、Configの設定ファイル、Homeのサーバー情報、Settingsの設定を分けて扱います。すでに利用中のサービスとサブスクリプションがあり、機種変更や再インストールを予定している方向けに、旧端末でバックアップを取り出せる形で保存し、iCloud Drive経由で新端末へ移し、情報を復元してルールを確認し、接続をテストする手順を解説します。アプリを再インストールできても、すべての接続設定が復元されたとは限りません。
1. 購入履歴と接続情報を分けて確認する
ShadowrocketはAppleプラットフォーム向けの買い切りアプリですが、アプリの購入と接続サービスの契約は別です。App Storeの購入履歴からアプリを再入手できますが、サービスのアカウントやサブスクリプションのURL、サーバーの認証情報は復元されません。アプリの再入手と設定の復元は別の手順です。まず旧端末の情報を確認できる状態にしてから、新端末でのインストールに進みましょう。
アプリ内のHome、Config、Settingsは、それぞれサーバー一覧、設定ファイル、アプリの設定に関係します。.confファイルを1つ書き出しただけで、Home内のすべてのサーバーやサブスクリプショングループ、Settingsの項目も含まれているとは限りません。書き出した内容を開き、保存されている項目を確認してください。
- 購入履歴:App Storeで、Shadowrocketを購入したときのApple IDを使用していることを確認します。
- サーバー情報:Homeの項目を確認し、サブスクリプションから追加したものと手動で追加したものを把握します。
- ルールファイル:Configで現在使用中のファイルと、自分で変更したルールを記録します。
- 動作設定:Global Routing、Settings → On Demand、DNSなど、自分で変更した項目を記録します。
2. 旧端末でバックアップ:Configを書き出し、サーバー情報は別に保存
旧端末でConfigを開き、現在有効な設定ファイルを確認します。そのファイルの操作メニューから、書き出しまたは共有を選んで保存してください。ボタン名はアプリの現在の画面表示に従います。システムの共有シートが表示されたら「“ファイル”に保存」を選び、拡張子.confを維持します。端末や用途を区別できる名前を付けましょう。例:iphone-before-move.conf。
- 一覧にある別の未使用ファイルを書き出してしまわないよう、現在選択中のConfig名を先に記録します。
- 書き出したファイルは、自分で管理しているフォルダに保存します。端末間で移す場合はiCloud Driveを選び、「このiPhone内」だけに保存しないでください。
- ファイルのプレビューやテキスト表示で内容を確認し、空ではないこととカスタムルールが含まれていることを確かめます。特に末尾の
FINALを確認してください。 - Homeに戻り、既存のサブスクリプションURLを自分の安全な記録から確認できるか確かめます。手動で追加した項目は、プロトコルと接続パラメータを1つずつ記録します。
- 管理下にあるバックアップをもう1部保存し、新端末での確認が完了するまで旧端末の元データを残しておきます。
次の2種類の情報は分けて確認します。設定ファイルにはサーバー定義が含まれている場合もあれば、主にルールが保存されている場合もあります。判断はファイル名ではなく、書き出した内容に基づいてください。サブスクリプションを更新して項目を再取得できても、旧端末で個別に加えたローカル変更まで復元されるとは限りません。
Configのバックアップ
- 場所
- Config → 現在の設定ファイルの操作メニュー
- ファイル
iphone-before-move.conf- 確認する内容
- カスタムルール、DNS設定、ポリシー参照
- 保存先
- iCloud Driveと、別に保管するバックアップ
まずファイルの内容を確認し、復元できる項目を判断します。
Home情報のバックアップ
- サブスクリプション項目
- 自分が利用中のサブスクリプションURLを完全な形で保存
- 手動で追加した項目
- Address、Port、認証情報を記録
- TLSパラメータ
- 元の項目を参照してSNIなどの設定を確認
- デフォルトの選択
- 元々選択していたサーバーまたはポリシーを記録
認証情報は保護された方法で保管し、公開メモや公開共有リンクには載せないでください。
3. iCloudで同期:ファイルの保存を確認してから新端末に読み込む
書き出したファイルをiCloud Driveで同期する方法なら、各項目を確認しながら移行できます。同期されるのはクラウドに保存したファイルです。2台の端末が同じiCloudアカウントにサインインしているだけでは、Homeの一覧やSettingsのすべてが復元されたことにはなりません。App Storeの購入に使うアカウントと、ファイル同期に使うiCloudアカウントも、それぞれ確認してください。用途は異なります。
- 旧端末のシステム設定で「Appleアカウント」→「iCloud」→「iCloud Drive」を開き、この端末でiCloud Driveの同期が有効になっていることを確認します。表示名はiOSの画面変更により異なる場合があります。
- 「ファイル」App →「ブラウズ」→「iCloud Drive」を開き、書き出した
.confファイルが「このiPhone内」ではなくiCloud Driveのフォルダにあることを確認します。 - インターネットに接続した状態を保ち、ファイルのアップロードを待ちます。新端末では、そのファイルの保存に使ったiCloudアカウントでサインインし、iCloud Driveを有効にします。
- 新端末の「ファイル」Appで同じファイルを探し、実際に一度開いてください。雲のダウンロードアイコンが表示される場合は、先にダウンロードを完了させます。
- ShadowrocketのConfigに戻り、ファイルの読み込み操作を選択します。ファイル選択画面でiCloud Driveを開き、内容を確認したバックアップを選びます。
アプリにiCloud関連の項目がある場合は、表示されている同期範囲を1つずつ確認し、端末全体の復元と同じものと考えないでください。クラウドにファイル名が表示されるのは最初の確認にすぎません。新端末でファイルを開き、Configに読み込んで元のルールを確認できて初めて、その設定ファイルが新端末に届いたといえます。
4. 新端末で復元:アプリを再入手し、サーバーとルールを戻す
新しいiPhoneのApp Storeで、購入時に使ったApple IDにサインインします。アカウントの購入済みApp一覧からShadowrocketを探し、再ダウンロードしてください。購入の適用条件とシステム要件はApp Storeのページで確認できます。アプリの確認には、デベロッパ名のShadow Launch Technology LimitedとアプリIDの932747118を照合してください。確認方法は正規アプリの確認ページをご覧ください。
- アプリを確認:新しくインストールしたShadowrocketを開き、まずHomeとConfigの内容を確認します。端末全体の移行ですでに一部の情報が引き継がれている場合は、同じサーバーをすぐに重複して読み込まないでください。
- サーバーを復元:既存のサブスクリプションは、自分で保存したURLを使って再度読み込み、更新します。手動で追加した項目は、旧端末の記録に従ってプロトコル、Address、Port、認証情報、関連する転送設定を復元します。
- 設定を復元:Configにバックアップファイルを読み込み、内容を確認してから現在使用する設定として選択します。一覧にファイルが表示されているだけでは、有効になったとは限りません。
- サーバーを選択:Homeに戻り、テストに使うサーバーをタップして選択状態を確認します。ルールが特定のポリシーグループを参照している場合は、グループ内に利用可能な項目があることも確認してください。
- システム設定を作成:接続スイッチを初めてオンにするときは、iOSの案内に従ってVPN構成の追加を許可し、システムが求める認証を完了します。
プロトコルのパラメータを経験だけで一般的な値に置き換えないでください。たとえば旧端末のPortが443なら、まずは元の情報どおりに入力します。別のサービスが8443を使っていても、ポートを置き換えてはいけません。Password、UUID、Private Keyなども相互に代用できません。情報が不足している場合は、自分が保管している元のサービス情報を確認してください。
5. 復元後の確認:ルーティングモード、フォールバック、オンデマンド接続を確認
移行後の最初のテストでは、変更する要素を絞ります。まず手動で接続してサーバーを確認し、次にルールをテストしてから、自動接続を有効にします。Global RoutingのProxy、Direct、Config、Sceneはそれぞれ異なるルーティングモードです。読み込んだルールに従って振り分けるには、接続スイッチがオンかどうかだけでなく、Configが選択されているかを確認してください。
| 確認項目 | 操作場所 | 確認結果 |
|---|---|---|
| 現在のサーバー | Home | 対象の項目があり、選択されていること。認証情報が旧端末と一致していること。 |
| ルーティングモード | Global Routing → Config | 設定ルールを使ってテストし、Directの結果だけでルールの確認を済ませないこと。 |
| 有効な設定 | Config | 復元して内容を確認したバックアップファイルが選択されていること。 |
| 接続テスト | Connectivity Test | 成功または失敗を記録します。テストが成功しても、実際の接続先へのアクセスを確認してください。 |
| オンデマンド接続 | Settings → On Demand | 手動接続が正常に動作してから、ネットワーク条件と自動接続の動作を確認します。 |
以下は構成を確認するための最小限のルール例であり、完全なバックアップではありません。example.comは例示用ドメインです。この数行で元のファイルを上書きしないでください。移行時は、元のルールがすべて揃っていること、順序が変わっていないこと、ルール右側で参照するポリシーが利用可能であることを確認します。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,DIRECT
DOMAIN-SUFFIXはドメインのサフィックスで一致し、GEOIPは接続先IPの地理情報に基づいて一致し、FINALはそれ以前のルールに一致しなかったリクエストを処理します。ルールは上から順に適用されます。元のFINAL,PROXYをFINAL,DIRECTに戻すと、フォールバック先が変わります。ルールの数だけでなく、ポリシーの値も確認してください。
まとめ:手動テストが成功してから自動接続を戻す
新端末では、まず手動で接続して実際にアクセスできることを確認し、その後にSettings → On Demandの条件を復元します。こうすれば不具合が起きた場合、サーバーやルールの問題と自動接続の問題を切り分けやすくなり、複数の設定を同時に変更せずに済みます。
6. 機種変更後の復元に関するよくある質問
購入済みAppに表示されるのに、Homeが空なのはなぜですか?
購入履歴で復元できるのは、アプリを再入手する権利です。まず旧端末のバックアップにサーバー情報が含まれているか確認してください。その後、自分が利用中のサブスクリプションURLから復元するか、手動で追加した項目を1つずつ戻します。一覧を埋めるために同じルールファイルを何度も読み込まないでください。
iCloudにはファイルがあるのに、Configで見つからないのはなぜですか?
まず「ファイル」App → iCloud Driveでファイルを開き、新端末にダウンロード済みであることを確認します。その後Configに戻り、ファイルの読み込み操作から選択してください。実際の拡張子が.confであることと、旧端末で「このiPhone内」にだけ保存していなかったことも確認します。
ルールを復元したのに、新端末でのアクセス結果が旧端末と違うのはなぜですか?
まずConfigで有効になっているファイルを確認し、次にGlobal RoutingでConfigが選択されているかを確認します。その後、Homeで現在選択中のサーバー、ルールが参照するポリシーグループ、FINALの値を比較してください。変更は一度に1項目だけにして、その都度テストします。ルーティングの違いをファイル破損と誤認しないためです。
旧端末を初期化してしまいました。手動入力したパスワードは復元できますか?
まず、以前保存したバックアップや元のサービス情報に該当の項目が残っているか確認してください。ルールしか含まれていないファイルから、パスワードや秘密鍵を割り出すことはできません。サブスクリプションから項目を再取得できるかどうかはURLが有効かによります。自分が保管している情報の入手元を確認してください。
移行後、バックアップファイルをそのまま誰かに送って調べてもらってもよいですか?
まず、サブスクリプションのトークン、サーバーのパスワード、UUID、Private Key、証明書関連の情報が含まれていないか確認します。調査を依頼する場合は、必要最小限のマスキング済み項目とエラーの状況だけを共有してください。認証情報全体が漏えいした場合は、自分のサービス管理画面で交換してください。チャット履歴を削除しても、古い認証情報は無効になりません。
7. 旧端末を整理する前の最終確認
新端末でアプリを開けるのは、インストールが完了したことを示すだけです。一度接続できても、カスタムルールがすべて復元されたとは限りません。旧端末を整理する前に、以下の項目を1つずつ確認し、最終的に使う設定のコピーを保存してください。Wi-Fiやモバイル通信の条件で動作するOn Demandは、実際に使うネットワーク環境ごとに確認します。
- 新端末のHomeでサーバー数、サブスクリプショングループ、重要な手動項目を確認し、重複して読み込まれていないことを確かめます。
- Configで有効なファイルを確認し、自分で追加したドメインルールと最終フォールバックのポリシーを確認します。
- Connectivity Testを実行し、実際に利用する接続先も開いて、テスト結果と実際のアクセス結果を区別します。
- アプリの再起動やネットワークの切り替え後も、意図した設定が使われることを確認します。On Demandを有効にする場合は、自動接続の条件もテストしてください。
- バックアップを開けることと、管理下の場所に保管されていることを確認してから、旧端末や一時的な書き出しファイルを整理します。