Shadowrocketの接続スイッチ、サーバー項目、ルーティング設定は、それぞれ役割が異なります。本記事では、利用可能なサービスと契約済みのSubscribeがあることを前提に、VPN構成の許可、読み込みと更新、ルーティングの選択、テスト方法を順に説明します。初めて使う場合は上から順に進め、問題が起きた場合は現在の設定を残したうえで一つずつ確認しましょう。アプリの購入、サービスの利用可否、ルール設定を混同しないことが大切です。
1. Shadowrocketを購入した後に準備するもの
ShadowrocketはAppleプラットフォーム向けのクローズドソースの有料アプリで、主にiPhoneとiPadで利用できます。入手先はApp Storeのみです。アプリを購入した後は、自分が利用権限を持つサーバー情報またはSubscribeリンクを用意してください。アプリの購入記録はクライアントの購入を示すもので、サーバーの設定が完了していることを意味しません。
- App Storeで開発元のShadow Launch Technology LimitedとアプリID
932747118を確認してください。 - 自分のSubscribeリンク、またはサーバーアドレス、ポート、プロトコル、認証情報をすべて用意します。
- システム要件と購入条件はApp Storeの掲載内容をご確認ください。Mac、Apple TV、Apple Visionとの互換性も同じストアページで確認できます。
2. 初回接続時にVPN構成の追加を許可する理由
初めて接続を開始するとき、システムからVPN構成の追加を求められる場合があります。この許可により、Shadowrocketがシステムのネットワーク拡張機能を通じて対象の通信を処理できるようになります。サービス購入の手続きではなく、接続先サーバーの利用可否を示すものでもありません。直前に起動したShadowrocketからの要求であることを確認し、システムの案内に従って認証してください。
-
サーバー項目を確認
Homeを開き、自分のサーバー項目が追加され、選択されていることを確認します。アプリをインストールしただけで利用可能な情報がない場合、VPN構成を許可しても接続は確立できません。
-
接続を開始
Homeで接続スイッチをオンにします。初回にシステムからVPN構成の追加を求められたら、要求元を確認して許可し、必要なデバイス認証を完了してください。
-
接続状態を確認
Homeに戻り、Not Connectedの表示が変わったか確認してからConnectivity Testを実行します。システムの接続状態と接続先へのリクエスト結果は、それぞれ確認してください。
-
許可を再設定
以前に許可を取り消した場合は、Homeに戻って再度接続を試します。システム構成を確認するには、iPhoneまたはiPadの「設定 → 一般 → VPNとデバイス管理 → VPN」で該当項目を確認してください。
失敗したからといって、システムのVPN構成をすべて削除しないでください。まずほかのVPN接続を停止し、ネットワークが正常であることを確認してから、現在のサーバー項目で再試行します。デバイスが管理対象の場合は、管理ポリシーでVPN構成の追加が制限されていないかも確認してください。
3. HomeのスイッチとNot Connectedの意味
Homeの接続スイッチは、Shadowrocketのネットワーク接続セッションを制御します。Not Connectedは、そのセッションが現在確立されていないことを示すもので、Subscribeの有効期限切れを意味するわけではありません。一方、接続状態になっていても、ローカルのセッションが開始したことを示すだけです。すべてのWebサイト、ルール、接続先サーバーが正常に動作するとは限りません。
- スイッチがオンのままにならない:まずシステムの許可、設定の有効性、ほかのVPN接続との競合を確認してください。
- スイッチはオンでもWebページが開かない:選択中のサーバー、Global Routing、DNS、アクセス先のWebサイトを確認します。ステータス表示だけで判断しないでください。
- アプリを離れても接続が続く:ホーム画面に戻っただけでは切断されません。停止する場合はHomeに戻ってスイッチをオフにし、On Demandが再接続を開始しないか確認してください。
Homeでは主に接続状態、サーバーの選択、テストを行います。Configではルーティング用の設定ファイルを管理し、Settingsではアプリの設定を行います。この3つの場所の役割を把握しておくと、ルールを変更する際にサーバー情報まで誤って変更するのを防げます。
4. 自分のSubscribeリンクを読み込む方法
Subscribeリンクは複数のサーバー項目を取得するためのもので、Configのルールファイルとは別のものです。読み込み後は、想定した項目が作成されたことを確認し、項目を選択してテストしてください。リンクを保存しただけで、すべての設定が自動で完了するわけではありません。
-
リンクをコピー
自分が利用しているサービスの情報から、Subscribeリンク全体をコピーします。前後の空白や改行、クエリパラメータの抜けがないか確認してください。アカウント管理ページのURLをSubscribeリンクと取り違えないようにします。
-
種類を選択
Home → 右上の「+」 → Type → Subscribeの順に進み、自分のリンクを入力します。リンクに含まれる認証情報は機密情報です。公開の掲示板などに投稿しないでください。
-
保存して確認
保存後、データの取得が完了するまで待ち、Homeに表示された項目名と件数を確認します。Subscribeの項目だけが保存されてサーバー項目が表示されない場合は、まず取得時のエラーを確認してください。重複するSubscribeを何度も追加しないようにします。
-
項目を選んでテスト
自分のサーバー項目を選択して接続スイッチをオンにし、Home → Connectivity Testを実行します。その後、ブラウザーで実際にアクセスしたいWebサイトを確認してください。
サーバーを手動で追加する場合、Typeは手元の情報に記載されたプロトコルと一致させてください。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは、認証情報や通信設定の項目が異なります。アドレスとポートだけをコピーして、プロトコルを適当に選ぶことはできません。ポートに443と入力されていても、それだけでプロトコルを特定することはできません。
5. Subscribeを更新すると手動変更は上書きされる?
Subscribeを更新すると、接続先からサーバー項目が再取得され、名前、アドレス、件数などが変わる場合があります。Subscribeで管理されている項目を、長期間使う唯一の手動編集用コピーとして扱うのは避けましょう。サーバーからデータが再配信されると、ローカルで加えた変更が保持されない場合があります。更新前に選択中の項目を記録し、更新後に選択状態と接続結果を確認してください。
- HomeのSubscribe一覧を下に引っ張って更新し、更新が完了したか、エラーが表示されていないか確認します。
- タイムアウトする場合は、現在のネットワークからSubscribeのURLにアクセスできるか確認します。そのうえで、利用可能な既存の接続を使って取得する必要があるか検討してください。
- プロキシ経由で更新する場合は、Settings → Subscribe → Update via Proxyを確認します。すでに接続が確立し、正常に利用できることが前提です。
- 認証エラーとタイムアウトは原因が異なります。認証エラーの場合は自分のリンクの権限と完全性を確認し、タイムアウトの場合はネットワークとURLへの到達性も確認してください。
6. Global Routingの4つのモードの選び方
Home → Global Routingで現在のルーティングモードを選択します。これは「どのサーバーを選ぶか」とは別の設定です。サーバーの選択は利用する出口を決め、ルーティングモードはどのリクエストをプロキシ経由にするかを決めます。以下の説明は、Configが正しく設定されていることを前提としており、設定内容が不明な場合すべてに当てはまるわけではありません。
Config
おすすめ現在有効なConfigのルールに従ってリクエストの行き先を決めます。DIRECTに一致すれば直接接続し、プロキシポリシーに一致すれば対応するポリシーを使用します。先行するルールに一致しない場合の結果はFINALによって決まるため、必ず直接接続になるとは限りません。
おすすめ:ルールと最終ポリシーを確認したうえで日常的に使う場合
Proxy
Configのルールごとに振り分けず、プロキシモードで通信を処理します。比較テストに利用できますが、システムのネットワーク、サーバーの利用可否、関連する除外設定の影響は受けます。
おすすめ:ルーティングルールが原因か一時的に切り分けたい場合
Direct
通信を直接接続として処理します。スイッチがオンでも、リクエストがリモートのプロキシを使っているとは限りません。プロキシが必要な接続先には、このモードではアクセスできない場合があります。
おすすめ:ローカルネットワークからの直接アクセスを確認する場合
Scene
設定済みのシーン条件に応じて、対応するルーティング設定を適用します。サーバーの接続先が追加されるわけではありません。使用前にシーンの条件と対応するアクションを確認してください。
おすすめ:シーンの切り替えを設定し、動作確認済みのネットワーク環境
問題の切り分けでは、Configでの結果を記録し、一時的にProxyに切り替えて同じ接続先を再テストしてからConfigに戻します。同じネットワーク、同じサーバー、同じ接続先で比較して初めて意味があります。Subscribeの更新、サーバーの切り替え、DNSの変更を同時に行わないでください。
7. Configのルールで確認するキーワード
Configモードでは、まずConfigでどのファイルが有効になっているかを確認し、ルールの順序とポリシーを確認します。ルールは通常、上から順に照合されるため、先にある広い条件が後方の細かい条件より先に適用されることがあります。設定ファイルをダウンロードまたは保存しただけでは、現在の接続で使われているとは限りません。
[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
DOMAIN-SUFFIX:指定したドメインのサフィックスに一致します。例ではexample.comとそのサブドメインが対象です。IP-CIDR:指定したIPアドレス範囲に一致します。例の192.0.2.0/24は文書用のアドレス範囲です。no-resolveは、このIPルールのためにドメイン名の解決を自動で行わないことを示します。GEOIP:IPアドレスの割り当て情報に基づいて判定します。CNはこの例で使われている照合パラメータであり、すべてのドメインの判定に代わるものではありません。FINAL:前のルールに一致しなかった場合に使う最終ポリシーです。この例では、残りのリクエストをPROXYに渡します。
この内容は構文の説明用であり、日常利用向けの完全な設定例ではありません。既存ファイルを編集する前にバックアップしてください。存在しないカスタム名をポリシーとして指定したり、FINALを誤って先頭に置いたりすると、想定と異なる結果になる場合があります。プロトコルはサーバーへの接続方法を定め、ルールはリクエストの行き先を定めます。両者は置き換えられません。
8. Connectivity Testに成功してもWebサイトが開かない理由
Home → Connectivity Testで確認できるのは、現在の条件下におけるテスト先へのリクエスト結果です。インターネット上のすべての接続先への接続を保証するものではありません。テストは成功しても目的のWebサイトに接続できない場合、対象ドメインに別のポリシーが適用されている、DNSの名前解決に問題がある、接続先のサービスに障害がある、またはWebサイトが接続元IPアドレスを制限している可能性があります。テストの遅延時間は実際のダウンロード速度を示すものではありません。
タイムアウトしたら、Subscribeが無効ということ?
いいえ。まずHomeで選択中の項目を確認し、次にGlobal Routingを確認します。設定を変えずにWi-Fiとモバイルデータ通信の両方で再テストしてください。一方のネットワークだけで失敗する場合は、そのネットワークからの接続性を優先して確認します。
テストは成功するのに、特定のWebサイトだけ開けない場合は?
ブラウザーで同じURLを再度開き、リクエストログで対象ドメインと適用ポリシーを確認してください。Global Routingを一時的にConfigからProxyに切り替えて比較し、テスト後は元のモードに戻します。
遅延が低いのに動画がバッファリングし続けるのは正常?
遅延が示すのは特定のテストリクエストへの応答状況だけです。継続的な通信速度、パケットロス、接続先サイトの状態は分かりません。同じネットワークとサーバーを使って、実際に必要なサービスでテストしてください。遅延が最も低い項目だけを基準に選ばないようにします。
サーバーを切り替える前に記録しておくこと
ネットワークの種類、項目名、Global Routing、テスト結果、接続に失敗した接続先を記録します。その後、一度に一つの条件だけを変えて再テストしてください。診断情報を共有する前に、パスワード、認証情報、Subscribeリンクを隠してください。
スイッチをオフにしたのに再接続する場合、On Demandはどこで確認する?
On Demandは条件に応じて接続を開始する機能です。Subscribeの有効期限を延ばしたり、サーバーの速度を上げたりするものではありません。手動で切断しても再接続する場合は、Homeのスイッチを何度もオフにするのではなく、Settings → On Demandで有効状態と条件を確認してください。
- Settings → On Demandを開き、有効になっているか、どのネットワーク条件が設定されているかを記録します。
- 手動で接続を制御する場合は、On Demandを一時的に無効にしてからHomeに戻り、接続をオフにします。
- Wi-Fiまたはモバイルデータ通信を一度切り替え、自動接続が再び開始されるか確認します。デバイスが組織の管理対象の場合は、システムの管理要件も確認してください。
- 動作が想定どおりであることを確認したら、必要な条件を一つずつ戻します。条件を戻すたびに、該当するネットワークに切り替えてテストしてください。
On Demandは「いつ接続するか」を制御し、Global Routing → Sceneは「どのシーンのルーティングを使うか」を制御します。両者は同じスイッチではありません。初回設定では、まず手動で接続してConfigの動作を確認し、その後に自動化条件を追加すると、問題の原因を特定しやすくなります。
10. iPhoneやiPadを買い替えたとき、購入済みアプリを再入手する方法
新しいデバイスで、購入時に使ったアカウントをApp Storeに使用します。アカウントの購入済み項目またはアプリの購入履歴を開き、Shadowrocketを見つけて再入手してください。Appleの画面に表示される名称は、システムのバージョンによって異なる場合があります。見つからない場合は、検索結果に同名のアプリがあるかどうかだけで判断せず、購入時のアカウントと購入履歴を確認してください。
機種変更時の確認手順:アプリの購入と設定情報を分けて復元
旧デバイス
- App Storeで購入時のアカウントと購入履歴を確認します。
- 現在有効なConfigをバックアップし、自分のSubscribe情報を安全に保存します。
- 現在のサーバー項目、Global Routing、On Demandの設定を記録します。
新しいデバイス
- 購入時のアカウントのApp Store購入履歴から再入手します。
- 自分の設定とSubscribeを読み込み、サービス側のデバイス利用制限を確認します。
- VPN構成の許可を再度行い、Connectivity Testを実行します。
購入済みアプリを再入手しても、すべてのローカルデータが復元されるとは限りません。また、既存のサービスで複数デバイスの同時接続が許可されるとも限りません。設定、許可、サービスの利用制限をそれぞれ確認してください。
アプリをデバイスに再度入手した後も、「項目を選択 → Global Routingを確認 → 接続を開始 → 接続先をテスト」の手順を一通り行ってください。さらに詳しいトラブルシューティングは問題の診断をご覧ください。初めて設定する場合はクイックスタートをご利用ください。