公式マニュアル / 初回操作

Shadowrocketのサブスクリプション追加
と初回接続手順

「追加 → モード選択 → 接続 → 確認 → トラブル対処」の順に進めます。まず、既存の接続情報を使ってテストできる状態にし、その後でルールや設定を確認しましょう。

以下では英語の画面項目名をそのまま記載し、必要に応じて日本語の意味を補足します。画像はApp Storeの公式スクリーンショットで、画面の位置を確認するためのものです。項目や配置はプロトコル、デバイス、アプリの画面によって異なる場合があります。実際のアプリに表示される内容をご確認ください。

手順 01 / 接続情報を追加する

Add Server / Subscribe:サーバーを追加、または既存のサブスクリプションを読み込む

まず、手元の情報がサブスクリプションURLなのか、サーバーのパラメーター一式なのかを確認します。入力場所が異なるため、サブスクリプションURLをHostに入力しないでください。

サブスクリプションURLがある場合:Subscribeを選択

HomeからAdd Serverを開きます。通常は右上の追加ボタンをタップするか、一覧にあるAdd Serverを選択します。Typeの選択画面を開き、Subscribeを選びます。フォームがサブスクリプション用の項目に切り替わり、手動サーバー用のHostやPortなどが表示されていないことを確認します。種類を確認してから、手元にあるサブスクリプションURL全体をURLに入力してください。

  1. サービス提供元から既存のサブスクリプションURLをコピーし、先頭と末尾が欠けていないか確認します。空白や改行、チャットメッセージの説明文が混ざらないようにしてください。
  2. SubscribeフォームのURLに入力します。必要に応じて見分けやすいメモを追加し、画面右上の完了または保存ボタンをタップします。
  3. Homeに戻り、サブスクリプションの取得が完了するまで待って、該当するグループにサーバー項目が表示されるか確認します。グループだけが表示されて項目がない場合は、まずエラーメッセージを確認してください。同じURLをすぐに何度も追加しないでください。

サブスクリプションURLには認証情報が含まれることがあるため、パスワードと同じように管理してください。URL全体を公開ページやスクリーンショット、診断記録に貼り付けないでください。このページでURLを送信する必要はありません。ウェブページのURLをコピーした場合、それがクライアントで読み込めるサブスクリプションURLとは限りません。Safariで開けても、Subscribeからインポートできるとは限りません。

サーバー情報がある場合:Typeに合わせて入力する

ホスト、ポート、認証情報がある場合は、Add Serverで情報に合ったTypeを選択します。プロトコルによって表示される項目は異なり、パスワードだけで種類を判断することはできません。公式スクリーンショットのフォームを例にすると、Hostにサーバーアドレス、Portにポート番号を入力します。PasswordとMethodは元の情報と一致させてください。Typeによっては、認証情報、転送方式、TLSの項目も必要です。

ホストの形式はexample.comのようになります。これはドメイン形式の例で、接続可能なサーバーではありません。ホスト名だけを入力する項目に、ウェブページのパスを含むURL全体を入力しないでください。また、サブスクリプションURLのパラメーターを分解して、サーバーの認証情報として入力しないでください。提供されていない項目は現在の値のままにします。項目の設定が必要な場合は、すでに利用しているサービスの情報源で確認してください。

QRコードがある場合は、Add ServerでScan QR Codeを使えます。スキャン後もTypeとサーバー情報を確認してください。Import from Cloud JSONは、対応する形式の情報を読み込む機能であり、任意のサブスクリプションURLを読み込むための汎用機能ではありません。保存後にHomeへ戻り、追加した項目が表示されていることを確認してから、ルーティングモードを選択します。「保存成功」は情報が登録されたことを示すだけで、接続確認はまだ完了していません。

Shadowrocketのサーバー追加画面。Type、Host、Port、Password、Methodの項目と、QRコードのスキャンおよびCloud JSONのインポート機能が表示されています。
Add Server:先にTypeを選び、手元の情報に合わせて項目を入力します。スクリーンショットの項目は選択中のTypeに対応しています。

手順 02 / 通信の処理方法を選ぶ

Global Routing:Config / Proxy / Direct

サーバー項目は「どこに接続するか」を指定し、Global Routingは「接続をどのように処理するか」を指定します。それぞれ別に確認してください。

