公式マニュアル · クイックスタート
Shadowrocket 初期設定と接続
「インポート → モード選択 → 接続 → 確認 → トラブル対処」の順に進めます。まず接続を一つ確立してからルールを調整し、複数の設定を同時に変更しないようにしましょう。
STEP 01 / IMPORT
Add Server:サーバーの追加またはサブスクリプションのインポート
まず、手元にある情報の種類を確認します。個別のサーバー情報とSubscribe用のサブスクリプションURLは入力方法が異なるため、取り違えないようにしてください。
Shadowrocketを開いてHomeに進み、SERVERグループとAdd Serverを探します。まだ項目を追加していない場合、リストが空でもインストールの問題ではありません。接続情報が保存されていない状態です。手元の情報に応じて方法を選びます。プロトコル、アドレス、ポートなどの項目が個別にある場合は手動で追加し、完全なサブスクリプションリンクがある場合はSubscribeからインポートします。初回はどちらか一方だけ行えばよく、両方を入力する必要はありません。
サーバー情報がある場合:Typeに合わせて入力
Add Serverをタップしたら、まずTypeを選択し、その種類に必要な項目を入力します。画面例にはHost、Port、Password、Methodの入力欄があります。Hostにはサーバーのドメイン名またはIPアドレス、Portには指定されたポートを入力し、PasswordとMethodは手元の情報と照合してください。Typeを切り替えると項目が変わる場合があります。あるプロトコルの項目を別のプロトコルに流用したり、名前だけで選択肢を判断したりしないでください。
一項目ずつコピーし、前後の空白、改行、記号を確認します。特にPortはサーバー情報と一致している必要があります。アドレス欄には通常ホスト名だけを入力し、Webページのパス全体は入力しません。プロトコルによってはUUID、SNI、伝送方式に関する情報も必要です。これらは手元のサーバー情報に従ってください。必要な項目が不足している場合は、情報の提供元に確認してから進めます。各項目の詳しい説明はプロトコル技術リファレンスをご覧ください。
サブスクリプションリンクがある場合:Subscribeからインポート
Add ServerでSubscribeを選び、自分で識別しやすい名前を入力して、対応するURL欄に完全なサブスクリプションURLを貼り付けます。コピー時はURLのクエリ部分も含め、ドメイン名だけを切り出さないでください。また、サブスクリプションURLをHostとして入力しないでください。保存したら、サブスクリプションの取得が完了するまで待ち、Homeに戻って該当するグループまたはサーバー項目が表示されるか確認します。サブスクリプションの登録保存と、項目の取得成功は別です。リストに実際に表示された内容を確認してください。
手元の情報がQRコードの場合はScan QR Codeを使い、必要に応じてカメラへのアクセスを許可します。読み取り後も、認識された種類と項目を確認してから保存してください。Import from Cloud JSONは別のインポート方法で、Subscribeとは異なります。通常のサブスクリプションリンクをこちらに入力しないでください。手元の情報形式に合った方法を使い、「貼り付けられる」ことを「形式が正しい」ことと混同しないようにしましょう。
サブスクリプションURLにはアクセス認証情報が含まれる場合があります。パスワードと同様に慎重に保管してください。トラブル対処時も、URL全体を公開ページやスクリーンショットに載せないでください。インポート後は、使用するサーバーを一つ選んでから次の手順でGlobal Routingを設定します。この段階では詳細設定を変更したり、すべての項目をまとめてテストしたりする必要はありません。
STEP 02 / ROUTING
Global Routing:モードを選択してConfigを確認
サーバーは接続先を決め、Global Routingはリクエストの処理方法を決めます。それぞれ個別に確認してください。
Homeに戻ってGlobal Routingをタップし、現在のモードを確認します。このチュートリアルでは設定(Config)、プロキシ(Proxy)、直接接続(Direct)と表記します。アプリの画面ではConfig、Proxy、Directと表示されます。画面上部のスイッチがオンかどうかだけで、リクエストが必ず選択したサーバーを経由すると判断しないでください。モードとルールも実際の処理経路に影響します。
| モード | 意味と今回の操作 |
|---|---|
| 設定(Config) | 現在の設定ファイルにあるルールに基づいて処理方法を決定します。使用前にConfigで実際に有効なファイルを確認してください。 |
| プロキシ(Proxy) | 通常のリクエストを選択したプロキシで処理します。一時的にモードの違いを比較する際に使えますが、すべての対象へのアクセスを保証するものではありません。 |
| 直接接続(Direct) | 接続先へ直接接続します。接続スイッチがオンでも、選択したサーバーを使っているとは限りません。 |
通常のルールに従って通信を処理する場合はConfigを選び、Configページで現在使用中の設定ファイルを確認します。サブスクリプションのインポートで追加できるのは主にサーバーのリストです。ルール一式が自動で選択・設定されるわけではありません。別途設定ファイルを持っている場合は、まず入手元と用途を確認してから、アプリの該当する画面でインポートして選択してください。ファイルが手元にない場合は、現在の設定を確認し、内容をむやみに上書きしないようにしましょう。
ConfigでRuleを確認
公式画面例には設定ファイルの編集ページが表示され、General、Rule、Hosts、URL Rewrite、HTTPS Decryptionの各セクションとAdd Ruleを確認できます。初回設定ではRuleを中心に確認し、ルールが利用目的に合っているかを見ます。Generalなどの各セクションにはそれぞれ用途があります。初回接続のために一つずつ変更する必要はなく、高度な機能をすべて有効にする必要もありません。
ルールは上から順に照合され、最初に一致した時点で処理が決まります。PROXYは対応するプロキシポリシーで処理し、DIRECTは直接接続、REJECTは拒否を意味します。FINALはそれ以前のルールに一致しない場合のフォールバックです。範囲を限定した例外ルールは、通常、より広い範囲のルールより前に配置します。初回の動作確認では現在の設定を維持して元の状態を記録し、多数のカスタムルールを追加しないでください。
サーバーの問題とルールの問題を切り分ける場合は、一時的にProxyを選んで同じ対象にアクセスし、比較できます。テスト後は使用予定のモードに戻してください。この比較方法を常用設定の推奨と捉えないでください。また、同じ比較の最中にサーバー、ルール、ネットワークを同時に変更すると、原因を特定できなくなります。ルールの並び順について詳しくはルールの順序とFINALのフォールバックをご覧ください。
STEP 03 / CONNECT
Home:サーバーを選択して接続スイッチをオンにする
サーバーを選び、モードを確認してから接続を開始します。初回接続時はシステムのVPN構成に関する許可が必要な場合があります。
前の2つの手順を終えたらHomeに戻り、SERVERグループから今回使用するサーバーを選択します。選択した項目が想定どおりか確認してください。サブスクリプションに複数の項目がある場合、グループ名と現在使用中のサーバー名を混同しないでください。実際に選択されている項目を確認します。選べる項目が見当たらない場合は、接続スイッチを何度も操作するのではなく、最初の手順に戻ってインポート結果を確認してください。
続けてGlobal Routingをもう一度確認します。サーバーとモードを確認したら、Home画面上部のスイッチをオンにします。公式画面例のNot Connectedは撮影時に未接続だったことを示しており、入力する項目ではありません。接続開始後はステータスの変化に注意してください。スイッチがすぐオフに戻ったりエラーが表示されたりした場合は、まず内容を記録します。短時間にスイッチを何度も切り替えると、どの段階で失敗したか分かりにくくなります。
初回接続時にシステムの許可を確認
初回起動時に、VPN構成の追加を求めるシステムの案内が表示されることがあります。これは、アプリが該当するネットワーク接続を確立するために必要な許可であり、お持ちのサーバーアカウントの認証とは異なります。申請元がShadowrocketであることを確認し、システムの案内に従って許可してください。デバイスの認証を求められた場合は、デバイス所定の方法で認証します。許可が完了していないと、通常は接続を確立できません。
許可をキャンセルした場合は、Homeに戻って接続を再度オンにし、システムの案内を確認してください。デバイスが管理ポリシーによって制限されている場合は、その要件に従って対応し、無関係な設定を変更して制限を回避しないでください。また、デバイス上で別のVPN接続が確立されていないか確認します。接続の切り替えによる変化をサーバーの障害と誤認するのを防げます。
許可が完了したらHomeに戻り、接続状態が安定するまで待ってから確認手順に進みます。システム上で接続済みと表示されても、ローカルの接続処理が該当段階まで進んだことを示すだけで、リモート認証、対象へのアクセス、ルールの動作がすべて正しいとは限りません。ここでは設定を変えず、次の手順で各項目を分けて確認します。
STEP 04 / VALIDATE
Connectivity Test:接続と実際のアクセスを確認
接続後、まずHomeのConnectivity Testを使い、選択したサーバーの結果を確認します。テスト結果は使用する方法やテスト対象に左右されます。結果が出てもすべてのWebサイトにアクセスできるとは限らず、結果が出なくてもすべての通信が失敗しているとは限りません。原因を絞り込むための手段として使い、最終判断にはしないでください。一度のテスト結果だけで、既存の項目をまとめて削除・置換しないようにしましょう。
確認を3つの段階に分ける
- ローカルの接続状態を確認します。Homeに戻り、接続が維持されているか、選択したサーバーが意図せず変わっていないか、Global Routingが先ほど確認したモードのままかを確認します。状態が安定していない場合は、まず接続の問題に対処してください。
- 実際の対象にアクセスできるか確認します。ブラウザーを開き、通常利用するページにアクセスします。まずシンプルなページを選び、完全に読み込まれるのを待ってから、実際に使うアプリでも確認してください。キャッシュ済みのページだけを見たり、通知が届くかどうかだけで判断したりしないでください。
- 処理経路を確認します。振り分けを確認する場合は、Dataまたは画面で利用できる接続記録を使って、直前に発生させた対象リクエストを探し、適用されたポリシーを確認します。通信量の変化だけでは、すべてのリクエストがPROXYを経由しているとは判断できません。
通常のページは開けるのに特定のアプリだけ失敗する場合は、現在の動作する設定を維持し、失敗した対象と操作を記録します。アプリは複数のドメインや異なる通信方式、アプリ独自のログイン状態に依存する場合があります。ホーム画面が表示されたからといって、必要な通信がすべて成功したとは限りません。反対に、一つの対象にアクセスできないだけでサブスクリプション全体が無効とは判断できません。
比較する場合は、同じ対象、同じサーバー、同じネットワークを使い、変更する条件を一つだけにします。たとえばサーバーは変えずにConfigとProxyの動作を比較し、テスト後に元の設定へ戻します。モードによって結果が異なる場合は、まずルールと名前解決を確認してください。どちらのモードでも失敗する場合は、サーバー情報と到達可能性を再確認します。複数のスイッチを同時に変えるより、原因を判断しやすくなります。
STEP 05 / DIAGNOSTICS
Settings:失敗した段階に応じて設定を確認
まず、どの段階で失敗したかを明確にしてから、確認する項目を選びます。一度に変更するのは一項目だけにし、変更前の値を記録してください。
サブスクリプションの項目が表示されない:入力内容と取得条件を確認
Subscribeを保存したのにHomeに想定した項目が表示されない場合は、まずURLが完全か、空白、改行、説明文が混ざっていないかを確認し、現在のネットワークからサブスクリプション内容を取得できるか確認します。ブラウザーでサブスクリプションURLを開けても、現在のインポート方法に適した内容が返されるとは限りません。ログインページやエラーの説明が返された場合、サーバーリストとして解析できません。URLの状態、有効期限、内容については、利用中のサービスの情報提供元に確認してください。
サーバーを追加しても接続できない:情報と許可を確認
手動で追加した場合は、項目の編集画面に戻り、Type、Host、Port、認証情報を一つずつ照合してください。プロトコルの種類、ポート番号、パスワードのコピー漏れ、TLS関連の名前が手元の情報と一致しているかに注意します。「とにかく接続する」ために証明書の検証をむやみに無効にしないでください。証明書に関する警告が出た場合は、まず時刻、サーバー名、設定内容の一致を確認します。スイッチをオンのまま維持できない場合は、システムのVPN構成を許可済みか確認してください。
テストとアクセスの結果が異なる:Test Methodを確認
SettingsでTest Methodを開き、Connectivity Testが現在どの方法で結果を判定しているか確認します。テスト対象、ポートへの到達性、実際のWebページへのアクセスは、それぞれ異なる段階の確認です。テスト結果を速度の保証と捉えないでください。公式画面例のSettingsにはDiagnostics、Proxy、TCP、UDPなども表示されています。それぞれ設定や診断の用途が異なるため、今回の現象に関係する項目だけを確認し、よく分からないスイッチを一つずつ試すのは避けてください。
一部の対象だけ問題がある:ルールとDNSを確認
Proxyでは正常でConfigでは失敗する場合は、まずRuleの照合順を確認し、対象がREJECTに一致していないか、範囲の広いDIRECTルールに先に一致していないかを調べます。ドメインを解決できないという表示が出る場合は、DNS設定も確認してください。サーバーを変えても名前解決の問題が解決するとは限りません。ルールとプロトコルの詳しい説明は技術リファレンスをご覧ください。まずは問題を再現でき、比較しやすい最小限の設定に戻します。
設定が意図せず変わる:On Demandを確認
SettingsのOn Demandは接続を開始する条件に関する設定であり、Global Routingのルールポリシーとは異なります。ネットワーク切り替え後に予期しない接続開始や状態変化が起きる場合は、関連する条件が有効になっているかを確認し、元の設定を記録してから比較してください。初回設定で手動接続が正常に動作することを確認できていない場合は、新たな自動接続条件を追加しないでください。変化の原因がサーバー、ルール、接続条件のどれか分かりにくくなります。
Diagnosticsを使う場合は、エラーが発生したときの表示、発生順、再現手順を残してください。診断情報を共有する前に、サブスクリプションURL、パスワード、認証情報、個人のアクセス記録を削除します。エラーの種類と必要な背景情報だけを残してください。設定をすべて消去すると、比較に役立つ情報まで失われることがあります。
上記を確認しても原因を特定できない場合は、トラブルシューティングで「インポート失敗」「接続失敗」「一部のアクセス失敗」のうち、実際に該当する段階を確認してください。作業を終える前に、一時的に変更したGlobal Routingやテスト設定を元に戻し、対象へ再度アクセスして結果を確認します。その後も「変更前の値を記録 → 一項目を変更 → 再確認」の順に進めてください。