この記事の概要

この記事は、利用中のサービスとサブスクリプションをすでにお持ちで、Shadowrocketを初めて接続するiPhoneまたはiPadユーザー向けです。既存サーバーの確認、Global Routingの選択、システム権限の許可、Connectivity Testの実行、実際の通信確認の順に進めます。スイッチの状態、サーバーの応答時間、Webサイトの表示はそれぞれ確認する項目が異なるため、個別にチェックしてください。

1. 接続前の確認:Homeに利用可能なサーバーがあるか

Shadowrocketを開いたら、まずHomeを確認します。サーバー一覧に名前が表示されていても、項目が保存されていることしか分かりません。アドレスや認証情報、サービスの状態が有効とは限りません。初回接続には、すでに利用権があり、有効期間内の構成を使いましょう。トラブルの切り分け中は、プロトコル、ポート、ルールを同時に変更しないでください。

Homeではサーバーの選択と接続の操作、Configではルール設定ファイルの管理、SettingsではOn Demandなどのアプリ設定を確認できます。サーバーのサブスクリプションとルール設定は別のものです。前者は接続先の項目を更新し、後者は通信に適用するポリシーを決めます。一方をインポートしても、もう一方の設定が完了するわけではありません。

  1. 接続をオフにした状態で、現在のネットワークからアクセスできるWebサイトが正常に開くことを確認します。公共Wi-Fiにログイン画面がある場合は、先にネットワーク認証を済ませてください。
  2. Homeで登録済みのサーバーを見つけ、テストする項目をタップします。編集画面を開いただけではなく、選択マークが対象の項目に付いていることを確認してください。
  3. 対象項目の編集画面を開き、サーバーアドレス、ポート、認証情報を確認します。ポートにはサービス提供元から指定された値を入力してください。TLSを使う場合でも、443と決めつけないでください。
  4. サブスクリプションから追加した項目の場合は、直近の更新が成功しているかを確認し、対象サーバーが一覧に残っているかも確認します。更新に成功したことはサブスクリプションの内容を取得できたことを示すだけで、各サーバーへの接続を保証するものではありません。

2. Global Routingの選択:テストする通信経路を確認

HomeでGlobal Routingを開き、現在の選択内容を確認します。Configでは、現在の設定に含まれるルールに従ってポリシーが選ばれます。「一部はプロキシ、残りは直接接続」と固定されているわけではなく、実際の通信経路は適用されたルールとポリシーによって決まります。初回接続でルールとサーバーの両方に問題がある場合は、切り分けのため一時的にProxyを選び、確認後に通常の設定へ戻してください。

Config

おすすめ

現在の設定ファイルにあるルールに従って通信経路を決めます。使用前に設定ファイルが選択されていること、ルールが参照するポリシーが利用可能であること、FINALの接続先を確認してください。

適したケース:ルール設定が済んでおり、動作確認後に普段の接続設定として使う場合

Proxy

プロキシ処理の対象となる通信をプロキシ経由にします。ルールによる振り分けがテストに影響するのを抑えられますが、システム権限の許可や誤ったサーバー認証情報の修正にはなりません。

適したケース:初回接続でサーバーを切り分ける場合、またはConfigの結果と比較する場合

Direct

直接接続を使用します。この状態でWebサイトが開いても、選択中のサーバーが利用可能である証拠にはならず、プロキシ接続の成否も判断できません。

適したケース:デバイス自体のネットワーク接続を確認する場合

Scene

設定済みのシーン条件に応じて、該当する設定を使用します。接続動作を判断するときは、現在のネットワークが想定したシーンの条件に一致しているかも確認してください。

適したケース:シーン条件を設定済みで、現在どの条件が適用されているか確認できる場合

判断の目安:Proxyでは接続できてConfigではできない場合、次にルールを確認

同じサーバー、同じネットワーク、同じテスト先を使い、Global Routingだけを切り替えます。モードによって結果が変わる場合は、Configで適用されたポリシーを優先して確認してください。サーバーの全項目をすぐに入力し直す必要はありません。

