Shadowrocketで「接続済み」と表示されても、それはシステムのVPNトンネルが確立したことを示すだけで、すべてのサーバーや接続先、通信プロトコルが正常に動作しているとは限りません。利用者自身が契約しているサービスとサブスクリプションがあることを前提に、テスト条件をそろえ、サーバー、回線、プロトコル、ローカルネットワークの順に切り分けます。ページの表示待ち、継続的なデータ転送、エラー、ネットワーク切り替え時の結果を記録し、問題の箇所を具体的に絞り込みましょう。
1. 通信経路を確認して、遅くなる箇所を見極める
要点:接続スイッチやVPN表示だけでサーバー速度を判断せず、リクエストが想定したポリシーを通っているか確認します。Homeで選択中のサーバーを確認し、次にGlobal Routingを確認してください。Proxyは通信をプロキシ経由で処理し、Directは直接接続します。Configでは現在の設定に含まれるルールに従って処理されます。それぞれのモードの結果を同じテスト記録に混在させないでください。
Configを使う場合は、まずConfigで使用中の設定を確認します。WebサイトによってはDIRECTに一致し、別のサイトだけがプロキシ経由になることがあります。Global RoutingでSceneが選択されている場合は、該当するシーンの設定を確認し、テスト条件を固定してください。シーンの変更とサーバーの切り替えを同時に行わないようにします。短時間Proxyに切り替えて比較する場合は、元のモードを記録し、テスト後に戻してください。
- 同じWebページを対象に、「最初の表示まで時間がかかる」のか「転送開始後の速度が遅い」のかを分けて確認します。
- HomeでConnectivity Testを実行し、テスト方法、結果、選択中のサーバーを記録します。測定値は、そのテスト対象についての参考値として扱ってください。
- 対象へのリクエストを再実行し、確認できる接続記録からドメイン名と実際に適用されたポリシーを照合します。DIRECTのリクエストをサーバー速度の測定結果として扱わないでください。
- 接続が断続的に切れる場合は、Settings → On Demandの接続条件を確認し、テスト中にネットワークの変化で再接続が繰り返されていないか確認します。
2. 比較記録を作成する:一度に変更する条件は1つだけ
要点:一度のテストで変更する条件を1つに絞ると、結果を正しく解釈できます。サブスクリプションの更新、サーバーの切り替え、プロトコルの変更、Wi-Fiの切り替えを同時に行わないでください。他のデバイスでの大容量通信を一時停止し、同じiPhoneまたはiPad、同じ接続先、同じテスト方法を使い、テストした時間帯も記録します。Webページはキャッシュによって2回目の表示が速くなることがあるため、キャッシュからの表示とコンテンツの再取得も分けて記録してください。
以下は記録用のテンプレートであり、本サイトでの実測結果ではありません。A、Bは利用者が契約しているサブスクリプション内の2つのサーバーを指します。Bを選ぶ際は、可能な限りプロトコルや地域など、ほかの条件が近いものを選んでください。適切な比較対象がない場合は、条件が異なることを明記し、結果を単一の要因によるものと決めつけないでください。
| テスト項目 | 固定する条件 | 変更する条件 | 記録内容 |
|---|---|---|---|
| 基準テスト | サーバーA、元の設定、同じ接続先 | 変更なし | 初回表示までの時間、継続的な転送、エラーの有無 |
| サーバー比較 | 元のネットワーク、同じルーティングモード | AからBに変更 | 安定して改善するか、停止が続くか |
| ネットワーク比較 | サーバーA、元のプロトコル、同じ接続先 | Wi-Fiからモバイル通信に変更 | 同じリクエストが完了するか、再接続にかかった時間は別途記録 |
| 時間帯比較 | サーバーA、元のネットワーク、元の設定 | テスト時間帯 | 混雑する時間帯とそれ以外で規則的な差があるか |
要点:再現性のある違いを見つける
1回だけリクエストが速くなった場合は、まず同じ条件でテストを繰り返します。ほかの条件を固定したまま差が継続して現れる場合に限り、その変数をさらに調べてください。キャッシュや一時的な変動を改善効果と取り違えないようにします。
3. サーバー:低遅延でも継続的な転送が速いとは限らない
要点:サーバーテストは到達性や応答時間の判断に役立ちますが、帯域幅を直接示すものではありません。短いリクエストで送受信するデータはわずかです。応答が速くても、大きなファイルや動画のセグメントを継続して高速転送できるとは限りません。サーバーの負荷、出口の容量、接続先までの経路によって、遅延に問題がなくてもスループットが制限されることがあります。
- 特定のサーバーだけ遅い:Homeで、契約中のサブスクリプション内から条件の近い別のサーバーに切り替え、同じ接続先をテストします。Aだけで異常が続く場合は、まずAの状態と接続パラメーターを確認してください。
- 特定の接続先だけ遅い:サーバーを固定したまま、普段利用している別の接続先をテストします。他の接続先が正常なら、その接続先に適用されるルール、名前解決の結果、サーバーから接続先までの経路を確認してください。
- すべてのサーバーが遅い:現在の設定を維持したまま、ローカルネットワークの比較に進みます。サブスクリプション内の全サーバーに障害があると、すぐに判断しないでください。
- サブスクリプション情報が古い可能性:アプリ内のサブスクリプション更新機能で、契約中のサービス提供者が公開している最新情報を取得します。更新が完了したことを確認してから、サーバーを選び直してください。誤った設定を長期的に上書きするために、サブスクリプション管理の項目を直接編集しないでください。
地域名はサービス提供者が付けた識別名としてのみ扱い、名前だけから実際の中継経路や利用可能な帯域幅を推測しないでください。契約先に問い合わせる際は、「遅延は低いのに遅い」とだけ伝えるより、項目名、テスト時刻、ネットワークの種類、問題が起きる接続先を伝えるほうが状況を特定しやすくなります。
4. 回線:時間帯と接続先の違いから経路の問題を探る
要点:クライアントで測定した遅延の数値だけでは、アクセス回線、中継経路、サーバー出口、接続先のどの区間が混雑しているかを特定できないのが一般的です。回線の切り分けでは、同じサーバーが特定の時間帯だけ遅くなるか、同じネットワークから複数のサーバーへの接続が不安定か、接続先を変えると現象が解消するかを比較します。
- サーバーを固定して時間帯を比較する。同じリクエストを異なる時間帯に繰り返します。夜間に遅くなり、ほかの時間帯に改善する状態が続く場合、時間帯に関連した混雑が疑われますが、どの区間で発生しているかまでは特定できません。
- 接続先を固定して経路を比較する。契約中のサーバー同士を比較します。同じ接続先への通信が一部のサーバーだけ遅い場合は、それらのサーバーに共通する条件を記録し、サービス提供者に確認を依頼してください。
- 待ち時間と転送時間を分ける。最初の応答まで長く、その後の転送は正常なら、名前解決や接続確立を確認します。転送開始後に何度も停止する場合は、混雑、パケットロス、接続先による速度制限の可能性も調べてください。
- Webとメディアのテストを分ける。動画アプリでは画質の自動調整やバッファリングが視聴感に影響します。一度スムーズに再生できたからといって、回線容量が十分だと判断しないでください。
記録を取らずに、切断と再接続を繰り返さないでください。再接続で新しいセッションが確立することもあれば、一時的な混雑がたまたま解消しただけの場合もあります。サーバー、接続先、ネットワークを固定しなければ、どの要因で改善したのか判断できません。サーバーの回線や出口に関する情報は、契約中のサービス提供者に確認してください。クライアント側の観察でできるのは、原因の範囲を段階的に絞ることです。
5. プロトコル:種類をむやみに変更せず、設定値を確認する
要点:プロトコルはサーバー側の設定と一致している必要があります。速度向上を目的に別のプロトコルへ変更しても解決しません。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは、認証、通信方式、サーバー側の設定が異なります。サービス提供者から該当する接続情報が提供されている場合に限り、比較テストができます。比較時は、サーバーと経路が同じかどうかも記録してください。
| プロトコルまたは通信方式 | 優先して確認する項目 | 確認時の注意点 |
|---|---|---|
| Shadowsocks | アドレス、ポート、パスワード、暗号化方式 | 暗号化方式はサーバーの設定と一致させます。 |
| VMess / VLESS | UUID、通信方式、TLS、Host、Path | HostとPathの入力要否は通信方式によって異なります。互いに置き換えることはできません。 |
| Trojan | パスワード、ポート、TLS、サーバー名 | 証明書名が一致しない場合は設定を確認します。速度向上のために検証を無効にしないでください。 |
| Hysteria2 | 認証、TLS、UDPの到達性、帯域幅に関するパラメーター | QUICベースでUDPを使用します。ネットワークでUDPが制限されていると、正常に接続できない場合があります。 |
| WireGuard | 鍵、Endpoint、アドレス、MTU | UDPベースです。MTUは経路に応じて検証してください。すべてのネットワークに適した固定の最適値はありません。 |
ポート番号も元の設定と一つずつ照合してください。たとえばHTTPSではTCP 443がよく使われますが、443を設定すればどのプロトコルでもそのポートを使えるという意味ではなく、接続が必ずTCPになるわけでもありません。Hysteria2のUDP接続とTCP 443の到達性を混同しないでください。帯域幅に関連する項目に、実際の回線性能を大きく上回る値を設定しても速度は向上しません。
小さなリクエストは完了するのに大きなレスポンスが頻繁に停止する場合、MTUやPath MTUの問題を確認候補に含めることはできますが、それだけで原因を断定できません。まず接続先の違いとローカルネットワークの問題を除外し、サービス提供者から指定された設定に沿って条件を制御したテストを行います。変更前の値を記録し、一度に変更するパラメーターは1つだけにしてください。失敗したら元に戻し、いわゆる汎用最適化値をまとめて適用しないでください。
6. ローカルネットワーク:Wi-Fiとモバイル通信を比較する
要点:同じサーバーと設定で特定のローカルネットワークだけ遅い場合は、まずそのネットワークの無線品質、アップロード帯域の使用状況、通信制限を確認します。Wi-Fiの電波表示は、実際に利用できる容量を示すものではありません。ルーターの近くでも干渉が起きる場合があります。モバイル通信は、場所、電波品質、料金プランの状態、基地局の混雑に影響されます。
- サーバーと接続先を固定し、まず普段使っているWi-Fiでテストします。端末とほかのデバイスで進行中の大容量アップロードやバックアップは一時停止してください。
- モバイル通信に切り替え、Shadowrocketの再接続を待ってから、同じリクエストを実行します。ネットワーク切り替えによる再接続の待ち時間とWebページの応答時間を分けて記録し、データ通信量にも注意してください。
- モバイル通信では正常なのにWi-Fiで問題が続く場合は、ルーターに近づいて再テストします。可能であれば、同じルーターの異なるWi-Fi周波数帯でもそれぞれ確認してください。
- Web認証が必要なWi-Fiでは、まずネットワークへのログインを完了します。ログイン画面での認証が済んでいない場合、VPNの表示があってもインターネットに接続できるとは限りません。
- Settings → On Demandでオンデマンド接続の条件を確認し、ネットワーク切り替え後の自動接続がテストに影響しないようにします。変更前に元の設定を記録し、テスト後に元に戻してください。
DNSも個別に確認する必要があります。一般的なDNSクエリではUDPまたはTCPの53番ポートを利用できますが、暗号化DNSの通信方式は異なります。初回アクセスのたびに長く待たされ、接続確立後の転送は正常な場合は、現在の設定にあるDNS、名前解決の成否、再試行の有無を確認してください。「DNSを変えたら一度速くなった」だけで、速度の問題すべてがDNSに起因すると判断しないでください。
7. エラーが表示されたとき:原文から失敗した段階を特定する
要点:エラーは特定の段階で失敗したことを示すもので、根本原因を直接示すとは限りません。以下はネットワーク診断や接続ログに表示されることがある一般的な文言です。実際の詳細は端末の記録で確認してください。発生時刻、接続先、該当サーバーを保存し、サブスクリプションのURL、パスワード、UUID、鍵を一緒に公開しないようにします。
エラー:connection refused
原因と対処:接続が明示的に拒否されています。ポートで待ち受けていないか、接続が明示的に拒否されている可能性があります。まずサーバーアドレスとポートを確認し、接続先の待ち受け状態を契約中のサービス提供者に確認してください。
エラー:i/o timeout
原因と対処:ネットワークの読み込みまたは書き込みが制限時間内に完了しませんでした。この文言だけでは、ローカルネットワークと接続先のどちらに問題があるか判断できません。サーバーを固定してWi-Fiとモバイル通信を切り替え、完全なログからタイムアウトが発生した段階を確認してください。
エラー:TLS handshake failed
原因と対処:TLSハンドシェイクが完了していません。名前、証明書、端末の時刻、接続の中断などが関係している可能性があります。元のTLS設定とシステム時刻を確認し、別のネットワークでも比較してください。通常の対処として証明書検証を無効にしないでください。
エラーが表示されず遅い状態が続く場合も、成功したテストと失敗したテストの両方を記録することが重要です。接続確立後に起きる停止は、認証失敗やTLSハンドシェイク失敗とは別の問題です。最後の1行だけを切り取ってプロトコルの変更が必要だと判断せず、前後のリクエストと再現条件を合わせて確認してください。
8. よくある質問とトラブル対処を終える目安
遅延は低いのに、動画が何度もバッファリングするのはなぜですか?
まずサーバーを固定し、同じ接続先への継続的なデータ転送を比較してから、再生画質とバッファリングの状態を確認します。短時間の遅延テストでは、継続的なスループットや、サーバーから動画配信サーバーまでの通信全体は測定できません。
Proxyに切り替えたら速くなりました。ずっとProxyを使うべきですか?
まずConfigに戻り、接続先に適用されるルールとポリシーを確認してください。DOMAIN-SUFFIX、GEOIP、IP-CIDR、FINALはリクエストの接続先に影響します。2つのモードで速度が異なることはルールを確認する手がかりですが、モードを恒久的に切り替える十分な理由にはなりません。
Wi-Fiだけ遅い場合、サブスクリプションを再インポートするべきですか?
まずサーバーを固定し、Wi-Fiとモバイル通信の両方でテストを繰り返してください。同じ設定でモバイル通信が安定して正常なら、サブスクリプションを削除する前にWi-Fiの接続環境とルーターを確認します。サブスクリプションを更新しても、無線干渉は解消しません。
Hysteria2に変更すれば必ず速くなりますか?
保証はありません。まず契約中のサービス提供者からHysteria2の設定情報が提供されていることを確認し、現在のネットワークで必要なUDP通信ができるか検証してください。比較では接続先と時間帯を固定し、サーバー経路の違いを記録します。プロトコル名だけから結果を予測しないでください。
トラブル対処を終える際は、少なくとも「同じサーバーと設定を固定し、同じ場所でテストしたところ、Wi-Fiでは継続的に停止し、モバイル通信では3回ともリクエストが完了した」のように、再現できる説明をまとめてください。この記録から優先して確認する範囲をローカルネットワークやアクセス経路に絞れますが、原因の確定には追加の検証が必要です。漠然と「接続済みなのに遅い」と伝えるより、次のトラブル対処に役立ちます。
- テスト時の変更を元に戻す:Global Routing、On Demandの条件、一時的に変更したプロトコル設定を元に戻し、普段使う設定が正しいことを確認します。
- 必要な情報を伝える:テストした時間帯、ネットワークの種類、サーバー項目名、接続先、エラーの一部を共有します。認証情報とサブスクリプションのトークンは隠してください。
- 問題の種類ごとに対応する:ローカルネットワークの問題はルーターと接続環境を確認し、サーバーの接続先や回線の問題は契約中のサービス提供者に問い合わせます。ルールの問題はConfigで確認してください。