公式マニュアル / クイックスタート
Shadowrocketのサブスクリプション追加とルール設定
追加、モード選択、接続、確認、トラブル対処の順に進めます。初回設定では、まず状態を確認できる接続を1つ確立してから、振り分けルールを調整しましょう。すべての設定を一度に変更する必要はありません。
スクリーンショットはApp Storeの公式掲載画像です。画面上の項目名を確認する際にご利用ください。表示項目はType、デバイス、アプリの画面によって異なる場合があります。実際の画面表示に従い、スクリーンショット内の接続情報をそのまま入力しないでください。
STEP 01 / IMPORT
Add Server:サーバーを追加、またはサブスクリプションを読み込む
サブスクリプションURLと、個別サーバーの接続情報を区別しましょう。サブスクリプションURLは複数のサーバー情報を取得・更新するためのものです。手動で追加する場合は、各項目を個別に入力します。入力方法は異なるため、サブスクリプションURL全体をサーバーのHostに入力してはいけません。Shadowrocketを開いてHomeに進み、SERVERグループのAdd Server、または画面上の追加ボタンから編集画面を開きます。
サブスクリプションURLがある場合:Subscribeを選択
Add ServerでTypeを開き、Subscribeを選択して、ご自身のサブスクリプションURLを対応するURL欄に入力します。見分けやすい名前を付けても構いませんが、アカウントのパスワードは名前に含めないでください。貼り付けたURLの先頭と末尾が欠けておらず、説明文や空白、改行が混入していないことを確認します。保存したらHomeに戻り、読み込み結果を待ちます。
読み込みが完了すると、SERVER一覧にサブスクリプションから取得したサーバー情報または該当グループが表示されます。想定した名前が表示されているか確認してください。サブスクリプション名だけが表示され、サーバー情報がない場合は、接続の準備が完了していません。読み込みに失敗した場合は、URLが有効か、現在のネットワークからアクセスできるか、返された内容がShadowrocketに対応しているかを確認します。同じURLを何度も追加すると選択項目を判別しにくくなるため、繰り返し追加しないでください。
サーバー情報がある場合:Typeに合わせて入力
手動で追加する場合は、お手持ちの情報に合わせてTypeを選び、Host、Portと必要な認証情報を入力します。PasswordやMethodが表示されるかどうかは、選択したTypeによって異なります。編集画面をスクリーンショットと同じ表示にするために、プロトコルを変更しないでください。Hostには通常、サーバーのドメイン名またはIPアドレスを入力します。ウェブページのパスは追加しません。Portはサーバー側の設定と一致させてください。
読み込み用のQRコードがある場合は、Add Server画面のScan QR Codeを使います。読み取った後も各項目を確認してください。Import from Cloud JSONは別の読み込み方法です。この方法に対応したデータがある場合にのみ使用し、Subscribeと混同しないでください。読み込みによって手入力は減らせますが、接続先サーバーが現在利用可能であることを保証するものではありません。
保存後、SERVERに戻り、テストする項目を選択して、選択マークが目的の項目に付いていることを確認します。同じ名前の項目が複数ある場合は、グループとサーバー情報を確認してから次に進んでください。サブスクリプションURLにアクセス情報が含まれている場合があります。トラブル対処の際も、URL全体やQRコードを公開しないでください。サブスクリプションと設定ファイルの違いについては、使用マニュアルをご覧ください。
STEP 02 / ROUTING
Global Routing:Config、Proxy、Directを選択
サーバーを追加しただけでは、すべてのリクエストの経路は決まりません。Homeに戻り、Global Routingをタップして現在のモードを確認します。よく使うモードはConfig、Proxy、Directの3つです。モードはリクエストの経路の選び方を決め、SERVER一覧で選択した項目は、プロキシ接続が必要な場合に使うサーバーを決めます。それぞれ個別に確認してください。
Config:現在の設定ファイルに従ってリクエストを処理
Configを選択すると、現在の設定ファイルにあるルールとポリシーに従ってリクエストが処理されます。使用前にConfigを開き、設定ファイルが一覧に読み込まれているだけでなく、実際に選択されていることを確認してください。公式スクリーンショットにはGeneral、Rule、Hostsなどのセクションがある設定編集画面が表示されています。通常の使い始めに各セクションを変更する必要はなく、一般的な接続のためにHTTPS Decryptionを有効にする必要もありません。
通常、サブスクリプションはサーバー一覧を、設定ファイルはルールなどの設定を管理します。そのため、サブスクリプションの読み込みが完了しても、振り分けルールが適用されたとは限りません。Ruleでルールを確認するときは、条件、順序、適用先のポリシーをあわせて見ます。以下はルールの読み方を説明する例で、設定全体を貼り付けるためのものではありません。実際の設定では、指定するポリシー名が存在している必要があります。
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
この例では、まずドメインのサフィックスを確認し、次にGEOIP条件を判定します。それまでに一致するものがなければ、最後にFINALが適用されます。example.comは構文を説明するための例で、サーバーアドレスではありません。接続情報として使わないでください。ルールの読み方がまだわからない場合は、元の設定を維持し、まずは次のモードで比較します。初回テストで複数のルールを同時に追加・削除しないでください。
ProxyとDirect:結果を比較するためのモード
Proxyは通常のリクエストをプロキシ経由で処理するモードで、ルールによる振り分けに問題があるかを確認するのに役立ちます。通信速度を保証するものではなく、実際の動作は関連設定やネットワーク環境によって異なります。Directはローカルネットワークを経由し、選択中のリモートプロキシサーバーを通しません。基本的なネットワーク接続の確認に使えます。Directで接続先を開けても、プロキシサーバーが正常とは限りません。
最初のトラブル対処では、まずProxyを選び、選択したサーバーでアクセスできるかを確認します。その後、Configに戻して通常の振り分けを確認してください。モードを切り替えるたびにHomeへ戻り、Global Routingの表示を確認します。テスト後は必要なモードに戻してください。ルールの順序やポリシーの参照について詳しくは、使用マニュアルをご覧ください。このページでは、まず接続を1つ確立します。
STEP 03 / CONNECT
Home:スイッチをオンにして接続を許可
サーバーとモードを確認してから、上部のスイッチをオンにします。Homeに戻り、SERVERで現在選択中の項目を確認してから、Global Routingを確認します。上部に表示されるNot Connectedは、アプリの接続が確立していない状態を示します。サーバー情報に誤りがあるという意味ではありません。情報の追加と実際の接続開始は別の操作です。
画面上部の接続スイッチをオンにします。初めて接続を開始するとき、システムからVPN構成の追加許可を求められることがあります。システムの確認画面を読み、現在の操作による要求であることを確かめてから許可してください。デバイスの認証が必要な場合は、画面の指示に従います。この許可により、Shadowrocketがシステム上で対象のネットワーク通信を処理できるようになります。サーバー情報が補完されるわけではなく、リモート側の認証が成功したことを示すものでもありません。
許可したらアプリに戻り、スイッチと接続状態が維持されているか確認します。以前に許可を拒否した場合は、再度起動したときにアプリとシステムの案内に従ってください。再試行のためにサブスクリプションをすべて削除する必要はありません。組織管理下のデバイスなどで権限が制限されている場合は、デバイスの管理要件を確認してください。モードの切り替えを繰り返しても解決しません。
接続スイッチがオンのままになったら、他の設定を変更せず、次の手順で動作を確認します。システムの接続表示は、該当するネットワーク構成が動作中であることを示しますが、すべてのウェブサイトに想定どおり接続できることを保証しません。スイッチがすぐにオフになる、許可が完了しない、エラーが表示される場合は、メッセージの原文と発生した操作を記録し、手順5の項目別チェックに進みます。
初回テストの結果を判断しやすくするため、まずは同じネットワーク環境でテストしてください。スイッチをオンにするのと同時にWi-Fiとモバイル通信を切り替えないでください。サーバー、モード、設定ファイルも同時に変更しないようにします。接続できれば、どの設定の組み合わせが有効か判断できます。その後、普段使うConfigモードに戻し、もう一度確認してください。
STEP 04 / VERIFY
Connectivity Test:テスト結果と実際のアクセスを確認
テスト、実際のアクセス、現在のモードをあわせて確認しましょう。まずHomeでConnectivity Testを実行し、使用予定のサーバーでテスト結果が返るかを確認します。表示される数値は現在のテスト方法による一度の結果であり、ダウンロード速度を示すものでも、すべての接続先へのアクセスを保証するものでもありません。タイムアウトした場合も、テスト方法と実際の接続状況をあわせて判断し、数値だけを根拠にすべての項目を変更しないでください。
次にブラウザまたは接続先のアプリを開き、現在の設定で処理される想定のページにアクセスして、読み込みが完了するまで待ちます。キャッシュ済みの内容だけで判断しないよう、新しいページを開くか再読み込みしてください。選択中のサーバー、Global Routingモード、使用ネットワーク、実際の状況を記録します。まったく読み込めない、一部の内容だけ失敗する、開くものの速度が遅い、といった違いによって、ルール、サーバー、ローカルネットワークのどれを確認すべきかが変わります。
Shadowrocketに戻り、Dataで確認できる通信量やアクティビティ記録を確認します。数値の変化はアプリがリクエストを処理しているか判断する手掛かりになりますが、通信量が増えても、特定の接続先に指定のポリシーが適用されたとは限りません。現在の画面でリクエストの詳細を確認できる場合は、接続先、ルール、ポリシーをあわせて確認してください。ステータスバーの表示や、外部サイトで表示される結果だけを根拠にしないでください。
Proxyではアクセスできるのに、Configでは同じ接続先にアクセスできない場合は、サーバーをすぐに再設定するのではなく、現在の設定ファイル、ルールの順序、接続先に適用されるポリシー、関連する名前解決設定を確認します。両方のモードで失敗する場合は、設定を変えずに接続をオフにし、まずローカルネットワークを確認します。その後、お手持ちの別のサーバー情報があれば比較します。
速度が遅い場合は、初回の読み込み、継続的なデータ転送、断続的な切断を区別してください。すべてを遅延の問題として扱うのは避けましょう。現象ごとの確認方法はトラブル対処をご覧ください。ここでは、初回利用時によくある失敗箇所を確認します。
STEP 05 / CHECK
Settings:失敗した段階に応じて確認し、一度に変更するのは1項目
まず失敗した手順を特定し、該当する設定を確認しましょう。Settingsの項目は、初回接続時にすべて変更するための一覧ではありません。スクリーンショットにあるTest Method、On Demand、Diagnosticsはそれぞれ用途が異なり、スイッチを切り替えるだけですべての問題を解決できるわけではありません。確認を始める前に、サーバー、モード、エラーメッセージの原文を記録し、元の状態に戻せるようにしておきます。
サブスクリプションに内容がない:読み込みを確認
SERVERに想定した項目が表示されない場合は、サブスクリプションの項目に戻り、URL全体と有効性を確認します。現在のローカルネットワークから取得できるか、返された内容が対応する形式かも確認してください。以前は使えていた場合でも、URLのアクセス権限や内容が変わっている可能性があります。ご自身が利用しているサービスの提供元に確認してください。サーバー情報がない問題を、Global Routingの選択ミスと混同しないでください。
一覧にサーバーがあるのに接続できない:情報と許可を確認
選択中の項目の編集画面を開き、Type、Host、Portと認証情報を1つずつ確認します。コピー時に混入した空白や欠けた文字、サーバー側の要件と一致しない通信設定に注意してください。誤りを確認できた項目だけを変更し、保存後にその項目を再選択してテストします。上部のスイッチがオンの状態を維持できない場合は、ルールを変更する前にシステムの許可とアプリの案内を確認してください。
テストがタイムアウトする、結果が一致しない:Test Methodを確認
SettingsでTest Methodを確認し、現在の結果がどのテスト方法で得られたかを把握してから、お手持ちのサーバーを同じ方法で比較します。一部のテストが失敗しても実際のアクセスが成功する場合は、まずテスト条件を確認してください。テストの数値だけで接続全体を判断しないようにします。実際のアクセスも失敗する場合は、アプリの設定を維持したまま、Wi-Fiとモバイル通信を個別に確認します。一度に切り替える条件は1つだけにしてください。
接続状態が自動で変わる:On Demandを確認
手動でオフにした後に接続が再開する場合や、ネットワークの切り替え時に接続状態が変わる場合は、On Demandが有効か、条件が設定されているかを確認します。これは条件に応じて接続を管理する機能であり、サーバーのパスワード誤りや無効なサブスクリプションを修復するものではありません。手動テストの基準を明確にするには、現在の条件を記録してから、関連する自動動作を一時的にオフにします。テスト後は、普段の使い方に合わせて元に戻してください。
一部の接続先だけ失敗する:Configのルールを確認
多くの接続先にはアクセスできるのに、特定の接続先だけ失敗する場合は、ProxyとConfigで結果を比較し、現在有効な設定ファイルを確認します。1つの接続先をテストするために、名前解決や通信に関する設定をすべて変更しないでください。また、HTTPS Decryptionをむやみに有効にしないでください。詳しく記録する必要がある場合は、Diagnosticsの診断機能を確認します。記録を共有する前に、サブスクリプションURL、パスワード、認証情報、個人のリクエスト情報を隠してください。
原因を特定できない場合は、「どの手順で失敗したか、エラーの原文、モード、ネットワーク環境、実施済みの比較テスト1件」を整理すれば、続けて確認できます。設定全体を公開する必要はありません。現象に応じてトラブル対処をご覧ください。Config、Dataや日常のメンテナンスに関する体系的な説明は、使用マニュアル全文をご覧ください。接続できたら普段使うモードに戻し、手順4の確認をもう一度行うと、繰り返し使えるチェック手順になります。