Shadowrocket 追加・接続ガイド
Add Serverから実際のリクエスト確認まで、5つの手順で進めます。iPhoneとiPad向けです。まず接続を確認してから、ルールや自動接続の設定を調整します。
手順に沿って操作してください。掲載している4点の画像は、画面や項目を確認するためのApp Store公式スクリーンショットです。実際の画面では、端末に表示される英語の項目名をご確認ください。画像内の情報を接続設定にそのまま転記する必要はありません。
サーバーの追加または既存サブスクリプションの読み込み
まず自分の接続情報をアプリに保存し、実際に使うサーバーを選択します。
Shadowrocketを開いてHomeに進み、SERVERグループ付近にあるAdd Serverを探します。画面によっては右上の追加ボタンからも開けます。追加画面では、Hostを入力する前にTypeを確認してください。Typeによって各項目の意味が異なるため、同じアドレスやパスワードを別のプロトコルにそのまま当てはめることはできません。入力前に、手元の情報がサブスクリプションURL、単一サーバーの設定情報、サーバー1台分の共有リンクのどれに当たるか確認します。種類によって追加方法が異なります。
サブスクリプションURLがある場合:TypeでSubscribeを選択
- 自分のサブスクリプションURL全体をコピーし、Add Serverに戻ってTypeからSubscribeを選びます。
- そのTypeのURL欄にリンクを貼り付けます。メモ欄があれば、用途を区別しやすい名前を入力できます。サブスクリプションURLをHostとPortに分割したり、URL内のクエリパラメーターを削除したりしないでください。
- 貼り付けた内容に説明文、空白、改行が混ざっていないか確認し、画面右上の保存ボタンを押して、サブスクリプションの読み込みを待ちます。
- Homeに戻り、サブスクリプショングループとサーバー項目が表示されたことを確認し、使う項目を選択します。グループ名だけが表示され、サーバーがない場合は、読み込みが完了したとはいえません。
Subscribeは、URLからサーバー情報を読み込む機能であり、接続サービスを取得する機能ではありません。リンクに個人用のアクセス情報が含まれている場合があります。公開チャットやスクリーンショット、トラブル対処の記録に載せないでください。読み込み結果がログイン画面や案内ページだったり、アプリの対応形式と異なったりする場合、保存しても選択可能なサーバーは追加されません。同じグループを何度も追加するのではなく、元の情報を確認してください。
サーバー情報がある場合:該当するTypeを選んで手動入力
Add Serverを開き、手元の情報に明記されたTypeを選択します。Hostにはサーバーのドメイン名またはアドレス、Portにはポート番号を入力します。Password、Methodなどの認証項目は、選択したTypeに表示される項目に従って入力してください。公式スクリーンショットにはPasswordとMethodを含む項目が表示されていますが、すべてのTypeで同じ項目が使われるわけではありません。UUID、TLS、Server Name、転送方式などがある場合は、手元の情報と一つずつ照合し、名称が似ているだけで推測しないでください。
入力後に保存し、Homeに戻って新しい項目が表示されたことを確認して選択します。自分のQRコードがある場合は、Scan QR Codeで読み取り、Type、アドレス、認証情報を確認できます。Import from Cloud JSONは対応するJSON情報を読み込むための別の入口で、あらゆるサブスクリプションURLを入力できる欄ではありません。クリップボードや共有リンクの形式、サブスクリプションの更新、グループの整理については、サブスクリプションとサーバー管理ガイドをご覧ください。
Global Routingと現在のConfigを選択する
サーバーは接続先を決め、Global Routingはリクエストの処理方法を決めます。
サーバーを保存したらHomeに戻り、Global Routingを開きます。まずは3つのモード、Config(設定)/Proxy(プロキシ)/Direct(直接接続)の違いを確認しましょう。選択によってリクエストの処理経路が変わります。サーバーの速度測定ではなく、先ほど入力した認証情報が変わるわけでもありません。トラブル対処のため、現在の選択を記録してから用途に合うモードを選びます。サーバーを確認する前に、複数の設定を同時に切り替えないでください。
| モードと画面上の項目名 | 処理方法 | 初めに確認すること |
|---|---|---|
| Config(設定) | 現在の設定にあるルールに基づいて、リクエストの経路を決めます。 | 設定が選択されており、ルールの振り分け先となるポリシーやサーバーが有効か確認します。 |
| Proxy(プロキシ) | アプリからプロキシできる通信を、現在選択中のサーバーに転送します。 | 振り分けルールの影響を切り分ける際に役立ちますが、すべてのリクエストが必ず成功するわけではありません。 |
| Direct(直接接続) | 接続先のサービスに直接接続します。 | ローカルネットワークの状態を比較する際に適しています。プロキシサーバーの利用可否を確認する方法ではありません。 |
Configを使う前に、使用中の設定を確認する
自分で確認済みの設定ファイルがある場合は、Configを開き、現在選択されているファイルを確認します。ルールを確認するには、そのファイルの編集画面を開き、General、Rule、Hostsなどのセクションを確認してください。Rule内のAdd Ruleからルールを追加できます。画像は設定ファイルの編集画面で、HomeにあるGlobal Routingの選択画面とは役割が異なります。前者は設定内容を保存し、後者は設定に基づいて処理するかを決めます。
初回接続時に、すぐルールを追加する必要はありません。まず既存のルールが、実在する接続先を指定しているか確認してください。ルールに書かれたポリシー名をサーバーアドレスと取り違えないようにしましょう。以下は構文を確認するための実際のルール例です。あらゆるネットワーク環境で使える完全な設定ではありません。example.comは説明用のドメインで、接続先アドレスではありません。
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
このルールの例では、DOMAIN-SUFFIXはドメインのサフィックスに一致する条件、DIRECTは直接接続、PROXYはプロキシ経由、FINALは最後のフォールバックを表します。実際の処理は設定全体とルールの順序にも左右されるため、最終行だけを見てすべてのリクエスト経路を判断することはできません。現在の設定内容がわからない場合は元のファイルを残し、Generalを削除したり、Ruleをまとめて上書きしたりしないでください。
サーバー自体の問題か、振り分け結果が想定と異なるのかを一時的に切り分けるには、元のモードを記録してからProxyに切り替え、比較テストを1回行います。終了後は元のモードに戻してください。モードの詳細はプロキシモードの解説をご覧ください。設定ファイルの保存、整理、バックアップについてはサブスクリプションガイドをご覧ください。このページでは確認済みのモードを使い、ルール全体の編集には踏み込みません。
接続スイッチをオンにしてシステムの許可を完了する
サーバーとモードを確認してから、初回に表示されるVPN構成の許可に進みます。
Homeに戻り、次の3点を確認します。SERVERで先ほど保存したサーバーが選択されていること、Global Routingが使う予定のモードになっていること、画面上部のスイッチが未接続であることです。公式スクリーンショットのNot Connectedは未接続を示しており、追加に失敗したという意味ではありません。サーバーが一覧にあっても、保存しただけで自動的に接続されるわけではありません。
- 情報とモードを確認したら、Home上部の接続スイッチをオンにします。
- 初めて接続するとき、システムからVPN構成の追加を求められることがあります。表示されている対象アプリがShadowrocketであることを確認し、内容を理解したうえで許可してください。
- 端末のパスコードや本人確認を求められた場合は、端末の案内に従って操作します。端末のパスコードをAdd ServerのPassword欄に入力しないでください。
- Shadowrocketに戻り、画面上部の状態がNot Connectedから接続中に変わったことを確認してから、次の手順で動作を確かめます。
このシステム許可によって、アプリはシステムのネットワーク機能を通じて通信を処理できるようになります。誤ったサーバー情報が修正されたり、サブスクリプションに利用可能な情報が追加されたりするわけではありません。許可を拒否した場合は、アプリに戻って接続を再試行し、表示内容を確認してください。端末が管理対象、またはシステムに制限がある場合は端末設定を確認し、案内を回避するためにスイッチを何度も操作しないでください。
接続後に表示されるシステムのVPNアイコンは、トンネルが有効になっているかを判断する補助情報ですが、接続先サービスへのアクセスを保証するものではありません。サーバー認証の失敗、DNSの名前解決異常、接続先の障害は、スイッチをオンにした後でも起こりえます。反対に、Directを使っている場合、スイッチがオンでも選択中のプロキシサーバーを経由しているとは限りません。Global Routingと合わせて判断してください。
初回の確認中は、現在のネットワークを維持し、すぐにWi-Fiからモバイル通信へ切り替えたり、On Demandを設定したりしないことをおすすめします。条件を絞ることで、失敗が情報の追加、許可、接続のどの段階で起きたかを判断しやすくなります。停止する場合はHome上部のスイッチをオフにしてください。Typeやポートなど重要な項目を変更する場合は、先に切断して保存し、その後に再接続します。
接続とリクエストが想定どおりか確認する
サーバーへの到達性、接続先サービスの利用可否、ルーティング結果を分けて確認します。
Homeに戻り、Connectivity Testを実行して、現在のサーバーにテスト結果が表示されるか確認します。これは特定のテスト方法での到達性を判断するためのもので、実際のサービス利用をすべて確認できるわけではありません。テストに応答があっても、認証、DNS、転送設定、接続先サービスの状態によって実際のリクエストが失敗することがあります。反対に、あるテスト方法で応答がなくても、すべてのリクエストが通らないとは限りません。
接続先を開いてから、通信経路を確認する
ブラウザーや利用するアプリで、自分にアクセス権があり、現在の設定で処理される想定の接続先を開きます。長時間開いたままのページだけで判断しないでください。切断後もキャッシュが表示される場合があります。新しく読み込みや更新を行い、ドメインの名前解決エラー、接続タイムアウト、証明書の警告、接続先から返されたエラーページの有無を記録します。これらの現象は発生段階がそれぞれ異なり、単に「接続できない」とするより原因を絞り込みやすくなります。
Configを使っている場合は、対象ドメインがどのルールに一致する想定か、まず確認してください。ルールによって直接接続されたページが開いても、そのリクエストが成功したことを示すだけで、選択中のプロキシサーバーが利用可能だとは限りません。同じリクエストがProxyでは成功し、Configでは失敗する場合は、現在の設定、ルールの優先順、振り分け先を確認します。両方で失敗する場合は、サーバー情報とローカルネットワークを確認してください。比較後は一時的な設定を残さないよう、元のモードに戻します。
一度に変更する条件は1つだけ
初回テストでは、同じサーバー、同じ接続先、同じローカルネットワークを使います。Wi-Fiとモバイル通信を比較する場合は、先に元の結果を記録してからネットワークを切り替えて再テストします。別の自分のサーバーを試す場合は、接続先とモードを変えずに比較してください。サーバー、DNS、ルールを同時に変更すると、成功しても失敗しても原因が特定しにくくなり、どの変更を残すべきか判断できません。
接続先へのリクエストが正常で、モードも想定どおりであり、再接続後も同じ結果を確認できたら、基本操作は完了です。その後、必要に応じてサブスクリプションの更新、グループの整理、On Demandの設定に進みます。Connectivity Testの方式の違い、DNS、特定のリクエストエラーについてはよくある質問とトラブル対処をご覧ください。初回接続を完了するために、すべての設定を変更する必要はありません。
失敗した段階から確認し、すべての項目を一度にリセットしない
既存情報を残し、問題が起きた箇所に最も近いところから確認します。
最初の4手順で想定どおりにならない場合は、削除と再追加を繰り返さず、まず操作を止めます。どの手順で失敗したか、そのときのGlobal Routing、使用中のローカルネットワーク、表示されたエラーを記録してください。続いてSettingsを開き、Test Method、On Demand、Diagnosticsなどの項目を確認します。これらはテスト、自動接続、診断に使うもので、どんなサーバーでも接続可能にする汎用スイッチではありません。
Subscribeの保存後にサーバーが表示されない
まずローカルネットワークで通常どおりアクセスできることを確認し、次にサブスクリプションURLが完全か、期限切れになっていないか、互換性のあるサブスクリプションデータが返されているかを確認します。URLにクエリパラメーターが含まれている場合、後半をコピーし損ねると結果が変わることがあります。同じサブスクリプショングループがすでにある場合は、重複追加で一覧がわかりにくくならないよう、既存グループを更新してください。サブスクリプションの有効性は、手元にあるサービス情報に基づいて確認します。更新方法と複数のサブスクリプションの整理についてはサブスクリプションガイドをご覧ください。
接続を有効にできない、または有効にしてもすぐ切断される
3つ目の手順に戻り、システムのVPN構成許可が完了していることを確認してから、SERVERで対象サーバーが選択されているか確かめます。スイッチが一時的にオンになった後オフになる場合は、アプリまたはシステムに表示されたメッセージを確認し、Type、Host、Port、認証項目を照合してください。パスワードが正しそうに見えても、プロトコルの種類を確認します。TLSや特定の転送項目が必要な情報を、アドレスとポートだけ入力して保存しないでください。
テストには応答があるのにページを読み込めない
まずテスト方法を確認してください。SettingsのTest Methodによってテストの意味が変わり、結果は完全なアクセスを保証するものではありません。次に4つ目の手順に従い、同じ接続先でConfigとProxyを比較して、現在のルールが有効な接続先にリクエストを振り分けているか確認します。ドメイン名を使うリクエストだけが失敗する場合は、具体的なエラーに応じてDNSを確認してください。記録を残さずに複数のDNSアドレスを同時に変更したり、証明書の警告が出たからといって安易にHTTPS Decryptionを有効にしたりしないでください。
ネットワーク切り替え後やアプリ復帰後に状態が想定と異なる
まず接続を手動でオフにし、現在のネットワークで再度オンにしてテストし、基本接続が安定しているか確認します。On Demandを設定済みの場合は、現在のネットワーク環境がトリガー条件に合っているか確認してください。On Demandは条件に応じて接続を開始する機能で、失効したサブスクリプションや誤った認証情報を修復するものではありません。初回接続が成功していない場合は手動接続のままにし、基本の確認を終えてから個別に設定してください。
原因をさらに調べる場合は、必要最小限の記録を残す
現在の画面にDiagnosticsの項目がある場合は、そこから診断情報を確認し、失敗した時刻や接続先リクエストの状況を記録します。診断情報には接続先のドメイン名、サーバーアドレス、個人情報が含まれることがあります。共有する前に、サブスクリプションURL、パスワード、認証情報を確認して隠してください。変更前の設定を保存し、一度に変更するのは1項目だけにして、同じ接続先で再テストします。改善しない場合は元の値に戻し、一時的な変更を積み重ねないでください。
基本操作を終えた後は、サブスクリプションが有効であること、SERVERで正しい項目が選択されていること、Global Routingが用途に合っていることを確認し、必要なときに接続をオンにします。エラーの詳しい切り分けはよくある質問をご覧ください。複数のサブスクリプションやサーバー、バックアップを管理する場合は、サブスクリプション管理ガイドをご覧ください。初回接続時にすべての詳細設定を行う必要はありません。