この記事は、Shadowrocketをインストール済みで、利用するサービスとサブスクリプションを用意しているものの、初回接続がまだの方を対象にしています。「読み込みとサーバー選択 → Global Routingの確認 → 接続をオン → Connectivity Test → 実際のアクセス確認」の順に進めます。読み終えると、リストへの読み込み、システムVPNの接続、目的のWebサイトへのアクセスという3つの状態を区別し、テスト結果に応じて次の確認箇所を判断できます。
1. Homeでサブスクリプションを読み込み、サーバーを選択する
サブスクリプションの読み込みが完了したことは、Shadowrocketがサーバー情報を取得して読み込んだことを示します。接続が確立したことや、リスト内のすべてのサーバーが使えることを意味するわけではありません。まずHomeにサーバーが表示されているか確認し、その中から1台を選択します。「リストが表示された」ことを「接続済み」と取り違えないようにしましょう。
-
サブスクリプションを読み込む
Homeを開き、右上の「+」→ Type → Subscribeの順に進み、自分が用意したサブスクリプションURLを入力して保存します。URLにはアクセス情報が含まれる場合があります。利用中のサービスのアカウント情報から正確にコピーし、公開コメントやスクリーンショットに貼り付けないでください。
-
リストを確認する
Homeに戻り、サブスクリプショングループの下にサーバーが表示されていることを確認します。更新するにはHomeの画面を下に引っ張って更新します。それでもリストが空の場合は、サブスクリプションの有効性とサーバー情報が返されているかを先に確認しましょう。この段階で接続スイッチを何度も操作する必要はありません。
-
サーバーを選択する
使用するサーバーの左側にある丸印をタップして、現在のデフォルトサーバーに設定します。項目を開いて編集する操作と、サーバーを選択する操作は別です。Homeに戻ったら、選択マークが目的の項目の横にあることを確認してください。
-
設定値を確認する
サーバー情報を手動で入力した場合は、Type、アドレス、ポート、認証情報を確認します。ポートは利用するサーバー側の設定と一致している必要があります。よく使われる443番ポートでも、プロトコルや認証方式が正しいとは限りません。サブスクリプションの項目は、推測で設定を書き換えず、再更新して復旧を試してください。
Homeではサーバーの選択と接続を操作し、Configではルール設定を管理し、Settingsではアプリの設定を行います。初回接続では、まずHomeで確認できる基準状態を作りましょう。DNS、ルール、自動接続条件を同時に変更しないでください。一度に変更する項目を1つにすれば、原因を特定しやすくなります。
2. Global Routingを確認する|テスト時と通常利用時の違い
Global Routingは、Shadowrocketに入る通信にどのルーティングポリシーを適用するかを決めます。サーバーを選択しても、すべてのリクエストがそのサーバーを経由するとは限りません。初回の切り分けでは、一時的にProxyを使うとルール分岐による影響を減らせます。確認後は、利用する設定に応じてConfigを選びましょう。以下はShadowrocket内のルーティング動作の比較です。
Proxy
おすすめ初回の確認では、Shadowrocketが処理する通信に一時的にプロキシポリシーを適用し、現在のサーバーへの接続を確認しやすくします。ここでのおすすめは切り分け手順に関するもので、日常利用で常にProxyに設定すべきという意味ではありません。
適用例:初回接続の確認、ルール分岐の影響の切り分け。
Config
現在有効な設定ファイルのルールに従って接続方法を決定します。ルールによってDIRECT、REJECT、またはプロキシポリシーが指定されるため、リクエストが選択中のサーバーを経由するかは、どのルールに一致したかを確認してください。
適用例:接続を確認済みで、ルールに沿った通常利用を始める場合。
Direct
直接接続の動作です。この状態でWebページが開いても、プロキシサーバーが利用できる証拠にはなりません。現在のネットワークから、そのサイトに直接アクセスできている可能性があります。
適用例:現在のネットワークでのアクセス状況と比較する場合。
Scene
設定済みのシーンに応じてルーティング方法を選択します。シーンの条件を把握していない場合は、初回の切り分けで使わないようにしましょう。ネットワークの変化に伴ってルーティング動作も変わり、原因を特定しにくくなるためです。
適用例:シーンを明確に設定しており、現在の条件を確認できる場合。
Configを使う場合、ルールは通常、上から順に照合されます。たとえば、DOMAIN-SUFFIX,example.com,DIRECTは該当するドメインサフィックスへの接続を直接接続にし、FINAL,PROXYは前のルールに一致しない接続にプロキシポリシーを適用します。最終行だけを見て、特定のアクセスが必ずプロキシ経由になると判断しないでください。それより前のルールですでに処理が決まっている場合があります。
3. 接続をオンにしてシステムの許可を完了する
Homeに戻り、画面上部の接続スイッチをオンにします。初回利用時には、システムからVPN構成の追加を求められます。現在開いているShadowrocketからの要求であることを確認し、システムの案内に従って許可したうえで、デバイスに求められる認証を完了してください。この許可はアプリがネットワークトンネルを確立するためのものです。サブスクリプションの認証を代替するものではなく、無効なサーバーを復旧させるものでもありません。
初回接続のチェック項目
- 操作する場所
- Home → 画面上部の接続スイッチ
- システムの表示
- VPN構成の追加を許可し、システム認証を完了する。
- 戻って確認
- Homeのスイッチがすぐにオフへ戻らないことを確認する。
- 接続を確認する
- Connectivity Testを実行してから、実際にアクセスする。
システムVPNが有効になったことだけでは、リモートサーバーへの接続が正常とは限りません。
自動接続の確認
- 設定を開く
- Settings → On Demand
- 確認する項目
- 現在のネットワークで接続を開始する条件が設定されているか。
- 切り分け手順
- 現在の設定を記録し、On Demandを一時的にオフにして手動接続する。
- 設定を戻すタイミング
- 手動接続とアクセスの確認がどちらも成功した後。
On Demandは接続するタイミングを管理する機能であり、サーバーアドレス、認証情報、ルールを修復するものではありません。
誤って拒否した場合は、Homeに戻って接続を再度開始し、システムの案内に従ってください。スイッチをオンにするとすぐオフになる場合は、許可が未完了になっていないか、エラーメッセージが表示されていないかを確認し、システム上でほかのVPN構成が動作していないかも調べます。システムのネットワーク設定をすべて削除するのは避けてください。確認範囲が広がり、既存のネットワーク情報も失われる可能性があります。
4. Connectivity Testで確認し、実際のアクセスも試す
HomeでConnectivity Testを実行し、現在のサーバーのテスト結果を確認します。結果はテスト方法、接続先、現在のネットワークによって変わります。有効な応答があれば接続可能性を判断する手がかりになりますが、1つの遅延値だけで、すべてのWebサイト、プロトコル、ルールが正常に動作すると断定することはできません。
- テスト条件を固定する。選択中のサーバー、Global Routingの動作、ネットワークの種類を記録します。テスト中にサーバーとWi-Fiを同時に切り替えると、結果を比較できません。
- 結果が確定するまで待つ。有効な応答とタイムアウトや失敗の表示を区別します。テスト中の状態を失敗と見なしたり、リストに残っている古いテスト結果を直近の接続結果として扱ったりしないでください。
- 目的のサイトを再度開く。ブラウザーで新しいページを開き、利用するWebサイトにアクセスして、実際のコンテンツを読み込めるか確認します。以前にキャッシュされたページが表示されるだけでは、新しい通信が成功したとは言えません。
- 設定ごとの動作を比較する。ProxyではアクセスできるのにConfigに切り替えると失敗する場合は、現在の設定と一致するルールを優先して確認します。どちらの設定でも失敗する場合は、サーバー情報、ネットワークの到達性、名前解決の結果を確認してください。
- 正常に動作する条件を記録する。テストに成功したサーバーとネットワーク環境を記録します。以降、ルールや自動接続を変更するときの比較用に残しておきましょう。パスワードやサブスクリプションのトークンが写ったスクリーンショットを保存する必要はありません。
Connectivity Testで応答があるのに、特定のWebサイトが開かないことがあります。これは矛盾ではありません。テスト先とWebサイトは異なる場合があり、ドメインの名前解決、接続先の状態、ルーティングポリシーもそれぞれ異なる可能性があります。反対に、テスト先がタイムアウトしても、一部のサイトにはアクセスできることがあります。その場合はテスト方法と接続先を引き続き確認し、1回のタイムアウトだけで接続全体が使えないと判断しないでください。
5. Wi-Fiとモバイル通信を1項目ずつ比較する
同じサーバーでも、接続するネットワークによって結果が異なる場合があります。Wi-Fiのポータル認証やローカルネットワークの制限、モバイル通信の電波状況などが初回テストに影響することがあります。サーバーとルーティング動作は変えず、接続するネットワークだけを切り替えて、Connectivity Testと同じサイトへのアクセスを再度試してください。
比較手順:サーバーを固定し、接続ネットワークだけを切り替える
Wi-Fiの場合
- まず、そのWi-Fiで必要なポータル認証を完了します。
- 接続をオフにした状態で、普段利用するページにアクセスできることを確認します。
- Shadowrocketを開き、Connectivity Testに応答があるか記録します。
- このネットワークだけで失敗する場合は、ネットワーク条件を確認できるよう結果を保存します。
モバイル通信の場合
- モバイル通信に対応したデバイスでWi-Fiをオフにします。
- Shadowrocketによるモバイルデータ通信が許可されていることを確認します。
- 同じサーバーとGlobal Routingの設定を維持して、再接続します。
- DNSやプロトコルの設定を同時に変更せず、同じテストを繰り返します。
一方のネットワークだけで失敗する場合は、まずそのネットワークの条件を確認します。両方で失敗する場合は、サーバーの有効性、アドレス、ポート、認証情報を確認してください。
モバイル通信に対応していないiPadでは、利用する権限のある別のWi-Fiネットワークと比較できます。ネットワークを切り替えた後に接続が自動で再開または切断される場合は、Settings → On Demandで条件を確認してください。自動接続とGlobal Routingを混同しないようにしましょう。前者は接続を開始するタイミングを決め、後者は接続後のルーティング方法を決めます。
6. 初回接続でよくある質問と次の手順
サーバーが複数あります。名前をタップすれば選択できますか?
Homeでサーバー名の左にある丸印が選択状態になっているか確認してください。名前や詳細をタップすると編集画面が開くことがあり、デフォルトサーバーが切り替わるとは限りません。リストに戻って選択マークを確認してから、接続スイッチをオンにします。リストの並び順から選択中のサーバーを推測しないでください。
接続スイッチはオンなのに、サイトが開かないのはなぜですか?
まずHome → Connectivity Testを実行し、Global Routingが想定した設定になっているか確認します。現在Configの場合は、一時的にProxyに切り替えて比較します。Configでのみ失敗する場合は、Configを開いて現在有効なファイルとルールを確認してください。両方で失敗する場合は、サーバー情報とネットワーク条件を引き続き確認します。
サブスクリプションの更新に失敗しました。アプリを再インストールすべきですか?
まずサブスクリプションURLがすべて入力されていて、現在も有効かを確認し、現在のネットワークからそのURLにアクセスできるか調べます。既存のサーバーが使える場合は、先に接続してからHomeの画面を下に引っ張って更新してください。サブスクリプションの更新はサーバーリストの取得、サーバーへの接続はデータ経路の確立です。それぞれ分けて確認し、まずアプリを再インストールする必要はありません。
接続を切ったのに、また自動でつながるのはなぜですか?
Settings → On Demandを開き、自動接続の条件を確認してください。現在の設定を記録してからOn Demandを一時的にオフにし、手動で接続・切断して動作を比べます。まだ想定どおりにならない場合は、システムで現在有効なVPN構成を確認し、操作している対象がShadowrocketであることを確かめてください。
接続を確認したら、普段使うConfigに切り替え、On Demandなどの設定を一つずつ戻します。設定を一つ戻すたびに、同じページへ再度アクセスしてください。特定の設定を戻したときに問題が起きる場合は、動作する状態を基準として残し、その設定を中心に確認すると、すべての設定を読み込み直すより原因を特定しやすくなります。
利用中のサービスに問い合わせる場合は、テスト日時、ネットワークの種類、選択したサーバー名、Global Routingの設定、エラーメッセージを伝えると確認しやすくなります。認証パスワード、サブスクリプションURL全体、URLに含まれるトークンは必ず伏せてください。アプリの購入と接続サービスは別のものです。Shadowrocketを購入しても、利用可能なサーバーが自動で用意されるわけではありません。