公式マニュアル · 初回接続
Shadowrocketの使い方サブスクリプションの追加と接続確認
まず手元の情報を追加し、Global Routingを選択してから、実際の通信を確認します。iPhoneとiPad向けの手順です。初めて操作する場合は順に読み、問題が起きたら該当する段階を確認してください。
- 手元の情報を追加する
- 接続方法を選ぶ
- 実際の通信を確認する
STEP 01 / IMPORT
Add ServerとSubscribeの読み込み
Shadowrocketを開いたら、まずHome画面にとどまり、画面上部の接続スイッチはまだオンにしないでください。サービス提供元から入手した情報を用意し、内容に応じて追加方法を選びます。サーバー一覧を取得するサブスクリプションURLにはSubscribeを使います。プロトコル、アドレス、認証情報が明記された情報には、該当するサーバーのTypeを使います。入力内容は異なります。サブスクリプションURLをHostに入力しても接続できません。
サブスクリプションURLがある場合
HomeでAdd Serverをタップし、追加画面でTypeを開いてSubscribeを選びます。該当するURL入力欄にサブスクリプションURL全体を貼り付け、画面の保存操作を行ってからHomeに戻り、読み込みを待ちます。入力欄に文字が入っている場合は、いったん消してから貼り付けてください。複数のURLが連結されるのを防げます。URLには認証情報が含まれることがあります。コピー時はパラメーターを省略せず、先頭や末尾に空白、改行、チャットの文章が混ざっていないか確認してください。
Homeに戻り、SERVERにサブスクリプションから取得した項目が表示されているか確認します。リストが表示されたら、使うサーバーを1つ選択してください。すぐに何度もサブスクリプションを更新する必要はありません。保存後もリストが空の場合は、URLが有効か、読み込みが許可されているか、現在のネットワークからURLにアクセスできるかを確認します。サブスクリプションの有効性はサービス提供元に確認してください。サブスクリプション名が保存されただけでは、サーバーが正常に追加されたとは限りません。
サーバー情報がある場合
Add Serverをもう一度開き、サービス提供元が指定するプロトコルに応じてTypeを選び、HostとPortを入力します。認証欄はプロトコルによって異なります。たとえばShadowsocksではPasswordとMethodを確認します。ほかのプロトコルでは、それぞれに必要な項目を確認してください。異なるプロトコルの入力欄を流用しないでください。公式スクリーンショットは一例であり、すべてのTypeで同じ項目が表示されるわけではありません。Hostには通常、サーバーのドメイン名またはIPアドレスを入力します。Webページのパスは追加しないでください。
QRコードがある場合は、Scan QR Codeで読み込んでから各項目を確認できます。Import from Cloud JSONは別の入力方法です。情報の提供元が該当データを明示している場合にのみ使用してください。保存後にHomeへ戻り、今回追加した項目が選択されていることを確認します。ここまでで完了するのは「接続情報をアプリに登録する」ことです。次に、通信に使うルーティング方法を選びます。
STEP 02 / ROUTING
Global Routingのモードを選ぶ
情報を追加したらHomeに戻り、Global Routingをタップして現在の選択を確認します。3つのモードはConfig、Proxy、Directです。通信に使う経路を選択するもので、サーバーのプロトコルを選ぶ項目ではありません。また、ここを変更しても、パスワードの誤り、無効なサブスクリプション、アクセスできないサーバーアドレスは解決しません。
| モード | 操作前に確認する内容 |
|---|---|
| Config(設定) | 有効な設定とルールに基づいて通信の経路を選びます。用途に応じた振り分け設定がある場合に適しています。 |
| Proxy(プロキシ) | 主にプロキシ経由で通信します。選択したサーバーへの実際の接続を確認する際に使えます。システムや設定による例外的な処理も考慮してください。 |
| Direct(直接接続) | 直接接続の経路を使い、現在のネットワークでのアクセスを基準として確認できます。プロキシサーバーの正常性確認には使えません。 |
信頼できる提供元の設定ファイルがある場合は、Config画面で有効にするファイルを確認し、Ruleとポリシーの設定を確認してください。サブスクリプションと設定ファイルの役割は異なります。サブスクリプションは主にサーバー情報を提供し、設定ファイルは通信の処理方法を定めます。Subscribeを読み込んだからといって、必要な振り分けルールも自動で用意されるとは限りません。
公式スクリーンショットには、Configの編集画面にあるGeneral、Rule、Hosts、URL Rewrite、HTTPS Decryption、Add Ruleが表示されています。初回接続時にすべての項目を変更する必要はなく、HTTPS Decryptionを有効にする必要もありません。内容を把握できる設定を維持し、「接続するため」に接続と関係のない項目を複数同時に変更しないでください。サーバーの動作だけを確認したい場合は、いったんProxyで確認してからConfigに戻り、振り分けの違いを調べます。
Ruleでは通常、上から順に通信を照合し、最初に一致したルールのポリシーが適用されます。FINALは、それより前のルールに一致しなかった通信を処理します。たとえば、以下の例ではサンプルドメインにPROXYを適用し、それ以外にはDIRECTを適用します。これはルールの照合方法を説明する例です。既存の設定を置き換えるための完全なファイルではなく、あらゆる用途に適するわけでもありません。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
設定でポリシーグループを参照している場合は、グループ内で有効なサーバーが選択されていることも確認してください。ルールにPROXYが適用されても、サーバー自体が利用可能とは限りません。ルールの優先順位、DNS、各セクションの構文については設定ガイドをご覧ください。このチュートリアルでは、まず状態を把握しやすく再現可能なモードを維持してから、接続手順に進みます。
STEP 03 / CONNECT
Homeで接続スイッチをオンにする
追加した項目とGlobal Routingを確認したら、Homeに戻ります。SERVERで今回使うサーバーを選び、画面上部の接続スイッチをオンにします。公式スクリーンショットのNot Connectedは撮影時に未接続だったことを示し、サーバー名ではありません。操作時は画面上部の接続状態と、リストで選択中の項目を確認してください。新しい情報を追加しても、以前の項目が選択されたままになっていることがあります。
初回接続時、システムにVPN構成の追加を許可するか確認される場合があります。これはシステムのネットワーク拡張機能を通じて通信を処理するための許可であり、アプリを再購入する手続きではありません。表示されたアプリ情報を確認し、システムの案内に従って許可とデバイス認証を完了してから、Shadowrocketに戻って状態を確認してください。すでに許可済みの場合、次回以降は同じ確認画面が表示されないことがあります。
許可をキャンセルすると、接続スイッチがオフに戻る場合があります。その場合は接続をやり直し、表示に従って許可してください。認証の問題をサーバーのパスワード変更で解決しようとしないでください。組織によって管理されている端末では、管理上の制限によりVPN構成を追加できない場合があります。端末の管理ルールに従って対処してください。システム設定のVPN構成とアプリ内のサーバー項目は別のものです。前者を削除しても、後者の問題は解決しません。
Homeに接続済みと表示されたら、サーバーとモードを変えずに次のテストを行います。接続状態が示すのは、リクエストを処理するローカルの経路が起動したことです。すべてのリモート通信が成功したことや、設定内のすべてのルールが想定どおりであることを意味するわけではありません。サーバー認証、DNSの名前解決、接続先サイトの応答は、その後のアクセス時に問題が発生することがあります。
使い終わったらHomeに戻り、画面上部のスイッチをオフにできます。オフにしても自動で再接続する場合は、スイッチを何度も切り替えるのではなく、SettingsでOn Demandが設定されているか確認してください。トラブルシューティング中は手動操作の手順を明確に保ち、基本的な接続を確認してから必要に応じて自動接続を設定します。
STEP 04 / VERIFY
Connectivity Testで結果を確認する
選択したサーバーはそのままにし、HomeでConnectivity Testを実行して、完了するまで待ちます。結果はSettingsのTest Methodとあわせて確認してください。テスト方法によって確認する段階が異なります。ネットワークへの応答の有無だけを確認するものもあり、表示された時間をすべてのWebサイトの実際の通信速度とみなすことはできません。テストに失敗しても、実際のアクセス結果を確認せずにサーバーの全機能が停止したと判断しないでください。
次にブラウザーを開き、普段使っていて現在も応答するはずのWebサイトにアクセスします。必要に応じてページを再読み込みし、明確な新しいリクエストで確認してください。ブラウザーに残っているキャッシュを表示しているだけの場合があります。ページが開くか、読み込みが続いて失敗するか、一部のリソースだけ読み込めないか、初回表示が極端に遅いかを確認します。「使える」「使えない」だけでなく、具体的な現象を記録すると原因を特定しやすくなります。
Configを使っている場合は、DIRECT経由が想定される通信と、プロキシ経由が想定される通信をそれぞれ確認してください。Webサイトが開いても、たまたまDIRECTに一致しただけかもしれません。その結果だけでプロキシ経由も正常とは判断できません。ProxyではアクセスできるのにConfigでは失敗する場合は、ルールやポリシーグループを確認してください。比較時はGlobal Routingだけを切り替え、サーバーとテスト先は変えないようにします。テスト後は、使用する予定だったモードに戻してください。
通信量の変化を確認する場合はDataを参照できます。ただし、統計値は通信が発生したかを補助的に確認するためのもので、個々のルールが正しいことを証明するものではありません。1回のテストで、すべての接続先、時間帯、プロトコルの正常性を確認することもできません。基本確認の目安は、接続スイッチの状態が安定していること、想定した接続先に実際にアクセスできること、現在のモードが想定する経路と一致していることです。1つでも満たさない場合は、以下の段階別チェックを続けてください。
STEP 05 / DIAGNOSE
よくあるエラーとSettingsの確認
トラブルシューティングでは、まずどの段階で止まっているかを確認し、その問題に関係する設定だけを変更します。サブスクリプションの再作成、プロトコルの切り替え、DNSの変更、ルールの書き換えを一度に行わないでください。復旧しても、どの変更が有効だったのか分からなくなります。必要な設定を記録し、同じテスト先を使って、変更のたびに同じ手順で確認しましょう。
項目を追加できない
Homeに目的のサーバーが表示されない場合は、Add Serverに戻り、Typeと入力内容を確認します。Subscribeに入力するのはサブスクリプションURLであり、サービス提供元のWebサイトへのログインURLではありません。URLのパラメーターも勝手に削除しないでください。読み込み結果が空、認証エラーが表示される、内容を解析できない場合は、サービス提供元にURLの状態と返される形式を確認します。利用可能なサーバー情報が準備できていないため、この段階では接続スイッチの確認は優先事項ではありません。
項目はあるが、テストまたは認証に失敗する
手動で追加した情報は、Host、Port、Passwordと、プロトコルに応じたMethod、TLSなどの必要項目を1つずつ確認してください。各項目はサービス提供元の案内に従い、経験から推測しないでください。端末の日付や時刻が正しくないと、証明書の有効期間に依存する接続に影響することがあります。TLSを使う場合はサーバー名と証明書情報を確認し、証明書の検証を無効にする方法を一般的な解決策として使わないでください。
SettingsでTest Methodを開き、確認したい内容に合ったテスト方法かを確認します。特定のテストに失敗しても実際のアクセスが正常な場合は、その違いを記録しておき、テスト結果を得るためだけに接続設定を何度も変更しないでください。反対に、テストに応答があってもページを開けない場合は、DNS、ルーティング、接続先の応答を引き続き確認します。
接続スイッチが維持されない、または自動で再接続する
接続スイッチがすぐオフに戻る場合は、システムのVPN許可が完了しているか、端末の管理上の制限があるか、アプリにエラーが表示されているかを優先して確認します。手動でオフにしても再接続する場合は、SettingsでOn Demandの条件を確認してください。トラブルシューティング中は有効な自動接続条件を一時的にオフにし、手動接続をもう一度試すことができます。確認後は必要に応じて元の設定に戻してください。自動接続の動作とサーバー認証の問題は分けて考えましょう。
接続済みだが、一部の通信だけ失敗する
まずProxyとConfigで結果を比較します。大きな違いがある場合はConfigに戻り、一致したルール、ポリシーグループの選択、最後に適用されるFINALを確認してください。ドメイン名の名前解決に失敗し、IPアドレスへの直接接続は応答する場合は、DNSをさらに確認します。ただし、アクセスに失敗した画面が1つあるだけでは、DNSが原因とは限りません。TCPとUDPは影響を受ける段階が異なることもあります。接続先のアプリとサービス提供元が案内する対応状況をもとに判断し、Settingsの項目を目的なく次々と切り替えないでください。
追加の手がかりが必要な場合は、SettingsのDiagnosticsを開き、直前に発生したエラーに関する診断情報を収集します。共有する前に内容を確認し、サブスクリプションURL、認証情報、個人の利用状況が分かる情報を隠して、トラブルシューティングに必要な部分だけを残してください。複雑なルール、DNS、設定ファイルの各セクションについては設定ガイドをご覧ください。基本の手順をもう一度確認する場合は、このチュートリアルの情報追加手順に戻り、設定をすべて変更するのではなく、順に見直してください。