Shadowrocketでは、接続スイッチ、サーバーの選択、設定ファイルはそれぞれ役割が異なります。スイッチは接続の開始・停止を、サーバー情報はプロキシ要求をどの既存サービスに渡すかを決めます。Global Routingは、要求をルールに従って処理するか、すべてプロキシ経由にするか、直接接続するかを指定します。サーバー情報を読み込んだだけでは、ルールが選択されたことにはなりません。Ruleを編集しただけでも、現在のルーティングモードでその設定が使われるとは限りません。トラブル時はこの3つを分けて確認すると、ルールの問題をサーバーの問題と取り違えて何度も変更するのを防げます。
初めて使う場合は、クイックスタートに沿ってすでにお持ちの情報を読み込み、接続できることを確認してから、振り分けやOn Demandを設定してください。プロトコルの種類、転送パラメーター、認証情報は、既存のサーバー情報と一致させます。このページのルールは構文の説明用であり、接続認証情報は含まず、利用環境に合った完全な設定の代わりにはなりません。見慣れない画面用語は各詳細カード下部の用語集で、項目の記述方法は設定項目ガイドで確認できます。
01 Global Routingルーティングモード
02 On Demandオンデマンド接続
03 Ruleルールによる振り分け
04 複数のプロトコル接続パラメーター
05 Subscribeサブスクリプションの読み込み
06 設定ファイルと診断バックアップ、ログ、確認
Global Routing:まず要求の処理方法を決める
HomeでGlobal Routingを確認します。Configは現在の設定にあるルールに従ってポリシーを選択し、Proxyは要求をプロキシ経由で処理、Directは直接接続します。ルールによる振り分けを使う場合は、まずConfigを選び、使用中の設定ファイルを確認してください。一時的にモードを切り替えるとルールに関係する問題かどうかを判断できますが、テスト後は元の設定に戻してください。モードを変更してもサーバー認証情報は補われず、利用できないサービスが直るわけではありません。複数の項目を同時に変更するより、切り替え前後の結果を記録するほうが原因を特定しやすくなります。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
On Demand:条件に応じて接続を管理
On Demandは、アプリ内で設定した条件に応じて接続を開始する機能です。Settingsで関連項目を確認してください。まず手動接続で既存の設定が有効であることを確かめてから、オンデマンド条件を設定すると、自動接続の問題と接続そのものの失敗を切り分けやすくなります。条件を変更したら、条件に合致する場合としない場合それぞれのシステム接続状態を確認し、ネットワーク切り替え後の動作にも注意してください。On Demandが管理するのは接続を開始する条件であり、Ruleのポリシー判定を置き換えるものではありません。要求がどの経路を通るかは、Global Routingと現在の設定をあわせて確認します。
Settings → On Demand
Home → Global Routing → Config
Rule:最初に一致したルールでポリシーが決まる
Configで現在の設定にあるRuleを確認します。ルールはリスト順に照合されるため、一般的に具体的な条件を広い条件より前に置き、最後にFINALをフォールバックとして配置します。DOMAINは完全なドメイン名、DOMAIN-SUFFIXはドメインの末尾、IP-CIDRはアドレス範囲に一致します。ルールを変更する前に、その上に一致するルールがないか確認してください。具体的なルールをリストの末尾に追加しただけでは、前の条件が先に一致して適用されない場合があります。Configモードを選んで実際の要求を確認し、ルールの記述だけで動作を判断しないでください。
[Rule]
DOMAIN,ads.example.com,REJECT
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,DIRECT
複数のプロトコル:既存のサーバー情報に合わせて入力
ShadowrocketはShadowsocks、VMess、VLESS、Trojan、Hysteria2などのプロトコルに対応しています。手動で追加する場合は、Add ServerでTypeを選び、該当する項目を入力します。プロトコル名は互換性のあるラベルではなく、HostとPortが同じでも認証方式や転送方式が同じとは限りません。お持ちのサーバー情報と各項目を照合し、パスワードや識別子を省略せず、関連する転送設定も確認してください。スキャンや読み込みの後もTypeを確認しましょう。読み込みが成功したことは情報がリストに追加されたことを示すだけで、接続先サービスへの接続を保証するものではありません。
Add Server
Type → Trojan
Host → example.com
Port → 443
Subscribe:既存サブスクリプションの接続情報を管理
すでにお持ちのサブスクリプションURLは、ご自身が利用しているサービスの提供元から取得し、Subscribeの項目から読み込みます。サブスクリプションは複数のサーバー情報を取得・更新するためのURLです。個別のサーバー共有リンクとは異なり、ルールが含まれるとも限りません。更新前に現在利用できる設定を記録し、更新後はサーバーリストに変化がないか、現在の選択が引き続き有効かを確認してください。内容が空、または読み込みに失敗する場合は、コピーが完全か、URLが有効かを確認します。サブスクリプションURLには個人情報や認証情報が含まれる場合があるため、公開スクリーンショットやチャット、トラブル報告資料に載せないでください。
Subscribe
既存のURLを読み込む → サーバーリストを更新
Typeを確認 → サーバーを選択 → 接続を確認
設定ファイルと診断:状態を記録してから順に確認
Configではルールや設定を管理し、Dataでは通信量の統計を確認できます。Settings内のDiagnosticsは確認作業を補助します。トラブル対応の前に、現在のサーバー、ルーティングモード、設定ファイルを記録し、変更後は該当する項目だけを検証してください。通信記録からクライアントを経由した要求は確認できますが、それだけで接続先サービスの正常性を証明することはできません。デバイスを変更する前に、アプリ内のiCloud同期や設定の書き出し項目を確認してください。復元後も接続情報と設定の選択を見直します。バックアップで保存されるのは設定状態であり、既存サービスの有効期間が延びるわけではありません。
Home → Connectivity Test
Data
Settings → Diagnostics
Config