2026-08-24 · トラブル対処 · 約10分

Shadowrocketの接続後に速度が遅いときの対処法|ノード・回線・プロトコル・ローカルネットワークを順に確認

ノード・回線・プロトコル・ローカルネットワークの4つを順に確認し、比較テストでボトルネックを特定します。むやみにノードを切り替えるのは避けましょう。

この記事の概要

この記事は、Shadowrocketが接続済みなのに、Webページの読み込み、動画のバッファリング、ファイル転送が遅い場合に役立ちます。利用中のサービス提供元とサブスクリプションを前提に、まずテスト条件をそろえ、ノードの出口、ネットワーク経路、プロトコルの通信、本地接続の問題を切り分けます。最後に接続ログでリクエストの経路を確認し、再現可能な調査結果をまとめます。サブスクリプションは利用中のサービス提供元から入手してください。

1. テスト条件をそろえ、遅い箇所を確認する

接続スイッチがオンでも、システムのトンネルが確立したことを示すだけで、対象のリクエストが選択したノードを経由して正常に完了したとは限りません。Webページの初回表示が遅い場合、継続的なダウンロードが遅い場合、動画が頻繁にバッファリングする場合では、原因が異なります。初回表示の遅さにはDNSや接続確立が関係することがあり、後者では継続的なスループットと通信の安定性を確認する必要があります。

アプリのリクエストルールの照合ノードへの接続出口からのアクセス宛先からの応答

Homeで現在のノード、Global Routingの状態、ローカルネットワークを記録し、Configで使用中の設定を確認します。テスト中にサブスクリプションの更新、DNSの変更、プロトコルの切り替え、ルールの編集を同時に行わないでください。速度が戻っても、どの変更が有効だったのか判断できなくなります。

  1. アクセス権があり、繰り返し読み込める固定のページまたはファイルを選び、対象名を記録します。異なるサイトのダウンロード速度をそのまま比較しないでください。
  2. システムアップデート、写真の同期など、大容量通信を行うタスクを一時停止します。約30秒のテストを3回続けて行い、初回表示までの時間、継続速度、通信が中断するかを記録します。
  3. 速度の単位をそろえます。1 MB/s は約 8 Mbps です。ファイルのダウンロード表示に使われる MB/s と、回線速度の公称値に使われる Mbps を同じ数値として扱わないでください。
  4. 各テストでは条件を1つだけ変更し、できるだけ近い時間帯に比較します。モバイル通信でテストするとデータ通信量が発生するため、事前に契約プランの残量を確認してください。

2. ノード:接続できるか、通信速度が出るかを切り分ける

Homeで既存ノードのConnectivity Testを実行し、明らかに到達できない項目を先に除外します。遅延テストでわかるのは指定された方法での応答状況であり、ダウンロード帯域ではありません。テスト先、ハンドシェイクの手順、プロキシ経由の有無が数値に影響するため、最小のミリ秒数だけで使い勝手を判断しないでください。

既存のサブスクリプションからノードを2つ選び、できるだけ同じプロトコルで、同じ接続先・同じローカルネットワークを使って比較します。一方だけ継続的に遅い場合は、そのノードまたは経由する経路に問題を絞り込めます。ただし、それだけでサーバーの負荷が原因だとは断定できません。

現象考えられること次に行うこと
テストの応答は速いが、ダウンロード速度が継続的に遅い短いリクエストは完了するが、継続的なスループットに制限があるノードは変えず、別のファイルで再テストする
同じノードで、特定のサイトだけ遅い接続先の速度制限、または出口から接続先までの経路が関係している可能性がある別の独立したサイトでも確認し、局所的な問題かどうかを判断する
同じプロトコルのノードAは遅く、Bは正常問題はA、またはAが経由する経路に絞られるテストした時間帯を記録し、別のローカルネットワークでもAを再テストする
既存のノードがすべてタイムアウトする共通する接続環境または設定に問題がある可能性があるローカルネットワーク、サブスクリプションの有効性、接続ログを確認する

まとめ:再現性のある差を優先して記録する

Aが3回連続で遅く、Bが正常なら、まずこの結果を記録してからネットワークを変えてAをテストします。すぐにすべての設定を変更しないでください。ノード間の差は原因を絞り込むための手がかりであり、サーバー側の原因を確定するものではありません。