3. スイッチをオンにする:VPN構成の追加を許可

Homeに戻り、画面上部の接続スイッチをオンにします。初回接続時には、システムからVPN構成の追加を求められる場合があります。これはシステムのネットワーク経路を作成するための許可で、サブスクリプションの認証やサーバーのパスワードとは別の手続きです。許可したら、システムの案内に従ってデバイス認証を済ませ、Shadowrocketに戻って接続状態を確認してください。

  1. テストするサーバーが選択されていることを確認し、接続スイッチをオンにします。
  2. VPN構成を追加するシステムの確認画面が表示されたら、許可して案内に従い認証を完了します。デバイス認証画面にサーバーのパスワードを入力しないでください。
  3. Homeに戻り、スイッチがオンのままになっていることと、エラー表示やすぐに切断される現象がないことを確認します。
  4. 以前に許可を取り消した場合は、スイッチをもう一度オンにして再試行します。必要に応じて、システムの「設定 → 一般 → VPNとデバイス管理」でVPN構成を確認してください。管理対象デバイスでは管理ポリシーに従い、管理構成を自分で削除しないでください。

スイッチがオンのままでも、システムの通信経路が確立または動作中であることを示すだけで、すべての宛先に接続できるとは限りません。サーバーとのハンドシェイク、DNS解決、ルールの適用、接続先Webサイトの応答は、それぞれ失敗する可能性があります。システムのステータスバーにあるVPN表示だけで判断せず、次にConnectivity Testを実行してください。

4. Connectivity Testを実行:遅延と実際の接続可否を見分ける

HomeでConnectivity Testを実行し、終了後に結果を記録します。結果を判断する前に、テスト方法を確認してください。TCPテストでは主に接続先への到達性を確認し、HTTP系のテストではリクエストと応答も関係します。確認できる範囲は同じではありません。遅延の数値だけでは通信速度は分からず、すべてのWebサイト、UDP通信、長時間接続が使える証明にもなりません。

サーバー一覧から一括テストを実行した場合、選択していないサーバーの結果も含まれることがあります。まず現在選択中の項目の結果を確認し、実際のアクセス状況と照らし合わせてください。Hysteria2やWireGuardなどUDPを利用する接続では、TCPポートのテストだけでプロトコルの動作を判断することはできません。

結果分かること次の操作
遅延の数値が表示される選択した方法でテストが完了したことを示します。帯域幅やすべての通信の利用可否までは判断できません。接続を維持したまま、実際に使うWebサイトを開いて確認する
Timeoutまたはタイムアウト制限時間内にテストが完了していません。障害箇所はまだ特定できません。基本ネットワーク、テスト先、サーバーアドレス、ポートを確認してから、再度テストする
Connection refused通常、接続先または途中の機器によって接続が明示的に拒否されたことを示します。ポートとサーバーの待ち受け状態を確認します。ルールの変更で問題を隠さないでください。
TLSまたは証明書に関するエラーが表示されるハンドシェイクと証明書の検証過程を確認する必要があります。デバイスの日時、サーバー名、TLSパラメータを確認し、証明書の検証を先に無効にしないでください。
テストは成功するが、実際のWebページが開かないテスト先と実際の接続先では、適用されるルールやネットワーク条件が異なる場合があります。開けないドメインに適用されるルール、DNSの結果、接続ログを確認する

3回続けてテストし、最速の結果だけでなく成功回数とエラー内容を記録してください。たとえば3回中2回タイムアウトした場合は、まず接続の安定性を調べます。3回とも完了する一方、特定のWebサイトだけ繰り返し失敗する場合は、その接続先と適用ルールに絞って確認します。これは記録方法の例であり、特定サーバーの実測結果を示すものではありません。

5. 同じリクエストで再確認:ネットワークと設定の問題を切り分ける

テスト中は、一度に変更する条件を1つにします。まずサーバーとGlobal Routingを固定し、Wi-Fiとモバイル通信で同じ接続先にアクセスします。次にネットワークとサーバーを固定し、ProxyとConfigを比較します。この方法なら、違いが接続ネットワークによるものか、ルールの選択によるものか判断しやすくなります。

