Shadowrocketの機能と基本設定
まず通信経路を決めてから、ルールと接続条件を調整します。
このページではiPhone / iPadでの操作を中心に、よく使う機能を「概要・場所・設定方法・注意点」の順に説明します。画面上の項目名は英語表記のまま記載しています。具体的な場所や選択肢は、アプリの現在の表示をご確認ください。
Global Routing:3つの通信モード
概要:Global Routingは、クライアントが処理する通信の経路を決める設定です。Configは設定モードで、現在の設定にあるルールに従って処理方法を選びます。Proxyはプロキシモードで、対象の通信を選択中のプロキシ経由にします。Directは直通モードで、対象の通信を直接接続します。ここでいう「Global」はクライアント内のルーティング選択を指し、システム上のすべての通信が無条件に処理されるという意味ではありません。
場所・設定方法:HomeでGlobal Routingを開き、Config、Proxy、Directから選択します。通常は宛先ごとに直通とプロキシを使い分けるため、Configを選び、Config画面で実際に有効な設定ファイルを確認します。問題の切り分けでは、ProxyまたはDirectに一時的に切り替え、同じ宛先への接続を比較できます。確認後は元のモードに戻してください。
| 画面の選択肢 | 処理方法 | 利用する場面 | 確認する項目 |
|---|---|---|---|
| Config(設定) | 現在の設定にあるルールに従って処理方法を選びます。 | 宛先に応じて通信を振り分ける通常利用。 | 設定が有効か、ルールの順序、最終的な処理方法。 |
| Proxy(プロキシ) | 対象の通信を選択中のプロキシ経由にします。 | サーバーとプロキシ経路が一時的に使えるか確認する場合。 | サーバーの選択、認証情報、接続結果。 |
| Direct(直通) | 対象の通信を宛先に直接接続します。 | ローカルネットワークから直接アクセスできるか確認する場合。 | 現在のWi-Fiまたはモバイル通信が正常か。 |
注意点:Configを選んでも、現在の用途に適したルールが自動で設定されるわけではありません。Proxyに切り替えても、期限切れのサーバー認証情報は修復されません。Directとクライアント接続の停止は別の操作です。前者はルーティングモードの一つで、後者は接続を停止します。結果を比較するときは宛先、ネットワーク、サーバーを変えず、複数の条件を同時に変更しないようにしてください。
Rule:マッチ条件と処理方法
概要:ルールはマッチタイプ、マッチ対象、処理方法で構成されます。Configモードでは通常、上から順に確認され、最初に一致したルールが適用されます。DIRECTは直接接続、PROXYはプロキシ経由、REJECTは条件に一致するリクエストの拒否を意味します。FINALはそれまでのルールに一致しない場合に適用されるフォールバックルールで、サーバー名ではありません。
場所・設定方法:Configで現在使用中の設定を開き、編集画面からルールを確認します。変更前にコピーを保存し、対象が明確なルールを上に、広い条件やFINALを下に配置します。以下は構文を理解するための設定例で、あらゆる用途を網羅した完全な設定ではありません。
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.org,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
よく使うマッチタイプ
DOMAINは完全一致するドメイン名にマッチし、DOMAIN-SUFFIXは指定したドメインとそのサブドメインにマッチします。DOMAIN-KEYWORDはドメイン名に含まれるキーワードで判定します。キーワードの適用範囲は想定より広くなる場合があるため、追加前に無関係な宛先まで対象にならないか確認してください。ドメインルールが対象とするのはホスト名です。URL全体のパスではないため、同じドメイン内のページごとの判別には使えません。
IP-CIDRとIP-CIDR6は、それぞれIPv4とIPv6のネットワーク範囲を指定します。GEOIPはIPデータベースに基づいて判定するため、データベースの収録状況や更新状況に左右されます。USER-AGENTはリクエストから識別できる情報を使うルールで、すべての接続で判定に必要な情報を利用できるとは限りません。実際に確認できる宛先情報に基づいてルールタイプを選んでください。
注意点:REJECTが作用するのは条件に一致したリクエストであり、ページ内の特定要素を削除する機能ではありません。同じ接続や宛先を共有するリソースでは、範囲の広すぎるルールが正常な動作に影響することもあります。誤判定が起きた場合は、まずルールの順序とログに記録された実際の宛先を確認し、条件を絞り込んでください。先行ルールの誤りを、フォールバックルールの追加で覆い隠さないようにしましょう。
Subscribeとサーバーの管理
概要:サーバー項目には、接続に必要なアドレス、ポート、プロトコル、認証情報が保存されます。Subscribeは、既存のサブスクリプションからサーバー一覧を読み込み、更新する機能です。サブスクリプションとConfigの役割は異なり、前者は主にサーバー情報、後者は主にルールと全般的な設定を管理します。サーバーを読み込んだ後も、Global Routingと現在の設定が目的に合っているか確認してください。
場所・設定方法:Homeの追加メニューからAdd Serverを開き、サブスクリプションがある場合はSubscribeを選びます。サービス提供元から取得したサブスクリプションURLを入力して保存し、更新後に追加された項目を確認してください。サーバー情報が揃っている場合は、Add Serverで該当するタイプを選んで手動入力できます。Scan QR Codeで自分の共有情報を読み込む方法もあります。読み込み後は名前とタイプを確認し、使用するサーバーを選択してください。
プロトコルと設定値の確認
ShadowrocketはShadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard、Hysteria2などのプロトコルや接続タイプに対応しています。利用できる項目はアプリの現在の表示をご確認ください。同じプロトコル名でも設定項目をそのまま置き換えられるとは限りません。アドレス、ポート、認証情報に加え、TLSやトランスポート層などの適用パラメーターを一つずつ確認してください。接続を直すために、タイプをむやみに切り替えるのは避けましょう。
共有情報には、単一サーバーだけが含まれる場合もあれば、サブスクリプションのリンクや別の設定が含まれる場合もあります。読み込む情報の種類を先に確認し、設定ファイルのURLをサーバーアドレス欄に入力しないようにしてください。認証情報を含むリンク、QRコード、書き出したファイルは機密情報として扱い、公開の場にそのまま貼り付けないでください。
更新・整理・バックアップ
サブスクリプションを更新すると、リモートからサーバー情報が再取得されます。項目名、件数、設定値が変わる場合があるため、更新前に使用中のサーバーを記録し、更新後に選択状態を確認してください。特定の項目を手動で変更する場合は、先に個別のコピーを保存し、次回の更新で変更内容が上書きされないようにします。削除時は、サーバー1件の削除かサブスクリプション全体の削除かを確認してください。
注意点:サブスクリプションの更新成功は、取得した内容を読み込んで解析できたことを示すだけで、各サーバーへの接続を保証するものではありません。更新に失敗しても、必ずしもクライアントの問題とは限りません。URLが完全か、アクセス権が有効か、現在のネットワークからサブスクリプションのURLにアクセスできるかを確認してください。詳しい読み込みと整理の手順はサブスクリプションとサーバーの管理ガイドをご覧ください。
On Demand:条件に応じた接続
概要:On Demandは、設定した条件に合うときに接続を要求する、システムのオンデマンド接続機能を利用します。On Demandが決めるのは「いつ接続するか」で、Global RoutingとRuleが決めるのは「接続後に通信をどう処理するか」です。両方を併用できますが、互いの代わりにはなりません。サーバー自体が利用できない場合、On Demandを有効にしても接続できるようにはなりません。
場所・設定方法:SettingsでOn Demand関連の項目を探します。まず手動で接続し、サーバーと設定が正常に動作することを確認してから、画面に表示されるネットワーク条件に応じた動作を設定してください。Wi-Fiなどの条件で接続方法を分ける場合は、各条件と動作を確認し、保存後に該当するネットワークで動作を検証します。システムのVPN設定に関する確認が表示された場合は、内容を読んでから許可してください。
注意点:オンデマンドルールは、ネットワークの変化やリクエストを受けてシステムが動作させるもので、常時接続を保証するものではありません。手動で切断した後に再接続する場合は、まずOn Demandの条件が引き続き満たされていないか確認してください。使用を一時停止するには、関連するオンデマンド動作を明示的に無効にし、システムの接続状態も確認します。Homeで一度スイッチを操作しただけで、その後の再接続が起きないと判断しないでください。
Data:通信量と接続記録の確認
概要:Dataでは、クライアントが確認できる範囲の通信量や接続情報を確認できます。操作によってリクエストが発生したか、どのように処理されたか、問題の調査中に異常な記録がないかを確認する際に役立ちます。集計範囲はクライアントが処理・記録した内容によって異なり、デバイス全体の通信量を示すものではありません。
場所・確認方法:Dataを開き、現在の画面に表示される統計または記録の項目を確認します。Webページの問題を調べる場合は、まず操作時刻を控えてから一度アクセスし、Dataで該当時間帯の宛先と接続結果を確認してください。短い時間帯の記録を取り直す場合は、既存の記録が不要であることを確認してから、画面にある消去またはリセット操作を使います。
注意点:Dataの統計は、モバイル通信事業者の請求情報やサービス提供元の使用量表示の代わりにはなりません。集計範囲や更新周期が異なる場合があります。接続記録にはドメイン名、IPアドレス、利用時刻などが含まれることがあるため、診断情報を共有する前に機密情報を確認して隠してください。記録が見つからない場合も、すぐにリクエストが発生していないと判断せず、記録設定、接続の再利用、通信がクライアントの処理対象かどうかを確認しましょう。
Settings:基本設定を調整する順序
Settingsには、クライアントの動作、テスト、同期、診断に関する設定がまとめられています。正常に動作する状態を基準として残し、一度に一項目だけ変更して、変更前後の結果を記録するのがおすすめです。設定画面の項目と設定ファイル内のパラメーターが、最終的な動作にともに影響する場合があります。判断時はスイッチの状態だけでなく、現在のConfigも確認してください。
DNS:ドメイン名の名前解決
概要・場所:DNSはドメイン名を接続先のIPアドレスに変換します。関連する設定はSettingsのDNS項目や、Config内の全般パラメーター(例:dns-server)に含まれる場合があります。次の例はシステムDNSを使う設定の書き方を示したもので、既存の設定をそのまま置き換える必要はありません。
[General]
dns-server = system
設定方法・注意点:まず既存の設定を確認し、必要な場合にのみ名前解決の方法を変更してください。カスタムDNSサーバーのアドレスは、内容を把握しているネットワーク設定から取得します。遅延テストに結果が出るのにWebページを開けない場合、DNSは原因の一つとして確認できますが、唯一の原因とは限りません。変更後は同じドメインに再度アクセスし、必要に応じてアプリ内の方法でDNSキャッシュを消去してください。DNSとルーティングの項目を一度に複数変更しないようにしましょう。
Test MethodとConnectivity Test:テスト方法の確認
概要・場所:SettingsでTest Methodを開き、Connectivity Testの実行に使うテスト方法を選びます。方法によって確認する接続段階が異なるため、テスト方法をそろえずに結果を比較することはできません。画面でテスト対象を設定できる場合は、内容を把握しており、安定してアクセスできる宛先を指定してください。
設定方法・注意点:自分のサーバーを比較するときは、テスト方法、宛先、使用中のネットワークをそろえ、テスト後に必要なサービスへ実際にアクセスしてください。テスト値が低くても、継続的な通信速度が高いとは限らず、すべての宛先に接続できる証明にもなりません。テストに失敗した場合も、認証情報、DNS、宛先への到達性をあわせて確認し、一度の結果だけでサーバーを削除しないようにしましょう。
Today Widget:すばやい確認と操作
概要・場所:Today Widgetは、システムのウィジェット領域から情報をすばやく確認したり操作したりするための機能です。関連する項目はSettingsで確認できます。表示内容や追加できる場所は、現在のシステムとアプリの対応状況によって異なります。よく使う操作への補助的な入口であり、HomeやConfigの詳細設定に代わるものではありません。
設定方法・注意点:まずアプリ内で表示可能な内容を確認し、システムのウィジェット管理画面から追加します。設定後はアプリに戻り、実際の接続状態を確認してください。ウィジェットの表示がすぐに更新されない場合はアプリを開いて確認し、ウィジェットに以前表示された情報だけで接続の開始や停止を判断しないようにしましょう。
iCloud同期:デバイス間で設定を引き継ぐ
概要・場所:SettingsのiCloud関連項目では、アプリが対応するデータを同期できます。同期の可否は、デバイスのiCloudサインイン状態、システムの権限、ネットワーク状況にも左右されます。同期の対象範囲はアプリ内の説明をご確認ください。デバイス内の全データを完全にバックアップする機能ではありません。
設定方法・注意点:デバイスを移行する前に、元のデバイスで同期が完了していることを確認し、重要な設定は復元できるよう別途コピーを保管してください。新しいデバイスでアプリを開いたら、設定とサーバー情報が揃っているか確認してから編集や削除を行い、未確認の変更が他のデバイスに同期されないようにします。App Storeの購入済みアプリの復元とiCloudのデータ同期は別の機能です。アプリを再取得できても、設定が必ず復元されるわけではありません。購入とインストールについては購入済み項目の復元をご覧ください。
Diagnostics:トラブルシューティング用の情報を収集
概要・場所:SettingsでDiagnosticsを開き、画面にある診断機能やログ機能を使って、接続エラーが発生した段階を確認します。診断結果は原因を絞り込む手がかりであり、サーバーの品質や最終的なアクセス結果を保証するものではありません。
設定方法・注意点:問題を再現する手順を準備してから必要な記録を有効にし、短い時間内に一度だけ再現します。必要な情報を保存したら、通常の記録設定に戻してください。情報を外部に共有する前に、サブスクリプションURL、認証項目、サーバー情報、アクセス記録を確認します。エラーの種類と発生時刻を残せば十分で、設定全体を公開しないでください。
設定が反映されない場合の診断手順
設定が複雑なほど、手順を決めて原因を絞ることが重要です。まず基本ネットワーク、次にサーバー情報、その後にルーティングとDNSを確認し、最後に自動接続と同期の設定を調整します。サブスクリプションの権限、接続パラメーター、ルールのマッチ条件という別々の問題を混同せずに確認できます。
- ローカルネットワークを確認:オンデマンド接続を一時停止してクライアントを切断し、現在のネットワークから既知の利用可能な宛先にアクセスできるか確認します。必要に応じて、Wi-Fiとモバイル通信のそれぞれで同じ操作を試してください。
- サーバー情報を確認:想定した項目が選択されていることを確認し、タイプ、アドレス、ポート、認証情報を照合します。サブスクリプションを利用している場合は更新結果も確認しますが、更新成功を接続成功とみなさないでください。
- Global Routingを確認:一時的にProxyを選んで比較します。Proxyでは接続でき、同じ宛先がConfigで失敗する場合は、現在の設定、ルールの順序、最終的に適用された処理方法を優先して確認してください。
- 名前解決と宛先を確認:DNS設定とDataの記録を照らし合わせ、ドメイン名の解決失敗、接続失敗、宛先サービスからのエラーを切り分けます。Connectivity Testに結果が表示されても、実際に利用する宛先への接続を確認してください。
- 通常の状態に戻す:テスト後は、想定しているGlobal Routing、On Demand、記録の設定に戻します。正常に動作する設定を保存し、後で再確認できるよう最終的な変更内容を記録してください。
初回設定が終わっていない場合は、使い方ガイドに沿って読み込みから動作確認まで進めてください。接続はできていてサーバーの整理だけが必要な場合は、サブスクリプションの更新方法をご覧ください。ShadowrocketはAppleプラットフォーム向けの有料アプリで、入手先はApp Storeのみです。システム要件はApp Storeのページでご確認ください。購入前に正規品の確認手順もご覧いただけます。