Shadowrocketのサーバーの選び方|遅延テスト・地域・プロトコルの見方と注意点

利用中のサービスから提供されたサーバーを選ぶ際は、遅延テスト、地域、プロトコルをあわせて確認しましょう。遅延の測定内容と、数値がWebサイトや動画の実際の快適さを示すとは限らない理由を解説します。

この記事の要点

すでに利用中のサービスとサブスクリプションがある場合は、まず接続できないサーバーを除外し、同じネットワーク・同じ方法で遅延を比較します。その後、実際のアクセス先で地域やプロトコルが目的に合うか確認しましょう。この記事では、Shadowrocketでサーバーを選択し、Global Routingを確認してConnectivity Testを実行する手順と、遅延が小さいのに読み込みが遅い場合の確認方法を紹介します。遅延は測定結果の一つであり、帯域幅、出口の地域、接続の安定性を保証するものではありません。

1. 遅延の数値からわかること

一覧に表示されるミリ秒数は、テストにかかった時間を示します。その意味はテスト方法と測定先によって異なります。接続の確立だけを確認するテストと、プロキシ経由で宛先にリクエストを送るテストでは、対象となる通信経路が異なります。比較する前に、現在のConnectivity Testの方式を確認してください。方式や測定先を変えた場合、前後の数値をそのまま順位付けすることはできません。

接続の確立に成功しても、その後の認証、ドメイン名の解決、Webサイトへのアクセスまで成功したとは限りません。プロキシ経由のテストであっても、その時点で測定先まで通信できたことを示すだけです。Webページの表示には通常、複数のドメインへのリクエストや複数の接続、リソースのダウンロードが必要です。動画では、安定した転送速度やバッファリングの状態も大きく影響します。

ms
ミリ秒:テストにかかった時間の単位。転送速度の単位ではありません
Mbps
メガビット毎秒:スループットの単位。遅延から直接換算することはできません
443
HTTPSでよく使われるポートですが、すべてのプロキシサーバーで固定されているわけではありません

たとえば、あるテストが40 ms、別のテストが90 msだった場合、まず言えるのは前者の所要時間がその回では短かったということだけです。数値の見方を示すための仮定例であり、実測性能ではありません。この結果だけで前者のダウンロード速度が速いとは判断できず、一度タイムアウトしただけでサーバーが恒久的に利用できないとも断定できません。

2. 条件をそろえて、普段使うサーバーを選ぶ

始める前に、現在利用できる設定を残し、サブスクリプションがすでに利用しているサービスから提供されたものか確認します。サブスクリプションを更新すると、サーバー一覧やパラメータが変わることがあります。更新直後の場合は、以前選択していた項目が残っているか確認してから比較してください。遅延の数値を下げるために、サーバーアドレス、ポート、認証情報をむやみに書き換えないでください。

  1. ネットワークを固定する

    同じWi-Fi、または同じモバイルネットワーク接続のままテストし、途中で切り替えないようにします。大容量通信を行うほかのタスクを一時停止し、現在のテスト方式も記録してください。モバイルの電波状況やWi-Fiアクセスポイントが変わった場合は、新しい条件であらためて記録します。

  2. モードを確認する

    Home → Global Routingを開き、現在のモードがConfig、Proxy、Direct、Sceneのどれか確認します。Configを使っている場合は、Configで実際に選択されている設定も確認してください。ルールによって通信が別のポリシーに振り分けられることがあります。

  3. サーバーを選択する

    Homeに戻り、利用可能なサーバー一覧から候補を選択して、左側に選択マークが付いていることを確認します。設定内のポリシーグループで別のサーバーが指定されている場合、Homeでデフォルトサーバーを変更しても、対象の通信の出口が変わるとは限りません。

  4. テストを実行する

    HomeのConnectivity Testを使います。条件を変えずに3回に分けて実行し、成功、タイムアウト、所要時間を記録します。この3回は確認手順の例であり、アプリで固定されたテスト回数ではありません。また、パケット損失率の測定とも異なります。

  5. 実際のアクセス先で確認する

    接続スイッチをオンにし、初回利用時はシステムの案内に従ってVPN構成の追加を許可します。実際に利用するWebサイトやサービスにアクセスし、表示できるか、最初の画面が遅れないか、利用中に接続が途切れないかを記録します。同じ手順で次の候補も確認してください。