確認方法:Wi-Fiとモバイル通信をそれぞれテスト

Wi-Fi
  • 公共ネットワークの認証を済ませ、接続を切った状態で基本ネットワークが使えることを確認します。
  • 現在のサーバー、Global Routing、Connectivity Testの結果を記録します。
  • 接続先を固定して実際に通信し、エラー表示を記録します。
モバイル通信
  • デバイスがモバイル通信に対応していることと、アプリにモバイルデータ通信の使用が許可されていることを確認します。
  • 同じサーバーとモードのまま、同じテストを繰り返します。
  • 一方のネットワークだけで失敗する場合は、そのネットワークの接続制限を優先して確認します。

モバイル通信に対応していないiPadでは、別の場所の信頼できるWi-Fiで確認できます。ネットワークを切り替える際に、サブスクリプションの更新やプロトコルの変更を同時に行わないでください。

Configで特定の接続先だけ失敗する場合は、Configで現在の設定ファイルを開き、[Rule]を確認します。ルールは通常、上から順に照合されるため、具体的なドメインは範囲の広いルールより前に置き、FINALは最後に配置します。以下は構文例です。既存の設定をそのまま置き換えるための完成済み構成ではありません。

[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY

DOMAIN-SUFFIXは指定したドメインとそのサブドメインに一致します。IP-CIDRはIPアドレスの範囲に一致し、例のno-resolveはこのIPルールのために追加のドメイン解決を行わないことを示します。GEOIPはIPの位置情報データベースに基づいて照合し、FINALはそれ以前のルールに一致しなかった通信を処理します。例のPROXYは、現在の設定で利用可能なプロキシポリシーに対応している必要があります。ルールが別のポリシーグループを参照している場合、Homeでサーバーを選び直しても、そのグループの選択先が変わるとは限りません。

6. 初回接続でよくある問題:症状ごとの対処

スイッチをオンにするとすぐオフになります。先にサーバーを変更すべきですか?

まず、システムのVPN構成を許可したか、Homeで有効な項目を選択しているかを確認します。切断時の表示を記録し、既存のVPN接続と競合していないかも調べてください。システムの通信経路自体が確立できていない場合は、DNSやルール全体を先に変更しないでください。

Connectivity Testに数値が出るのに、Webページが開かないのはなぜですか?

まずGlobal RoutingがDirectになっていないことを確認し、現在の設定で対象ドメインに適用されるポリシーを確認してください。テストの数値が示すのはそのテストの結果だけです。特定のWebサイトだけ失敗し、ほかの接続先は正常な場合は、接続全体が使えないと判断する前に、そのサイトの名前解決、ルール、サービス状態を調べてください。

サブスクリプションの更新に成功したのに、接続がタイムアウトするのはなぜですか?

サブスクリプションの更新先とサーバーへの接続先は異なる場合があります。Homeに戻り、選択中の項目のアドレス、ポート、認証情報を確認し、サービスが引き続き有効か確かめてください。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは必要な項目が異なります。プロトコル名だけを変更しても、別のプロトコルに変換できるわけではありません。

手動で切断しても再接続します。スイッチが故障していますか?

Settings → On Demandでオンデマンド接続の設定を確認します。一時的に設定をオフにして手動で切断し、再接続するか確認してください。自動再接続が止まれば、先ほどはオンデマンド条件によって接続が開始されていたと考えられます。テスト後は、ネットワークの利用状況に合わせて設定を戻してください。

さらに調べる場合は、デバイスのネットワーク種別、プロトコル名、Global Routingの選択肢、テスト方法、エラーの原文、特定の接続先だけが失敗するかを記録してください。記録を共有する前に、サブスクリプションの完全なURL、パスワード、キー、UUIDなどの認証情報を隠してください。条件を整理したうえで、トラブルシューティングまたは設定ガイドの該当項目を確認し、関係のない設定を何度も変更しないようにしましょう。