Shadowrocket の接続スイッチ、ルーティングモード、接続テストでは、それぞれ異なる状態を確認できます。すでに利用中のサービスから接続情報やサブスクリプションを入手しており、iPhone または iPad で初めて設定する方に向けて、App Store と権限の確認から SERVER、Global Routing、Config の確認、更新と復元までを解説します。10項目を順に確認すれば、「起動できない」「接続済みなのにリクエストが失敗する」「ルールが適用されない」を切り分けられます。
1. 購入すればすぐ接続できますか?
購入しただけでは接続できません。Shadowrocket は買い切り型のクライアントアプリで、アプリの購入と、ご自身が利用する接続サービスは別のものです。初回利用時には、すでにお持ちの接続情報を読み込み、Home の SERVER リストから利用する項目を選びます。リストが空の場合、プロキシ接続に使うサーバー設定はありません。
入手先は App Store のみです。購入前に、デベロッパ名 Shadow Launch Technology Limited、アプリ ID 932747118、公式アイコンを確認してください。この記事では主に iPhone と iPad での操作を説明します。Mac、Apple TV、Apple Vision の互換性とシステム要件は、App Store の掲載内容をご確認ください。
-
App Store を確認
まずダウンロードガイドを確認し、デベロッパ名とアプリ ID を照合して、App Store の Shadowrocket を確認してください。
-
接続情報を読み込む
Home → 右上の「+」→ Type → Subscribe の順に進み、お持ちのサブスクリプション URL を入力します。個別の接続情報を追加する場合は、情報に記載された Type を選択してください。
-
接続先を選ぶ
Home に戻り、SERVER から使用する項目を選択します。接続スイッチを操作する前に、アドレス、ポート、認証情報を確認してください。
-
構成を許可する
初めて接続を開始するときは、システムの案内に従って VPN 構成の追加を許可し、デバイスで求められる認証を完了してください。
アプリの買い切りと接続サービスの契約は別です。このサイトでは接続先やサブスクリプションを提供・販売・推奨していません。以下では、お手元にある接続情報の操作方法のみを説明します。
2. Home のスイッチが反応しないとき、まず何を確認しますか?
スイッチを入れてもすぐ戻るのか、オンのままなのにウェブページを開けないのかを切り分けます。前者はシステムの VPN 構成権限と現在の接続状態を、後者はサーバーとルーティングを確認します。システムに「VPN 接続済み」と表示されても、デバイス上で VPN セッションが確立したことを示すだけです。接続先サーバーの認証成功や、すべてのウェブサイトへのアクセスを保証するものではありません。
- 初回接続をキャンセルした:Home に戻って接続を再度オンにし、システムから VPN 構成の追加を求められるか確認します。使用中の Shadowrocket にのみ権限を付与してください。
- サーバーが選択されていない:SERVER に読み込み済みの項目があるか、どの項目が選択されているかを確認します。リストに名前が表示されているだけでは、選択済みとは限りません。
- 別の VPN セッションが動作中:ほかの VPN 接続を停止してから Shadowrocket だけを起動し、接続の切り替えをスイッチの不具合と誤認しないようにします。
- 自動接続が切り分けを妨げている:Settings → On Demand を確認します。原因を調べている間は自動接続をオフにし、Home のスイッチから手動で接続してください。
最初にアプリを削除するのは避けてください。まず設定を残し、システムに表示されたメッセージをそのまま記録します。デバイスが管理対象の場合は、VPN を制限する管理ポリシーがないかも確認してください。
3. Global Routing はどれを選べばよいですか?
Home → Global Routing では、リクエストのルーティング方法を選択します。普段ルールに応じて振り分ける場合は Config を選びます。ただし、事前に Config 画面で適切な構成ファイルを選択しておく必要があります。Config を選んでも「指定したサイトはプロキシ、その他は直接接続」になるとは限りません。実際の動作は、構成ファイル内のルール、ポリシー、FINAL によって決まります。
Config
おすすめ現在の構成ファイルのルールに従ってポリシーを選択します。DIRECT、プロキシポリシー、REJECT のどれに一致するかで処理が異なります。
向いている用途:明確なルール設定がある状態で、普段の通信を振り分ける。
Proxy
通信全体をプロキシ経由にするモードです。Config の通常の振り分けルールに従って接続先を選ぶわけではありません。アドレスや認証情報の誤りは解決できません。
向いている用途:振り分けルールに問題があるか、一時的に切り分ける。
Direct
直接接続するモードです。通常のルールに従ってプロキシサーバーへリクエストを送ることはありません。接続スイッチがオンでも、ウェブサイトへのリクエストがプロキシ経由とは限りません。
向いている用途:現在のネットワークから直接アクセスした場合の状態を確認する。
Scene
設定したシーンの条件に応じてルーティングを選択します。シーンの定義を確認する必要があり、固定のグローバルプロキシモードとして扱うことはできません。
向いている用途:ネットワーク環境ごとにシーンの条件を設定済みの場合。
切り分け:一時的にモードを変えてからルールを確認
同じサーバーとネットワークで Proxy ならアクセスでき、Config では失敗する場合は、現在の構成ファイルで一致したルールとポリシーの設定先を確認してください。テスト後は元のルーティング設定に戻します。
4. 接続済みなのにウェブページを開けないときは?
「ローカルネットワーク → サーバー → ルーティング → リクエスト先」の順に、一度に1項目ずつ確認します。サーバーの切り替え、DNS の変更、ルールの書き換えを同時に行うと、原因を特定しにくくなります。まず、現在の Wi-Fi またはモバイル通信で通常のウェブページを開けるか確認してください。ログインが必要な Wi-Fi では、先にネットワークの認証を済ませます。
- Home で選択中の SERVER を確認し、Connectivity Test を実行します。タイムアウトする場合は、ルールを変更する前にサーバーアドレス、ポート、プロトコルの設定を確認してください。
- Global Routing を確認します。Direct が選択されている場合は、アクセス先への接続にプロキシが必要か確認してから、比較のため一時的に Proxy を選択します。
- Config だけで失敗する場合は、Config 画面で選択中の構成ファイルを確認し、対象ドメインが DIRECT、REJECT、または誤ったプロキシポリシーに一致していないか調べます。
- 一部のドメインだけ失敗する場合は、構成ファイルの DNS 設定、ドメインの名前解決結果、関連ルールを確認します。特定のウェブページが開けないことを、接続全体の障害と判断しないでください。
たとえば、同じ接続先が Direct では失敗し、Proxy では成功しても、確認できるのは2つの経路で結果が異なることだけです。すべてのルールが正しいとは限りません。両方のモードで失敗する場合も、アプリの不具合とは断定できません。接続先での認証、ネットワークの制限、接続先サイトの状態も確認してください。
5. Connectivity Test は遅延が低いほどよいですか?
遅延が低い場合、通常はそのテスト方法で応答を待つ時間が短いことを示しますが、ダウンロードが速いとは限りません。Home → Connectivity Test の結果は、テスト方法、通信経路、その時点の負荷に左右されます。条件の異なるテスト結果を単純に性能ランキングとして比べることはできません。
- 数値が低い:今回のテストで応答が速かったことを示します。実際に使用するウェブページを開き、読み込みや継続的な通信も確認してください。
- タイムアウトまたは失敗:ネットワークに到達できない場合のほか、テスト先やテスト方法が適していない場合もあります。実際のリクエストや設定とあわせて判断してください。
- 結果のばらつきが大きい:同じネットワークとテスト方法で複数回確認してください。1回の結果だけで、長期的に使う接続先を決めないようにしましょう。
サーバーのポートには、お手元の接続情報に記載された値を使用してください。たとえ 443 であっても、HTTPS でよく使われるポートだからという理由で、プロトコル、パスワード、TLS などの必須項目を省略することはできません。
6. サブスクリプションの追加方法と更新に失敗したときの対処
サブスクリプションは接続情報を更新するためのもので、接続そのものではありません。Home →「+」→ Type → Subscribe から、お持ちの URL を入力して保存し、SERVER に項目が表示されることを確認します。例の https://example.com/sub?token=xxxx は URL の形式を示すだけで、利用できるサブスクリプションではありません。実際のリンクに含まれるトークンは機密情報です。公開するスクリーンショットや問い合わせ文には記載しないでください。
- URL 全体をコピーし、余分な空白や改行が入っていないか、クエリパラメーターが欠けていないか確認します。管理用ウェブページのアドレスをサブスクリプション URL として入力しないでください。
- 追加後、Home でプルダウンして更新し、サブスクリプションの項目が更新されたか確認します。現在選択中のサーバーも再確認してください。
- 更新がタイムアウトする場合は、まず現在のネットワークを確認します。サブスクリプション URL へのアクセスにプロキシが必要な場合は、Settings → Subscribe で Update via Proxy を確認し、動作確認済みの接続を使って再試行してください。
- 認証失敗や認識できない内容が表示された場合は、ご利用中のサービス提供元にリンクの有効性と応答形式を確認してください。Global Routing を何度切り替えても、無効なトークンは修復できません。
サブスクリプションの更新によって、サーバー名、アドレス、リストの内容が変わる場合があります。更新後も以前の項目が使えるとは限らないため、接続先を選び直してテストしてください。サブスクリプションの更新と Config ファイルの切り替えは別の操作です。前者は接続情報を更新し、後者はリクエストの振り分け方法を変更します。
7. 特定のウェブサイトだけをプロキシ経由にするルールの書き方
まず Config 画面でご自身の構成ファイルを選択・編集し、対象ドメインのルールを追加します。その後、Home → Global Routing → Config で動作を確認してください。以下はルールの記述例です。構成ファイルの [Rule] セクションに追加してください。この数行だけで既存の内容を上書きし、完全な構成ファイルとして使わないでください。
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
DOMAIN-SUFFIX は指定したドメインとそのサブドメインに一致します。FINAL は、それ以前のルールに一致しなかったリクエストを処理します。ここでの PROXY は利用可能なプロキシポリシーに対応させてください。DIRECT は直接接続を意味します。通常、ルールは記載順に照合されます。範囲の広すぎるルールを先に置くと、後続の対象ルールが適用されないことがあります。
GEOIPは接続先 IP の地域情報に基づいて照合します。ウェブページの表示言語で判定するものではありません。IP-CIDRは指定した IP アドレス範囲に一致します。ドメインのサフィックスを照合するルールとは異なります。REJECTはリクエストを拒否するポリシーです。ログインや必要なリソースまで誤って遮断しないか、使用前に確認してください。- ウェブページは複数のドメインから画像、API、ログイン用リソースを読み込むことがあります。メインのドメインだけを追加しても、必要な通信をすべてカバーできるとは限りません。
ルールを追加しても反映されない場合は、実際に選択中の Config ファイルを確認し、Global Routing が Proxy または Direct になっていないか確認してください。ルールを追加する前に、既存ルールの適用範囲を検証しましょう。
8. 新しいプロトコルほど速い?設定項目は使い回せる?
プロトコル名だけで速度を判断することはできず、異なるプロトコルの設定項目を使い回すこともできません。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard では、設定項目と接続の仕組みが異なります。Home →「+」→ Type では、接続情報に明記されたプロトコルを選択してください。サーバー名から推測してはいけません。
- Shadowsocks:暗号化方式とパスワードを確認してください。他のプロトコルの認証項目で代用することはできません。
- VMess / VLESS:UUID、通信方式、接続情報で指定された TLS などの設定を確認してください。プロトコル名が似ていても、すべての設定項目が共通とは限りません。
- Trojan:パスワードと TLS 関連の設定を確認してください。証明書やサーバー名に問題がある場合は、検証を安易に緩和せず、元の設定値を確認してください。
- Hysteria2:QUIC ベースの通信を使用するため、現在のネットワークから UDP に到達できるか確認してください。
- WireGuard:鍵、エンドポイント、アドレス、許可するルートの範囲を確認してください。パスワードだけを入力するサーバー項目として扱うことはできません。
実際の使い勝手は、サーバーの負荷、ネットワークのパケットロス、通信経路、接続先のサービスにも左右されます。初めて使う場合は、お手元の接続情報をそのまま読み込んでください。サーバー側でサポートされているオプションが明確な場合にのみ、通信設定を変更します。各項目の詳細は技術リファレンスをご覧ください。
9. On Demand で自動接続するのはなぜですか?
Settings → On Demand では、設定した条件に応じて VPN 接続を開始します。On Demand と Global Routing は異なる階層の設定です。On Demand は接続を開始するタイミングを決め、Global Routing は接続中のリクエストがどの経路を使うかを決めます。接続が自動でオンになっても、適切な Config ファイルに自動で切り替わるわけではありません。
- Settings → On Demand を開き、メインスイッチと設定済みのネットワーク条件を確認して、自動接続が意図したとおりに動作するか確かめます。
- 手動操作での接続を切り分ける場合は、まず On Demand をオフにしてから Home に戻って接続してください。自動接続が観察に影響するのを防げます。
- Wi-Fi とモバイル通信を切り替え、それぞれの接続状態と Global Routing を確認します。Scene を使用している場合は、そのネットワークでどのシーンが適用されたかも確認してください。
- 自動接続を再び有効にする前に、手動接続と実際のウェブリクエストが正常に動作することを確認し、必要な条件を一つずつ戻してください。
手動で接続をオフにしても再び接続される場合は、何度も切断を繰り返すのではなく、自動接続の条件を確認してください。接続するタイミング、シーンの選択、ルールによる振り分けはそれぞれ個別に確認する必要があり、互いに代用できません。
10. 別のデバイスで購入済みアプリを復元する方法
新しいデバイスの App Store で、購入時に使用した Apple アカウントにサインインします。アカウントページの購入済み項目またはアプリ一覧から Shadowrocket を探し、再ダウンロードしてください。購入履歴とローカル設定は別のデータです。アプリを再インストールできても、以前のデバイスのサブスクリプション、ルール、サーバー設定が復元されるわけではありません。
- まず、現在の App Store アカウントが購入時のものと一致しているか確認してください。デバイス上でほかのサービスにサインインしているアカウントだけを見て判断しないようにします。
- デバイスの互換性、システム要件、ユニバーサル購入の対象範囲は、App Store の掲載内容をご確認ください。
- お手元にある接続情報を再度読み込み、Config で構成ファイルを確認してから、初回接続時のシステム認証を完了してください。
「以前購入したのに、価格が表示されるのはなぜ?」
まず App Store のアカウントページで購入履歴を確認し、アカウントとストアの状態を照合してください。確認できるまでは再購入しないでください。購入や請求に関する問題は、App Store のアカウントサポート窓口で対応してください。
「アプリを再インストールしたのに、SERVER が空なのはなぜ?」
再インストールしても、ローカルの接続情報は復元されません。Home →「+」から、ご自身で保管しているサブスクリプションまたは個別の接続情報を読み込み、サーバーを選択して Connectivity Test を実行してください。
「デバイスを替えたら、VPN の許可をもう一度求められますか?」
新しいデバイスで初めて接続するときは、システムの案内に従って VPN 構成の追加を許可してください。その後、Home → Global Routing と Config を確認します。以前のデバイスでの状態をそのまま当てはめないでください。
復元後の確認手順は変わりません。まず接続情報、次に VPN セッション、最後に実際のリクエストでルーティングを確認します。詳しくは購入済みアプリの復元方法と接続テストの手順をご覧ください。