サーバーを選択した後、テスト結果と実際のアクセス状況が食い違う場合は、通信が本当にそのサーバーを経由しているか確認します。接続スイッチの状態、Global Routingの選択、Config内のルールやポリシーグループが通信経路に影響します。一覧の左側に選択マークがあるだけでは、すべてのリクエストがその項目を使っているとは限りません。

3. Global Routingによって比較条件が変わる

サーバーを比較する前に、ルーティングの状態を確認しましょう。Config、Proxy、Directはそれぞれ異なる通信処理の選択肢です。Sceneは現在のシーン設定も確認する必要があり、特定の出口を示す固定モードではありません。ここではShadowrocketにある設定項目だけを比較します。

Config

おすすめ

現在の設定にあるルールに従い、接続はDIRECT、プロキシ、または指定されたポリシーを使用します。普段の利用状況を比較する場合は、確認済みの設定を維持し、テスト対象が想定したポリシーに一致しているか確かめてください。先行するルールに一致しない場合の動作は、FINALの内容によって決まります。

適した用途:普段のルール設定で実際のアクセス状況を確認する

Proxy

対象範囲の通信をプロキシ経由にします。選択したプロキシが正しいことを確認したうえで、ルールによる影響を切り分ける場合に適しています。ただし、サーバーから対象Webサイトまでの通信経路の問題を解消するものではなく、対象サービス自体の稼働状況の確認にも代わりません。

適した用途:ルールによる振り分けを一時的に切り分け、プロキシ経路を確認する

Direct

直接接続の経路を使います。この状態でのWebサイトへのアクセス結果は、選択中のプロキシサーバーの性能を示す証拠にはなりません。ただし、現在のローカルネットワークから、直接接続が許可された宛先にアクセスできるか確認するために利用できます。

適した用途:直接接続の基準を確認する。プロキシサーバーの順位付けには使わない

結論:経路を確認してから数値を判断する

ConfigとProxyで結果に大きな差がある場合は、すぐにプロトコルを変更せず、対象に一致したルールとそのポリシーを確認します。2回のリクエストが同じサーバーを使用していると確認できて初めて、結果を比較できます。

4. 地域名とWebサイトが判定する地域は同じとは限らない

サブスクリプション内の項目にある地域名は、通常サービス提供元が付けた名称であり、選択時の手がかりにすぎません。アプリが地理的位置を独自に検証した結果ではありません。入口のアドレスがある場所、最終的な出口アドレスの場所、対象サービスが参照する地域データベースは、それぞれ異なる場合があります。複数の中継を経由する場合、入口の遅延が小さくても、最終出口が対象に近いとは限りません。

Wi-Fiでは使えても、モバイルネットワークに切り替えると状況が変わることがあります。必ずしも地域の選択が間違っているわけではありません。接続ネットワークの変化は、DNS、ルーティング、UDPの到達性に影響します。その場合はモバイルネットワークを別のテスト条件として扱い、Connectivity Testをあらためて実行してください。異なる条件の結果を同じ順位表に混ぜないようにしましょう。

5. プロトコルは条件の照合に使い、単純な順位付けには使わない

Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardは、それぞれ異なるプロトコルと設定要件を示す名称であり、速度のランクではありません。まずサーバー側とクライアント側のパラメータが一致しているかが、接続の可否を左右します。プロトコルが利用できても、実際のネットワーク、サーバーの負荷、接続先までの経路によって使い心地は変わります。

