Shadowrocketの使い方ガイド
既存の設定から始め、追加、モード選択、接続、動作確認の順に進めます。
このページではiPhone / iPadでの操作を中心に、初めて使う方が手順を確認できるよう解説します。まず1つの設定で接続を確認してから、複数のサーバーや複雑なルールを整理しましょう。システム要件はApp Storeの掲載内容をご確認ください。
手順 01 · 接続設定を準備する
Add Server / Subscribe 追加と読み込み
サブスクリプションの読み込みと手動追加は別々の方法です。手元にある情報に合わせて、どちらかを選びます。
Shadowrocketを開いたら、画面上部のスイッチは操作せず、まずHomeを表示します。下部のSERVERグループを確認してください。初めて使う場合は、ご自身のサーバー情報をここに追加します。サブスクリプションURLがある場合はSubscribeを使い、アドレス、ポート、プロトコル、認証情報が個別にある場合はAdd Serverから手動で入力します。通常のWebページのURLをサブスクリプションとして使ったり、サブスクリプションURLをサーバーのHost欄に入力したりしないでください。
サブスクリプションURLがある場合:Subscribeを選択
Homeの右上にある追加ボタン、またはリスト内のAdd Serverをタップします。追加画面でTypeからSubscribeを選択し、サブスクリプションURLを入力するURL欄に、ご自身の完全なURLを貼り付けます。このサブスクリプションを識別しやすい名前も入力してください。貼り付けた後、URLの先頭や末尾に空白や改行が入っていないか確認します。コピー時にクエリパラメーターが欠けていないかにも注意し、見慣れないパラメーターを自己判断で削除しないでください。
保存してHomeに戻り、サブスクリプションの読み込みが終わるまで待ってから、SERVERに該当するグループとサーバー項目が表示されるか確認します。サブスクリプション名が表示されても、サーバー情報が読み込まれたとは限りません。グループを展開し、中に項目があることを確認してください。リストが空の場合は接続手順に進まず、URLが有効か、現在のネットワークから読み込めるか、ご自身のサブスクリプションが有効かを確認します。同じURLを繰り返し読み込むと同じグループが増えて選びにくくなるため、何度も追加しないでください。
サーバー情報が1件ある場合:項目ごとに入力
Add Serverを開き、まずTypeを選択してから、選択したプロトコルに表示される項目を入力します。Hostにはサーバーのドメイン名またはアドレス、Portには接続ポートを入力します。たとえばShadowsocksではPasswordとMethodも確認します。Typeによって必要な認証情報や通信項目は異なります。手元の情報を省略せず入力し、名前が似ているからといってプロトコルを変更したり、別のサーバーを参考に暗号化方式を推測したりしないでください。スクリーンショットは一例で、すべてのプロトコルで同じ項目が使われるわけではありません。
内容を確認して保存し、Homeに戻って追加した項目を探します。手元にQRコードがある場合はScan QR Codeで読み込めます。システムから求められた場合はカメラへのアクセスを許可してください。読み込み後もType、Host、Portを確認します。Import from Cloud JSONは対応する形式の設定をすでにお持ちの場合に使う機能です。通常のサブスクリプションを読み込むために形式を変換する必要はありません。クリップボード、QRコード、サブスクリプションURLには認証情報が含まれる場合があります。内容全体を公開ページに貼り付けたり、他人に渡してトラブル対処を依頼したりしないでください。
SERVERに選択可能なサーバー項目が表示され、グループ名だけの状態ではないことを確認できれば、この手順は完了です。サブスクリプションの更新、複数のサブスクリプションの整理、バックアップについてはサーバー管理マニュアルをご覧ください。初回接続では設定を1つに絞り、見分けやすい状態にしてから次の手順でルーティングモードを選びます。
手順 02 · リクエストの処理方法を決める
Global Routing モードとルール
サーバーは接続先を決め、Global Routingはリクエストの処理方法を決めます。
サーバーを保存してHomeに戻り、Global Routingをタップして現在の選択を確認します。よく使う選択肢はConfig、Proxy、Directの3つです。初めて設定するときは、既存のサーバーが使えるか確認したいのか、既存のルールに従ってWebサイトごとに処理したいのか、目的を明確にしましょう。モードとサーバーの選択は別々の設定です。サーバーだけを変更してモードを確認しないと、意図と異なる結果になることがあります。
Config:現在の設定に基づいてルールを適用
Configを選ぶと、有効になっている設定内のルールとポリシーに従ってリクエストが処理されます。続いて画面下部のConfigを開き、使用可能な設定が追加されていることと、目的のファイルが有効になっていることを確認してください。ファイルをリストに追加しただけでは、適用中とは限りません。設定の編集画面にはGeneral、Rule、Hosts、URL Rewrite、HTTPS Decryptionなどの項目があります。初めて使う場合は、まずRuleを確認しましょう。接続するためにすべての項目を変更したり、HTTPS Decryptionを先に有効にしたりする必要はありません。
ルールは通常、並んでいる順に確認されます。条件が具体的なルールを前に置き、最終ポリシーを末尾に設定します。以下の例は「指定したドメインサフィックスにはPROXYを使い、それ以外にはDIRECTを使う」構成を理解するためのものです。example.comは説明用のドメインであり、サーバーアドレスではありません。この書き方が意図どおりに動作するのは、ご自身の設定で各ポリシーが有効になっており、ルールの順序も正しい場合に限られます。バックアップしていない現在の設定に、例全体をそのまま上書きしないでください。
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
ProxyとDirect:通信経路を指定する
Proxyは、クライアントで処理するリクエストをプロキシ経由にします。選択したサーバーを一時的に確認する場合に便利ですが、Config内のルールを1つずつ適用するわけではありません。Directは直接接続するため、プロキシサーバーが動作している証明にはなりません。これまでDirectでテストしていた場合、Webサイトが開いても、追加したサーバーが有効だとは判断できません。
用途が明確な信頼できる設定をお持ちの場合はConfigを選び、現在有効なファイルを確認してください。サーバーに接続できるかだけを切り分ける場合は、一時的にProxyを選んでテストし、終わったら目的のモードに戻します。変更前の選択を控え、設定は一度に1つだけ変更してください。ルールや設定の詳しい管理方法は機能と設定をご覧ください。このページでは次に、システム接続を確立します。
手順 03 · システム接続を確立する
Home 接続スイッチをオンにする
選択中の項目とモードを確認してから、初回に表示されるシステムのVPN構成に関する案内に進みます。
Homeに戻り、SERVERから使用するサーバーを選びます。選択マークが目的の項目に付いており、同じ名前の別項目ではないことを確認してください。サブスクリプションに複数のサーバーがある場合は、トラブル対処中にサーバーとモードを同時に変更しないよう、初回テストでは1つに固定します。Global Routingの現在の選択も再確認し、前の手順で選んだモードと一致していることを確かめます。
Homeの画面上部にある接続スイッチをタップします。初回接続時は、システムからVPN構成の追加を許可するか確認されます。案内を読んで許可し、デバイスの要求に従ってパスコードまたは生体認証を完了してください。この操作は、クライアントがシステムのネットワーク接続構成を作成することを許可するものです。サブスクリプションへのログインではなく、不足しているサーバー認証情報が自動で補われることもありません。システムの案内で、このサイトへのサブスクリプションパスワードの提供を求められることはありません。
システムでの確認を終えたらShadowrocketに戻り、画面上部のNot Connected表示が変わったか、スイッチがオンのままか確認します。スイッチがすぐに戻る場合は、システムの許可が完了しているか、選択したサーバーの項目がすべて入力されているかを確認してから、このページのトラブル対処に進んでください。案内を以前にキャンセルした場合は、接続をもう一度試せます。それでも解決しない場合は、デバイスの「設定」にあるVPN管理画面で該当の構成を確認してください。具体的な項目名や場所はシステムによって異なる場合があります。
画面上部の接続状態は、システムのトンネルが確立しているかを示すもので、目的のWebサイトにアクセスできた証明ではありません。サーバー認証、ドメイン解決、ルール選択、接続先サイトからの応答は、その後のリクエストで失敗する場合があります。接続状態が正常でも、Connectivity Testと実際のWebページ表示を続けて確認してください。スイッチの色が変わっただけで判断しないでください。
初回テスト中はアプリを前面に表示し、自動接続条件のOn Demandなどを追加しないことをおすすめします。一時停止する場合はHomeに戻って接続スイッチをオフにしてください。重要な設定を変更したら、画面の案内に従って再接続し、もう一度テストします。システムで別のVPN構成も使用中の場合は、現在どの構成が有効かを先に確認し、別の接続状態を今回の結果と取り違えないようにしてください。
手順 04 · 期待する結果と照らし合わせる
Connectivity Test 動作を確認する
サーバーの利用可否、システム接続の確立、リクエストへのポリシー適用を分けて確認します。
接続後、HomeでConnectivity Testをタップし、テストが完了するか確認します。テスト結果から、選択中のサーバーとテスト先の接続状況を判断できますが、その意味はSettingsのTest Methodの選択によって変わります。特定のテストに成功しても、そのテスト条件で応答があったことを示すだけです。すべてのWebサイトや通信方式が正常に使えるとは限りません。
続いてブラウザーを開き、利用する予定のWebサイトにアクセスして、新しいページを読み込みます。キャッシュ済みの内容を見るだけでは不十分です。まず1つの接続先で基本的なアクセスを確認し、その後ほかの接続先も順に調べます。ページは開くのに画像、ログイン、動画の読み込みに失敗する場合は、具体的にどの部分で失敗したか記録してください。1つのWebページから複数のドメインへリクエストが送られることがあり、メインページが表示されても、すべてのリソースに同じポリシーが適用されたとは限りません。
Configを使う場合:ルーティング結果も確認する
現在のルールでPROXY経由になる接続先と、DIRECT経由になる接続先を1つずつ用意し、それぞれにアクセスします。アプリで確認できるリクエスト記録を使い、実際のドメイン、適用されたルール、最終ポリシーが想定どおりかを確認してください。ページの表示速度だけで経路を判断しないでください。キャッシュ、接続先の負荷、現在のネットワークも表示に影響します。テストの数値が低くても、実際のWebページが速く表示されるとは限りません。
どちらの接続先にもアクセスできるのに、経路が想定と逆の場合は、まずGlobal RoutingがConfigになっているか、有効なファイルが正しいか、より前にあるルールがリクエストに一致していないか確認してください。説明用のルールにあるFINAL,DIRECTは、それ以前のルールに一致しなかったリクエストを処理します。指定したWebサイトが前方のルールに一致しなければ、最終ポリシーが適用される場合があります。これはルールの確認が必要な状況であり、すぐにサーバーの障害と判断する必要はありません。
テスト結果を再現できるよう、そのときのネットワーク、サーバー項目、Global Routingのモードを記録しておきます。Wi-Fiとモバイル通信を切り替えて結果が変わった場合は、サーバーと設定を同時に変えず、同じ接続先をもう一度テストしてください。ネットワーク条件とクライアント設定のどちらが変化の原因か、次のトラブル対処で判断しやすくなります。
手順 05 · 問題が起きた箇所から対処する
Settings / Diagnostics 設定とトラブル対処
どの段階で止まっているかを見極め、該当する項目を確認します。一度に変更するのは1項目だけにし、同じテストを繰り返してください。
読み込み後、サーバー項目が表示されない
Subscribeの該当項目に戻り、URL全体を確認します。ページの説明文までコピーしていないか、パラメーターが欠けていないか、改行が入っていないかを調べてください。現在のネットワークからサブスクリプションを読み込めることを確認し、利用中のサービス提供元に契約状態と内容の形式を問い合わせます。サブスクリプションの更新は、接続先から情報を再読み込みする操作であり、接続先ですでに無効になった認証情報を修復するものではありません。元の項目と必要なバックアップを残して修正し、原因を確かめずに削除と再作成を繰り返さないでください。
リストに項目はあるが、テストに失敗する
まず、ご自身がすでにお持ちの別のサーバーと比較し、1つの項目だけの問題か、すべての項目で起きているかを確認します。手動入力の場合は、Type、Host、Port、Password、Methodに加え、そのプロトコルで必要な通信・認証項目を重点的に確認してください。ポート番号とアドレスを取り違えないようにし、プロトコル接頭辞を含む共有リンク全体をHostに入力しないでください。すべての項目で失敗する場合は、デバイスのネットワークで通常のWebアクセスができるか確認し、別のネットワークとも比較します。すべてのサーバーを一度に変更しないでください。
SettingsでTest Methodを開き、現在どのテスト方式が選択されているか確認します。テスト方式が異なると結果の意味も変わるため、数値が出るまで方式を何度も切り替えるのではなく、実際のリクエストと合わせて判断してください。認証エラーや接続タイムアウトなどが表示された場合は、具体的なエラーと発生した段階を記録し、該当する設定を確認します。「接続できない」の一言だけで済ませないでください。
接続中だが、一部のWebサイトや管理画面に接続できない
Global Routingと現在のConfigを確認し、対象ドメインに想定したルールが適用されているか調べます。一時的にProxyへ変更するとアクセスでき、Configでは失敗する場合は、ルール、ポリシー、DNS関連の設定を優先して確認してください。この比較は原因を絞り込むためのもので、Proxyを常用するよう求めるものではありません。HTTPS Decryptionをむやみに有効にしたり、TCPやUDPの設定をまとめて変更したりして、すべての問題を解決しようとしないでください。
SettingsのOn Demandでは、条件に応じて接続を開始する動作を設定できます。サーバー自体の利用可否を改善する機能ではありません。まず手動接続が安定してから設定してください。自動再接続やネットワーク切り替え後の動作が想定と異なる場合は、現在のOn Demand条件を確認して再テストします。バックグラウンドでのバッテリー消費は、デバイスのバッテリー使用量と実際の使用時間を合わせて確認し、スイッチがオンだった時間だけで判断しないでください。
さらに詳しく調べる場合は、SettingsのDiagnosticsを確認します。エラーが起きた時刻、ネットワークの種類、モード、具体的な接続先を記録しておけば十分です。診断内容を共有する前に、サブスクリプションURLの認証パラメーター、パスワード、個人のアドレス情報を伏せてください。設定全体を公開しないでください。問題別の回答はよくある質問、サブスクリプションの更新、並べ替え、削除、バックアップはサーバー管理マニュアルをご覧ください。