- 公式ユーザーマニュアル
- iPhone・iPadの操作手順
Shadowrocketの使い方ガイド
サブスクリプションの追加と接続確認
「追加 → モード選択 → 接続 → 確認 → トラブル対処」の順に進めます。初回は一連の手順を最後まで完了してから、ルールや自動接続の条件を調整してください。
スクリーンショットはApp Storeの公式素材です。アプリ内の選択肢は、選択したType、現在の設定、デバイスの画面レイアウトによって異なります。実際の操作では、画面に表示される項目名を確認してください。
01 追加と読み込み
まず既存の接続情報をHomeに登録し、その後でルールと接続スイッチを設定します。Shadowrocketを開いてHomeに移動し、Add Serverを選択してください。手元の情報に応じて、完全なサブスクリプションURLはSubscribeに、個別サーバーのアドレス・ポート・認証情報は対応するTypeの手動追加に使います。両方を同時に設定する必要はありません。同じ情報を重複して読み込み、どの項目を選べばよいか分からなくならないようにしましょう。
Subscribe:既存のサブスクリプションを読み込む
Add ServerでTypeを開き、Subscribeを選んで該当フォームに進みます。URL欄にサービス提供元から入手したサブスクリプションURLをすべて貼り付けます。メモ欄があれば、自分で識別できる名前を入力できます。保存前に、URLの先頭・末尾・途中に空白や改行、チャットアプリが付加した句読点が混ざっていないか確認してください。サブスクリプションURLには認証情報が含まれることが多いため、一般公開のURLと同じように共有しないでください。
Homeに戻り、サブスクリプションの読み込みが終わるまで待ってから、該当するグループとサーバーが表示されるか確認します。サブスクリプション名だけが表示され、サーバーが見つからない場合は、エラーメッセージを確認してからURLとネットワークを見直してください。同じ名前のサブスクリプションをすぐに何度も追加しないでください。サービス提供元の項目を同期する場合は、そのサブスクリプションに対応する更新操作を使います。更新によってサーバー一覧が変わることがあるため、更新後に選択中のサーバーを確認してください。
Add Server:サーバー情報を手動で入力
個別のサーバーパラメータをお持ちの場合は、スクリーンショットの初期値だけで決めず、情報に記載されたプロトコルをTypeで選択します。Hostにはサーバーのドメイン名またはアドレス、Portには提供されたポート番号を入力します。PasswordやMethodなどの項目はTypeによって異なります。TLS、SNIなどの通信設定が含まれる場合も、元の情報と一つずつ照合してください。プロトコルによって認証方式は異なるため、あるTypeのパラメータを別のTypeにそのまま流用することはできません。
サーバーのQRコードをお持ちの場合は、Add ServerでScan QR Codeを選び、システムの案内に従って必要なカメラへのアクセスを許可します。Import from Cloud JSONは別の読み込み方法であり、サブスクリプションURLを貼り付ける汎用欄ではありません。対応する形式の情報であることが明確な場合にのみ使用してください。保存前に、読み取られたHost、Port、Typeを確認します。QRコードを読み取れても、サーバー情報が正しいと確認できたわけではありません。
追加後にHomeへ戻り、SERVERで使用するサーバーを選択して、選択中のマークを確認します。この時点で接続スイッチを急いでオンにする必要はありません。一覧に項目が表示されたことは情報が保存されたことを示すだけです。次にリクエストをどのモードで処理するか決めます。追加後に一覧が空になる、形式を認識できないなどの場合は、まずトラブル対処のサブスクリプション・サーバー追加ガイドをご覧ください。
02 Global Routing
サーバー情報を保存したらHomeに戻り、Global Routingを開きます。ここではリクエストを現在のルーティング処理にどう渡すかを決めますが、サーバーパラメータを補完する機能ではありません。まずはConfig(設定)/Proxy(プロキシ)/Direct(直接接続)の3つを把握しましょう。モードを選んでから接続し、トラブル対処の際はその時点のモードを記録してください。ルールの問題をサーバーの問題と取り違えにくくなります。
Config:現在の設定にあるルールに従って処理
日常的にルールで通信を振り分ける場合はConfigを選び、Config画面で現在使っている設定ファイルを確認します。設定の編集画面にはGeneral、Rule、Hosts、URL Rewrite、HTTPS Decryptionなどの項目があります。ここではRuleを確認します。設定内のルールによって、一致したリクエストに適用するポリシーが決まり、DIRECTとプロキシポリシーでは結果が異なります。現在の設定とルールの参照元を把握して初めて、リクエストが直接接続されることが想定どおりか判断できます。
ルールを確認する場合は、現在の設定でRuleを開き、既存の項目を読みます。初回接続を完了させるためにAdd Ruleをむやみに使ったり、複数の項目を一度に変更したりしないでください。URL RewriteとHTTPS Decryptionは基本的な接続に必須ではありません。用途を理解するまでは既存設定を維持し、必要になった段階で個別に確認してください。Subscribeでサーバー一覧を取得することと、自分の用途に合ったConfigを用意することは別の作業です。サーバーの数が増えても、通信の振り分けルールが設定されたことにはなりません。
ProxyとDirect:経路を比較するためのモード
Proxyでは、現在のルーティング処理に渡されるリクエストがプロキシ経由になります。基本的なトラブル対処で、選択中のサーバーを通る経路と比較する際に使えます。ただし、利用可能なサーバーと正しいパラメータが必要です。Proxyを選んでも、パスワード、ポート、TLS設定の誤りは解消されません。Directでは直接接続します。デバイスのネットワークから接続先にアクセスできるか比較する際に使えます。Directで正常にアクセスできても、今回の直接接続が成功したことを示すだけで、プロキシ経由も正常だとは限りません。
以下の例はRuleの構文を見分けるためのもので、すぐに貼り付ける完成済み設定ではありません。1行目はドメインのサフィックスで照合し、2行目は最終処理を指定しています。ポリシー名とルールの順序は、実際の設定と合わせて確認してください。
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
初回は、確認済みのConfigをそのまま使います。結果が分かりにくい場合は、一時的にProxyへ切り替えて比較し、確認後に元のモードへ戻してください。「すべてのリクエストをプロキシ経由にする」ことだけが正解ではありません。ルールの順序、ポリシーの参照、DNSの関係については詳しいトラブル対処ガイドをご覧ください。ここでは引き続き接続手順を進めます。
03 接続をオンにする
Homeに戻り、接続前に確認します。SERVERでサーバーが選択されていること、Global Routingに先ほど決めたモードが表示されていること、デバイスがネットワークに正常に接続できていることを確認してください。別のネットワークに切り替えた直後の場合は、Wi-Fiまたはモバイル通信が安定するまで待ってから次へ進みます。問題が起きた場合に、デバイスのネットワークが未接続なのか、クライアントの接続処理に問題があるのかを切り分けやすくなります。
Home上部の接続スイッチを使う
Home上部の接続スイッチをタップします。初回接続時は、ShadowrocketによるVPN構成の追加を許可するようシステムから求められる場合があります。直前に自分で開始した操作であることを確認し、システムの案内に従って許可とデバイス認証を完了してください。この許可はシステムのネットワーク接続構成を作成するためのもので、サービスの購入やサーバーの追加ではありません。システムの許可が完了していないと、サーバーパラメータを保存していても通常の手順で接続できません。
許可が完了したらHomeに戻り、画面上部の状態がNot Connectedから変わったか確認します。スイッチがオフのままなら、システムの確認画面への対応が終わっているか確認してから、もう一度接続を試します。スイッチを短時間に何度も押さないでください。オンにしてすぐ戻る、または未接続のままになる場合は、画面のメッセージを記録し、別のVPN構成が接続中でないか、デバイス管理のポリシーによる制限がないか確認します。この段階では、サブスクリプション全体を入力し直す必要はありません。
接続状態と実際の利用可否を区別する
画面上部の接続状態とシステムのVPN表示は、接続処理の状態を示すもので、すべての接続先サービスが利用できることを保証するものではありません。サーバーパラメータの誤り、接続できないポート、想定と異なるルールは、スイッチをオンにした後に問題として現れる場合があります。この手順の完了条件は、システムの許可が完了し、Homeの接続状態が安定し、サーバーとモードが先ほど選んだ値のままであることです。リクエストが実際に成功するかは、次の手順で確認します。
初回は手動で接続をオンにし、On Demandを同時に有効にする必要はありません。オンデマンド接続の条件によってネットワークの変化時に接続が開始されることがあり、手動テストと同時に行うと「なぜ再接続したのか」を判断しにくくなります。テストを終えるときはHomeに戻ってスイッチをオフにし、状態が戻ったことを確認してください。アプリを強制終了しても、システムの接続が停止した確認にはなりません。
iPadでも同じ順序で操作します。まずサーバーとモードを選び、次にシステムの許可を済ませ、最後に状態を確認してください。画面のレイアウトやナビゲーション位置はiPhoneと異なる場合がありますが、Home、SERVER、Global Routingの確認方法は同じです。接続が安定したら設定を変えず、Connectivity Testと実際のアクセスを比較します。
04 動作を確認する
動作確認では、テスト結果と実際のリクエストの両方を見ます。スイッチの色だけで判断しないでください。サーバー、Global Routing、デバイスのネットワークはそのままにして、HomeでConnectivity Testをタップし、結果を確認します。所要時間はテスト方法、接続先、ネットワークの状態によって変わります。すぐに結果が返っても実際のダウンロードが速いとは限らず、一度タイムアウトしただけでプロトコルのパラメータがすべて誤っているとも判断できません。
再現できるアクセス確認を一度行う
テスト後、必要なアプリやWebページを開き、ページを再読み込みするなど新しいリクエストを実行します。キャッシュ済みのページや、以前から続いている接続では、今回の設定変更が反映されたか分からないことがあります。ページがまったく開かない、一部の画像だけ失敗する、内容は読み込めるが遅いなど、具体的な状態を記録してください。状況を詳しく記録するほど、問題の箇所を絞り込みやすくなります。
Configを使う場合は、現在のRuleで適用ポリシーを確認できる接続先を一つ選び、アプリで参照できる接続履歴から、そのリクエストに適用されたポリシーを確認します。すべてのリクエストをプロキシ経由にする必要はありません。ルールがDIRECTを指定している場合、直接接続が想定どおりの動作です。一致関係が分からないときは、ルールを追加せず、同じサーバーのまま一時的にProxyへ切り替えて同じ接続先を再テストします。完了後はConfigに戻し、問題がルール経由の通信だけで起きるか比較してください。
Dataの数値は補助的な確認材料
Dataで画面に表示される通信量を確認すると、テスト中に通信が発生したか判断する助けになります。数値ごとに集計範囲が異なる場合があり、バックグラウンドアプリの通信が含まれることもあります。そのため、数値が変化しただけでは、対象のWebページに想定したポリシーが適用されたとは言えません。比較する際はテスト時間を揃え、開始時の数値を記録してから、対象を明確にしたアクセスを一度だけ行います。累計値を今回のテスト分の通信量と見なさないでください。
Connectivity Testが成功しても接続先にアクセスできない場合は、設定をすべて削除する前に、リクエストとルール、DNS、TLS、接続先サービスとの関係を確認します。テストが失敗しても実際のアクセスに問題がない場合は、テスト方法が現在のサーバーに適しているか確認してください。SettingsでTest Methodを確認できますが、変更は一度に一つだけにし、変更前後の値を記録します。テスト条件の変化による誤判断を防げます。
ここまで完了し、接続状態が安定していて、対象リクエストが想定どおり処理されていれば、基本的な手順は完了です。その後RuleやOn Demandを調整する場合は、一項目ずつ変更し、その都度この手順で確認します。問題が残る場合は、現在の結果を記録して、以下の該当箇所を確認してください。最初から何度も読み込み直す必要はありません。
05 よくある失敗
まず、どの段階で止まっているかを特定し、該当する入力だけを確認します。追加の失敗、スイッチが入らない、サーバーのタイムアウト、一部のWebページだけ失敗するといった問題では、確認すべき箇所が異なります。初回のトラブル対処では、プロトコル、DNS、ルール、テスト方法を同時に変更しないでください。元に戻せたとしても、どの変更が効いたのか分からなくなります。以下の順序で原因を絞り込んでください。詳しい仕組みや応用的な手順はトラブル対処ガイドで説明します。
サブスクリプションを追加・更新できない
まずデバイスのネットワークが使えることを確認し、次にSubscribeのURLが完全か確認してください。認証、URLの失効、応答形式に関するエラーが表示される場合は、サービス提供元に元のサブスクリプション情報を確認します。ログインが必要な一般のWebページ、説明ページ、個別サーバーのパラメータをサブスクリプションURLとして使わないでください。エラーメッセージだけを記録し、完全なURLを公開の質問欄に貼り付けないでください。次にサブスクリプションの失敗を確認する方法をご覧ください。Global Routingを先に変更する必要はありません。
スイッチが入らない・接続がすぐ切れる
まず手順03に戻り、システムのVPN構成を許可したか確認し、ほかのVPN接続が使用中でないか確認します。組織管理下のデバイスでは、ネットワーク権限がデバイスポリシーで制御されている場合があります。デバイスの管理要件に従って対応してください。この問題は接続の確立段階で起きているため、Ruleを選び直しても通常は解決しません。システムに表示されたメッセージを記録し、トラブル対処でインストールや初回起動に関する説明を確認してください。
サーバーがタイムアウトする・接続後にアクセスできない
該当するサーバーの編集画面を開き、情報に沿ってType、Host、Port、認証項目、TLS、通信設定を一つずつ確認します。名前が似ているだけでパラメータも同じだと判断しないでください。正しい設定の代わりにセキュリティ検証を弱めることもしないでください。設定を確認したら、同じ接続先で一度テストします。Wi-Fiとモバイル通信を切り替えて試す場合は、サーバーとモードを変えずに比較してください。片方のネットワークだけで失敗する場合は、その違いを記録し、デバイスのネットワークとサーバーへの到達性を調べます。
一部のリクエストだけ失敗する・速度が想定と異なる
まずGlobal Routingを確認し、同じ接続先でConfigとProxyの結果を比較します。Configだけで失敗する場合は、現在の設定、ルールの順序、ポリシーの参照を優先して確認します。両方のモードで失敗する場合は、サーバー経由の経路と接続先サービスを確認してください。ドメインに関する問題はDNSのトラブル対処もご覧ください。一つの接続先で失敗しただけでDNS設定全体を変更したり、一度のテスト結果から長期的な速度を判断したりしないでください。
Settings:必要な診断情報を確認
Settingsを開いたら、まず現在調べている問題に関係する項目を確認します。Test Methodはテスト方式の確認に使い、Diagnosticsは追加確認の入口になります。On Demandは自動接続の条件に関係します。Proxy、TCP、UDPなどの設定は用途を把握してから個別に確認してください。初回接続時にこれらをすべて変更する必要はありません。スクリーンショットは設定項目の位置を確認するためのもので、値をそのまま設定するよう求めるものではありません。
サービス提供元に問題を問い合わせる場合は、エラーメッセージ、発生条件、実施した比較テストを伝えてください。スクリーンショットや診断記録を共有する前に、Password、サブスクリプションの認証情報、その他の個人情報を削除します。原因を特定できない場合は、詳しいトラブル対処ガイドの症状別の項目を確認してください。基本操作の完了後は、機能ガイドでOn Demandや診断機能を確認し、必要に応じて一項目ずつ設定を広げてください。