プロトコル優先して確認することこの情報だけでは判断できないこと
Shadowsocksサーバーアドレス、ポート、暗号化方式、パスワード。UDPを使う場合は、両端が対応しているかも確認します。暗号化方式の名称だけから実際のスループットを判断すること。
VMess / VLESS認証情報、通信方式、TLSなどの設定がサーバー側と一致しているか。プロトコル名から、通信経路が一つに決まると考えること。
TrojanパスワードとTLSのパラメータ。サーバーが要求するサーバー名や証明書の検証条件も含みます。443を入力すれば必ず接続できると考えること。
Hysteria2QUICをベースとし、UDPで通信できることが必要です。認証とTLSのパラメータも確認します。どのネットワークでもTCPベースの経路より速いと断言すること。
WireGuard鍵、対向アドレス、ポート、トンネルアドレスなどのパラメータ。通信にはUDPを使用します。ほかのプロトコルが使えるからといって、現在のネットワークでUDP経路も使えると判断すること。

利用中のサブスクリプションに同じ地域の異なるプロトコルの項目がある場合は、候補として一つずつ確認できます。ただし、名称が似ていても同じサーバー、同じ出口、同じ負荷とは限りません。そのため、この比較はその時点で利用できる項目を選ぶ手助けにはなりますが、プロトコル自体の厳密な性能評価にはなりません。

速度を上げる目的で、項目のTypeを別のプロトコルに変更しないでください。クライアント側でタイプを切り替えても、サーバー側のプロトコルは自動で切り替わりません。元のポートや認証情報も使えるとは限りません。別のプロトコルを使う場合は、利用中のサービス提供元が実際に用意している対応設定を使ってください。

6. 遅延は小さいのに使いにくい場合の確認方法

遅延テストを何度も更新するより、まず「どの段階で失敗するか」を記録しましょう。接続の確立、ドメイン名の解決、ページの初回表示、リソースのダウンロード、長時間の動画再生は、それぞれ異なる段階です。テストに成功してもページが開かない場合は、問題の範囲を絞り込み、すべてを「サーバーが遅い」とまとめないようにしてください。

遅延は小さいのに、Webページの読み込みが終わらないのはなぜ?

まずHomeの接続スイッチとGlobal Routingを確認し、Connectivity Testを実行します。テストに成功して特定のWebサイトだけ開かない場合は、Configでそのドメインに対応するルールとポリシーを確認してください。現在の設定のDNSも確認します。ルールにDOMAIN-SUFFIX、GEOIP、IP-CIDRがある場合は、一致する順序も含めて確認し、FINALだけを見て判断しないでください。

一覧でタイムアウトしたサーバーも試すべき?

まずローカルネットワークを確認し、同じ項目でテストを繰り返します。タイムアウトはテスト対象や特定のテスト経路で発生することがあります。パラメータが正しいと確認できたら、項目を選択して実際のアクセス先も試してください。テストと実際のアクセスの両方に失敗する場合は、サブスクリプションが更新されていないか、アドレスやポートがまだ有効か確認します。

動画は再生できるのに、しばらくするとバッファリングするのはなぜ?

特定のネットワークや時間帯だけで起きるか記録し、同じ画質のまま、利用可能な別の候補を試します。動画の継続的な転送と短時間の遅延は別の指標です。初期バッファ、コンテンツ配信経路、サーバー負荷も再生に影響します。一度遅延の数値が小さかっただけで、継続的な転送速度も十分だと判断しないでください。

ネットワークを切り替えると、自動で再接続するのはなぜ?

Settings → On Demandで、現在設定されている接続条件を確認します。Wi-Fi、モバイルネットワーク、ドメインの条件が有効になっているか確認してください。原因を調べる際は、まず条件を記録し、必要であれば関連するトリガーを一時的に無効にして手動接続します。テスト後は設定を元に戻し、自動接続の動作をサーバー切り替えの異常と混同しないようにしてください。

最終的に選ぶのは、目的に合い、繰り返しテストして利用でき、実際のアクセスも安定している項目です。特定の回で遅延が最小だった項目とは限りません。接続ネットワーク、候補名、プロトコル、Global Routing、テスト方式、実際の状況を簡単に記録しておくと便利です。サブスクリプションの更新後や接続ネットワークの変更後は、同じ手順で再確認してください。

App Storeで正規アプリを確認