Homeに戻り、Global Routingをタップして現在のモードを確認します。まず現在の選択を記録し、テストの目的に応じて変更してください。「サブスクリプションを読み込んだこと」と「ルールを設定したこと」は別です。サブスクリプションは通常サーバー項目の更新に使い、Config内の設定ファイルにはルールなどを含められます。それぞれ役割が異なります。

  1. Config:現在選択している設定ファイルのルールに従って処理方法を決めます。通常のルーティングに使うモードですが、使用中の設定ファイルと、接続先に対して想定される動作を事前に把握しておく必要があります。
  2. Proxy:クライアントが処理する接続を、選択したプロキシ経由で処理します。サーバーが使えるか初めて確認する際は、ルールによる振り分けの影響を減らすため一時的に使えます。ただし、サーバー情報やネットワークの確認に代わるものではありません。
  3. Direct:リモートプロキシを経由せず、直接接続します。元のネットワークの状態を比較する際に使います。リモートサーバーへの接続成功を確認する用途には適しません。

Configを使う前に現在の設定を確認する

Configを開き、設定ファイルの一覧と現在選択されているファイルを確認します。設定ファイルの編集画面では、General、Rule、Hostsなどのセクションが表示されます。右側の公式スクリーンショットは設定ファイルの編集画面で、HomeのGlobal Routing選択メニューではありません。ファイルを開いたり編集したりしただけでは、現在の設定として選択されたことにはなりません。一覧に戻り、選択状態を確認してください。

初回操作で、すぐにAdd Ruleを開く必要はありません。設定ファイルが信頼できるご自身の情報源から入手したものであれば、説明を確認し、元のファイルを保管してください。ルールは通常、上から順に照合されます。先に一致したルールが通信先を決めることがあるため、最後のルールだけを見て、すべてのサイトが同じサーバーを経由すると判断しないでください。

たとえばDOMAIN-SUFFIX,example.com,PROXYは、該当するドメインのサフィックスにPROXYポリシーを適用する例です。FINAL,PROXYは、それまでに一致しなかった接続を処理します。いずれもルールの意味を示す例で、設定ファイル全体を置き換える指示ではありません。ルールの詳細は用語集、ConfigとSettingsの詳しい説明は設定マニュアルをご覧ください。

ここまで終えると、現在選択しているモードと想定される結果を説明できる状態になります。追加したサーバーだけを確認する場合は、まずConfigの状態を記録し、一時的にProxyを選択します。確認後、必要に応じてConfigに戻してください。一度に変更する条件を1つにすれば、サーバーとルールのどちらに問題があるかを見分けやすくなります。

Shadowrocketの設定ファイル編集画面。General、Rule、Hosts、URL Rewrite、HTTPS DecryptionのセクションとAdd Ruleが表示されています。
Config:設定ファイルの編集画面です。Global Routingのモード選択はHomeに戻って行います。

手順 03 / システム接続を確立する

Home:サーバーを選択して接続をオンにする

選択した項目とルーティングモードを確認してから、システムのVPN構成を許可します。許可、接続の確立、実際のアクセスはそれぞれ別の段階です。

Homeに戻り、SERVERまたはサブスクリプショングループからテストする項目をタップし、選択マークが目的の項目に付いていることを確認します。一覧にサーバーがあるだけでは、そのサーバーが使用中とは限りません。複数のグループを読み込んだ場合は、テスト中に何度も切り替えず、まず1つだけ選択してください。結果との対応がわかりにくくなります。

  1. Global Routingが前の手順で決めたテスト内容と一致していることを確認し、Home上部の接続スイッチをオンにします。未接続の場合、上部にNot Connectedなどの状態が表示されます。
  2. 初回の接続要求時に、システムからVPN構成を追加する確認が表示されることがあります。直前にShadowrocketで行った操作に対する確認であることを確かめ、説明を読んで許可し、システムの案内に従ってデバイス認証を完了してください。
  3. アプリに戻り、画面上部の状態とスイッチがオンのままか確認します。スイッチがすぐにオフに戻る場合は、その時点のエラー情報を残し、このページの設定とトラブル対処へ進んでください。許可操作を続けて何度も繰り返さないでください。