3. 回線:時間帯とネットワークを組み合わせて比較する

回線は、ノード一覧にある独立したスイッチではありません。1回のアクセスには、ローカルネットワークからサーバーまでと、サーバーから接続先サイトまでの少なくとも2つの経路が関わります。ノード名と地域が同じでも、実際のルーティングや混雑状況、接続先コンテンツの配信状況は変わることがあります。地理的な距離が近くても、ネットワーク経路が短いとは限らず、混雑する時間帯に安定するとも限りません。

  1. 同じノードでネットワークを変える:iPhoneでWi-Fiをオフにし、モバイル通信で同じ接続先にアクセスします。その後、Wi-Fiに戻して再テストします。それ以外の条件は変えません。
  2. 同じネットワークで時間帯を変える:問題が起きる時間帯と、比較的空いている時間帯にそれぞれテストします。「夜は遅い」とだけ記録せず、時刻と継続速度を記録してください。
  3. 同じノードで接続先を変える:互いに独立した2つのサイトでテストします。片方だけ遅い場合は、ローカルDNSを変更し続けるのではなく、出口からその接続先までの経路を確認します。
  4. 複数条件の結果を整理する:「Wi-Fiは遅いが、モバイル通信は正常」「同じ時間帯にどちらのネットワークでも遅い」のように記録します。前者はWi-Fi接続とその上流経路を優先して確認し、後者はノードと接続先の結果も踏まえて判断します。

同じノードを2種類のネットワークで比較しても、「通信事業者の回線」と「ローカルの無線環境」を完全に切り分けることはできません。Wi-Fiであらゆるアクセスが遅い場合は、後述のローカルネットワークの確認を先に行います。特定のプロキシ経路だけが遅い場合は、回線の範囲をさらに絞り込みます。複数のノードが同じ上流経路を共有することもあるため、複数のノードが同時に遅くなっても、独立した障害が複数発生しているとは限りません。

4. プロトコル:通信条件を確認し、むやみにポートを変更しない

プロトコル名は速度のランクを示すものではありません。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは通信条件や設定項目が異なり、利用できるかどうかはサーバー側の実装によります。既存ノードのプロトコル選択欄を別の名称に変えるだけでは、プロトコルの比較テストにはなりません。

TCP 443
HTTPSでよく使われるポート。ノードのポートはサーバー側の設定と一致させる
UDP
Hysteria2はQUICベース、WireGuardはUDPを使用
1項目
各テストで変更する条件は1つだけにし、ほかのパラメータは維持する

ポートが443だからといって、必ずTCPを使用するわけでも、通信が必ず成功するわけでもありません。Hysteria2はUDP 443を使用できますが、実際のポートはサーバー側の設定によります。ネットワークでUDPが制限されている場合、UDPに依存する接続は失敗したり不安定になったりする可能性があります。一方、UDPが利用できても、混雑時に高いスループットが得られるとは限りません。

エラー:connection refused

原因と対処:通常は接続が拒否されたことを示します。接続先ポートでサービスが待ち受けていない、または機器によって接続が拒否された可能性があります。完全なログで、エラーがノードのアドレスと接続先サイトのどちらに対応するかを確認してから、該当するアドレスとポートを確認してください。

エラー:i/o timeout

原因と対処:ネットワーク操作が制限時間内に完了しなかったことを示します。この表示だけで帯域不足とは断定できません。発生した段階とリモートアドレスを記録し、同じノードでネットワークを変える、または同じネットワークでノードを変える方法で原因を絞り込みます。

上記は接続ログに表示される場合がある低レベルのエラー文であり、すべての障害で必ず表示されるものではありません。最後の1行だけでなく、前後を含むログを記録することが重要です。

5. ローカルネットワークとルール:リクエストの実際の経路を確認する