VPN構成を許可すると、アプリがシステムのネットワーク拡張機能を使って接続を処理できるようになります。ただし、入力したサーバーがシステムによって検証されたことや、特定のウェブサイトにアクセスできることを示すものではありません。以前に許可しなかった場合は、接続スイッチを再度オンにした際の案内に従ってください。必要に応じて、システムの「設定 → 一般 → VPNとデバイス管理」で該当するVPN項目を確認します。表示名はシステムのバージョンによって異なる場合があるため、デバイスの画面をご確認ください。

システム設定を確認する際、別の用途で使っている管理構成を不用意に削除しないでください。会社や学校が管理するデバイスでVPN構成の追加が制限されている場合は、アプリのサーバー項目を何度も変更せず、まずデバイス管理上の要件を確認します。構成を追加できるかどうかと、リモートサービスが使えるかどうかは別の問題です。

接続スイッチがオンのままになったら、次の手順で実際のアクセスを確認します。システムのVPN表示でわかるのは接続状態であり、どのルールが適用されたかまでは確認できません。他のVPN接続も動作している場合は、どの接続がネットワークを処理しているかを確認してからShadowrocketの状態を判断してください。ステータスバーのアイコンだけで結論を出さないでください。

ShadowrocketのHome画面。上部にNot Connected、接続スイッチ、Global Routing、Connectivity Test、下部にSERVERグループとAdd Serverが表示されています。
Home:選択中のサーバー、Global Routing、画面上部の接続スイッチを順に確認してから、アクセスをテストします。

手順 04 / 実際の結果を確認する

Connectivity Test:テスト結果と実際のアクセスを確認する

接続をオンにしたら、まず現在のWi-Fiまたはモバイル通信でインターネットに接続できることを確認します。ウェブ認証が必要なネットワークでは、先に認証を済ませてからShadowrocketに戻ってください。そうしないと、サブスクリプションの取得やテスト、ウェブページの表示が失敗しても、サーバー情報ではなくネットワーク自体が原因の可能性があります。

まずアプリ内でテストし、次に目的のページを開く

  1. HomeでConnectivity Testをタップし、テストが完了するまで待って、選択中の項目の結果を確認します。テスト中はサーバーを切り替えたり、Global Routingを変更したりしないでください。
  2. 結果の意味がわからない場合は、SettingsでTest Methodを確認します。方法によって検査する段階が異なるため、数値をすべて実際のウェブ閲覧速度として解釈せず、選択中の方法に沿って確認してください。
  3. Safariを開き、どのように処理されるべきか明確な接続先のページにアクセスします。ページを再読み込みするか、新しいページも開いてみてください。現在のモードに照らして結果を確認し、すでに読み込まれたキャッシュページだけを判断材料にしないでください。

テストで応答があった場合も、それは該当するテスト条件で応答を受信したことを示すだけです。プロキシセッション全体やドメインの名前解決、すべてのウェブリクエストが正常に完了するとは限りません。逆に、あるテストに失敗しても、あらゆる利用状況でサーバーが使えないと決まるわけではありません。まずテスト方法を確認し、実際のアクセス状況やエラー記録と合わせて判断してください。同じテストを何度も実行するより効果的です。

Configでは適用ルールも確認する

Configを使用している場合は、DIRECTになる想定の接続先とPROXYになる想定の接続先をそれぞれ1つ選んで確認します。両方が開けても、同じ経路を通ったとは限りません。さらに確認する場合は、アプリで利用できる接続記録またはLogを開き、接続先ドメイン、該当ルール、ポリシーの結果を照合してください。記録に含まれる項目は、現在のアプリで実際に表示される内容をご確認ください。

Proxyではアクセスでき、Configに戻すと失敗する場合は、現在の設定ファイル、ルールの順序、DNS関連の設定を優先して確認してください。すべてのサーバー情報をすぐに入力し直す必要はありません。Proxyでも失敗する場合は、モードを変えずに、選択中のサーバー、パラメーター、ネットワークを再確認します。これにより「リモート接続の失敗」と「想定どおりに振り分けられない問題」を分けて調べられます。

手順 05 / 失敗した段階から確認する

Settings:元の値を残し、変数を1つずつ確認する

インポート、許可、接続、アクセスのどの段階で失敗したかを判断してから、設定を変更するか決めてください。すべてのスイッチを一度にオンにしないでください。