Homeに戻り、Global Routingを確認します。Proxy、Direct、Config、Sceneはそれぞれ異なるルーティング方式です。ProxyとDirectは全体のプロキシ利用または直接接続の方針、Configは現在の設定に基づく処理、Sceneは選択中のシーンの設定に関係します。比較テストの前に元の状態を記録してください。一時的に切り替えた場合は、テスト後に戻し、診断のための変更をルーティング設定の戻し忘れにつなげないようにします。

  1. ローカル接続を確認する:ルーターの近くで再テストし、Wi-FiのWeb認証待ちになっていないか確認します。デバイスのネットワーク環境が許し、接続先に直接接続できる場合は、短時間だけ接続をオフにして基準値を測ります。直接接続でも遅い場合は、まずネットワークへの接続自体を確認してください。
  2. 適用されたポリシーを確認する:Configで使用中の設定を確認し、接続ログからテスト対象に適用されたルール、ポリシー、ノードを確認します。ノードを選択していても、すべてのリクエストがそのノードを経由するとは限りません。
  3. ルールの順序を確認する:DOMAIN-SUFFIXはドメインのサフィックス、IP-CIDRはアドレス範囲、GEOIPはIPの位置情報データに基づいて照合し、FINALは最終的なフォールバックに使われます。先行するルールに一致していないかを確認し、最後のルールだけを変更しないでください。
  4. 自動再接続を確認する:テスト中に接続状態が自動で変わる場合は、Settings → On Demandを確認します。現在の条件を記録してから、関連する自動接続の動作を一時的にオフにし、手動テストの後に元の状態へ戻します。

DNSの確認は、症状から関連が考えられる場合に行います。たとえば、初回の読み込みには時間がかかる一方、接続確立後のダウンロードは正常な場合です。まず名前解決のタイムアウトや失敗、接続先アドレスの異常がないかを確認し、現在の設定にあるDNSを見直します。「DNSを変える」ことをあらゆる速度低下に対する万能策にしないでください。また、証明書の検証を無効にしたり、直接接続の範囲をむやみに広げたりしないでください。

6. よくある質問と、調査を終える目安

遅延は数十ミリ秒なのに、動画がバッファリングするのはなぜですか?

遅延の数値は継続的なスループットを示すものではありません。同じ動画、同じ画質で再生し、再生中にバッファリングが続くかを確認してから、同じノードで別の接続先にもアクセスします。その動画サービスだけが遅い場合は、接続先名と時間帯を記録し、出口から接続先までの経路をさらに確認してください。

モバイル通信に切り替えると正常です。ノードには問題がないのでしょうか?

そのノードでモバイル通信を使った今回のテストが完了したことしかわかりません。同じWi-Fiに戻し、直接接続できる接続先で基準値を測ってから、ルーターの近くで再テストします。ローカルの無線干渉と、Wi-Fiの上流からノードまでの経路は、引き続き切り分けが必要です。

サブスクリプションを更新すると速度は戻りますか?

更新すると、サービス提供元が変更したアドレスやパラメータを反映できますが、回線の混雑が直接解消するわけではありません。まず現在のテスト結果を保存し、Homeのサブスクリプション項目から更新して、テスト対象のノードが変わったかを確認してください。サブスクリプションは利用中のサービス提供元から入手し、調査中に提供元を何度も変更しないでください。

すべて比較しても、決まった時間帯だけ遅い場合はどうすればよいですか?

同じノード、接続先、ネットワークを使い、時間帯を変えて行った3回の結果をまとめます。個人情報を伏せたエラーログと一緒に、利用中のサービス提供元へ確認を依頼してください。現在利用できる設定は維持し、再現条件を崩さないよう、プロトコル、DNS、ルールを続けて変更しないでください。

問い合わせに必要な情報は、発生時刻、Wi-Fiまたはモバイル通信の別、ノード識別情報、プロトコル、Global Routingの状態、接続先、速度の単位、比較結果です。調査の目的は「最速の設定」を見つけることではなく、どの層に問題があるか、どこに追加調査を依頼すべきかを判断することです。クライアント以外の接続環境やリモート経路で一貫した異常が見られる場合、ローカル設定を変更し続けても通常は解決しません。

Shadowrocketの入手先と基本設定を確認

ShadowrocketはAppleプラットフォーム向けのクローズドソースの有料アプリです。iPhoneとiPadではApp Storeから入手できます。買い切り購入に回線プランは含まれません。開発者はShadow Launch Technology Limited、App IDは932747118です。価格、互換性、システム要件はApp Storeの記載をご確認ください。アプリの入手先を再確認したい場合や初期設定を確認したい場合は、以下をご利用ください。

App Storeで正規の配信元を確認 使い方を見る
App Storeで正規の配信元を確認