サブスクリプションに項目がない場合は、取得状況を確認する

Subscribeで保存した後にサーバーが追加されない場合は、URL全体が正しいか、現在のネットワークからサブスクリプションURLにアクセスできるか、サブスクリプションがまだ有効かを確認します。ウェブページを開けるのにインポートできない場合は、アカウント管理ページではなく、サブスクリプション内容を取得するURLかどうかも確認してください。サーバー項目を取得できていない段階では、Global Routingを変更しても、形式や認証の問題は解決しないことがほとんどです。

同じURLを何度も追加して解決しようとしないでください。見分けにくい重複グループが作成されます。元の情報を1つ保管し、画面に表示されたエラーの種類を記録してください。有効期限やURL形式の確認が必要な場合は、すでに利用しているサービスの情報源に問い合わせます。サブスクリプションを削除して再追加する前に、自分で変更した情報が含まれていないか確認してください。

項目はあるのに接続できない場合は、パラメーターと許可を確認する

手動で追加した項目は、Type、Host、Port、認証項目を1つずつ照合します。コピー時に空白が混ざっていないか、大文字・小文字が異なっていないか、転送方式やTLSの項目が抜けていないかを確認してください。プロトコルによって必要な情報は異なります。他のTypeのフォームにある初期値を、現在のサービスに必須の値だと判断しないでください。サブスクリプションから生成された項目を使う場合は、複数の項目を直接上書きせず、まずサブスクリプションを更新して内容を確認してください。

接続スイッチがオンのままにならない場合は、システムのVPN構成を許可したか、アプリが接続エラーを報告しているかを切り分けます。許可を拒否した場合と、サーバーが接続を拒否した場合は別の問題です。該当するVPN項目を誤って削除した場合は、Shadowrocketに戻って接続を再度試し、システムの案内に従って許可してください。デバイスの管理上の制限がある場合は、その要件に従ってください。

接続中なのにアクセスできない場合は、ルールとDNSを確認する

まずDirectになっていないことと、Homeで選択中のサーバーを確認します。一部のドメインだけ失敗する場合は、接続先と症状を記録してください。たとえば、名前解決に失敗する、接続がタイムアウトする、ページの一部のリソースが読み込めないなどです。そのうえでConfigのルール経路を確認します。1つのページが開けないだけでDNS設定をすべて変更したり、トラブル対処のためにHTTPS Decryptionを安易に有効にしたりしないでください。

DNSはドメイン名の解決方法を決め、ルーティングルールは接続の処理方法を決めます。両方が結果に影響します。ConfigとProxyを比較する場合は、まず元のモードを記録し、同じネットワークと接続先でテストしてから元の値に戻してください。テスト中に変更する項目をできるだけ1つにすれば、どの変更が影響したか判断できます。DNS、ルール、ログの詳しい説明は設定マニュアルをご覧ください。

Settingsは意味を確認してから値を変更する

公式スクリーンショットのSettingsには、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP、UDPなどの項目があります。Test Methodは接続テストの結果の解釈に影響します。On Demandは条件に応じて接続を開始する機能で、手動接続を確認してから設定することをおすすめします。Today Widgetはショートカット関連の設定で、サーバー接続を修復する手順ではありません。

Diagnosticsはトラブル対処の手がかりを集めるために使えますが、記録は特定の失敗操作に絞って確認してください。まず操作の順序を記録してから問題を再現します。複数のサーバーを続けて切り替え、最後のメッセージだけを残すことは避けてください。記録を共有する前に、サブスクリプションURL全体、パスワード、認証情報、その他の個人情報を削除してください。このガイドでは、これらの情報を公開して送信する必要はありません。

既存のサーバーで想定どおりにアクセスできたら、再現できる設定を保ったまま、On Demandなどの便利な機能を少しずつ有効にしてください。再テストではこのページの手順に沿って確認し、アプリを削除したり、設定をすべて作り直したりする必要はありません。購入、許可、サブスクリプションの更新に関する質問はよくある質問をご覧ください。Subscribe、Config、PROXY、DIRECTの違いは用語集で確認できます。

ShadowrocketのSettings画面。Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP、UDPの項目が表示されています。
Settings:まずTest MethodとDiagnosticsの用途を確認します。初回は手動接続の確認を優先してください。