FEATURES / SETTINGS

Shadowrocket
機能と設定

まずリクエストのルーティング方法を決め、その後に接続と診断の設定を調整します。一度に変更する項目は一種類に絞り、同じアクセス先で結果を確認してください。

このページでは、Shadowrocket公式マニュアルの機能を一覧で紹介し、主にiPhoneとiPadでの操作を説明します。画面の項目や利用できる選択肢は、端末に表示される英語表記を確認してください。

01 / ROUTING

Global Routing:Config、Proxy、Direct

Global Routingはリクエストの処理方法を選ぶ項目で、通常はHomeから開きます。Config、Proxy、DirectはそれぞれConfig、Proxy、Directに対応します。これらは通信のルーティング方法を決めるもので、サーバーを作成したり、サーバー設定の誤りを修正したりする機能ではありません。モードを選ぶ前に、既存のサーバー情報が読み込み済みで、選択中のサーバーがテスト対象と一致していることを確認してください。

モードと画面上の表記処理方法利用シーン確認ポイント
Config(設定)Config現在有効な設定ファイルとルールに基づいてポリシーを決定します。ドメインやアドレスに応じて日常的に通信を振り分ける場合。設定ファイルが有効か、ルールの順序と適用先のポリシーが正しいか。
Proxy(プロキシ)ProxyリクエストをProxyモードで処理します。具体的な動作はアプリの関連設定によって異なります。現在のサーバーで実際にアクセスできるか、一時的に確認する場合。サーバー設定、ネットワークへの到達性、アクセス先の結果。
Direct(直接接続)DirectリクエストをDirectモードで処理し、通常の出口として選択中のプロキシサーバーを使用しません。現在のローカルネットワークでのアクセスを基準として確認する場合。ローカルネットワーク、DNS、アクセス先そのものに問題がないか。
  1. HomeでGlobal Routingを開き、現在の選択内容を記録してから、確認したいモードに切り替えます。
  2. 同じネットワークと同じアクセス先で実際に接続を試してください。サーバーとDNSを同時に変更すると、原因を特定しにくくなります。
  3. ProxyではアクセスできるのにConfigではできない場合、まずルールの一致状況とポリシーの参照先を確認し、テスト後は通常使うモードに戻してください。

02 / RULE ROUTING

ルールによる振り分け:マッチ対象と適用ポリシー

ルールは「どのリクエストを」「どう処理するか」を一行で指定します。設定画面はConfig内の現在使用中の設定ファイルにあります。Global RoutingでConfigを選んだうえで、ルールが実際にどう適用されるか確認してください。ルールは通常上から順に評価されるため、条件が具体的なものを広範なものより前に置きます。先行ルールに一致した場合、後続の同種ルールがその判定を補うことはありません。

DOMAINは完全一致のドメイン名、DOMAIN-SUFFIXは指定ドメインとそのサブドメイン、DOMAIN-KEYWORDはドメイン名に含まれるキーワードに一致します。IP-CIDRとIP-CIDR6はそれぞれIPv4、IPv6のネットワーク範囲を指定し、GEOIPはIPアドレスの地域データベースに基づいて判定します。ドメインルールとアドレスルールは対象が異なるため、Webページのドメイン名だけで特定のアドレスルールに一致すると判断することはできません。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

次の例は構文の説明用です。example.comとそのサブドメインにはPROXYを適用し、それ以外は最後のFINAL,DIRECTで処理します。DIRECTは直接接続、REJECTは拒否、PROXYはプロキシポリシーを意味します。独自のポリシーグループ名を参照する場合は、設定ファイル内にその名前が存在することを確認してください。この例はすべてのネットワークに適した完全な設定ではなく、接続サービスを提供するものでもありません。

  1. 編集前に現在の設定をバックアップし、確認が必要なルールだけを追加・変更してください。ファイル全体をそのまま置き換えないでください。
  2. 例外条件などの具体的なルールを広範なルールより前に置き、フォールバック用のFINALはルール一覧の最後に残してください。
  3. 保存後、変更したファイルが有効になっていることを確認し、リクエスト記録で対象、適用ルール、ポリシーを確認してください。

確認ポイント:ルールに一致しても、対象サーバーに接続できるとは限りません。想定したポリシーが適用されているのに失敗する場合は、同じルールを繰り返し追加せず、サーバー、名前解決、ネットワークを確認してください。構文の詳細はルールキーワードとマッチ順序をご覧ください。

03 / SERVER MANAGEMENT

サブスクリプションとサーバー:リストと個別設定の違い

サーバー管理は、すでに自分で用意したサブスクリプションまたはサーバー情報があることを前提としています。HomeのSERVER欄ではサーバーの確認と選択ができます。Add Serverは個別情報や該当する種類の項目の追加、Subscribeはサブスクリプション関連の操作に使います。サブスクリプションは更新可能なサーバー一覧であり、個別の共有リンクは主に一つのサーバー情報を表します。どちらもリンクだからといって、同じ欄に入力できるとは限りません。

読み込む前に、手元の情報がサブスクリプションURL、個別の共有リンク、手入力が必要な設定のどれかを確認してください。Add Serverでは元の情報に合った種類を選び、アドレス、ポート、認証、通信方式を一つずつ確認します。サブスクリプションは該当するSubscribeの項目から追加して更新してください。具体的な場所は現在の画面で確認します。QRコードはScan QR Codeで読み込めますが、読み取りに成功しても設定が利用可能とは限りません。

Shadowsocks、VMess、VLESS、Trojan、Hysteria2などのプロトコルでは、認証や通信方式に使う項目がそれぞれ異なります。たとえばVLESSの認証情報を、別の種類のパスワード欄にそのまま入力することはできません。TLS、通信パス、サーバー名が必要かどうかは、手元にある元のサーバー情報で確認してください。よくある値を試して補う方法は避けてください。

  1. 登録済みサブスクリプションを更新する前に、現在使用中のサーバー名と所属グループを記録し、必要に応じて自分の設定をバックアップしてください。
  2. 更新後、リストが実際に更新されたことと、選択中の項目が残っていることを確認します。削除または名前が変更された項目は、選び直す必要があります。
  3. まずConnectivity Testを実行し、その後に実際のアクセスを確認してください。テスト結果とWebページの読み込み結果は分けて記録します。

04 / CONFIG FILE

Config:設定ファイルとサーバーリストは別々に管理

Configではルールや関連する設定内容を管理します。サーバーリストとは用途が異なり、サーバー設定は接続先と認証方法を示し、設定ファイルはリクエストの振り分け方や関連設定を定義します。サブスクリプションを更新しても、現在の設定ファイルが更新されるとは限りません。設定ファイルを読み込んだだけで、すべてのサーバー設定が整ったと判断することもできません。

Configで現在有効なファイルを確認し、そのファイルの表示または編集画面を開きます。変更前に復元用のコピーを保存し、現在のGlobal Routingモードを記録してください。自分で用意した設定を追加する場合は、ルール、参照されているポリシー、名前解決の設定を先に確認し、用途を理解しないまま有効にしないでください。ファイルを保存できても、すべてのポリシー名が正しく参照できるとは限りません。

確認ポイント:変更を保存したら、有効マークが付いているファイルを確認し、対象へのリクエストを再度実行して適用結果を確認してください。元に戻す場合は、サーバー名だけでなく設定ファイルと関連設定を復元します。複雑なルールの問題はトラブルシューティングマニュアルで症状に沿って確認してください。

05 / ON DEMAND

On Demand:ネットワーク条件に応じた接続

On Demandは、あらかじめ設定した条件に応じて接続動作を開始する機能です。手動接続が正常で、特定のネットワーク条件に応じて接続を自動処理したい場合に使用します。サーバーの利用可能性を保証する機能でも、設定ミスを自動修正する機能でもありません。アプリでOn Demandの設定を開き、利用できるネットワーク条件と動作を一つずつ確認してください。条件の内容は端末に表示される項目を基準にします。

  1. まずOn Demandを無効にし、手動操作だけでサーバー、ルーティングモード、アクセス結果が想定どおりか確認してください。
  2. On Demandを開き、必要な条件を一種類ずつ有効にします。Wi-Fiやネットワーク名で条件を指定できる場合は、現在のネットワーク名と完全に一致しているか確認してください。
  3. 条件に応じてネットワークを切り替え、システム上の接続状態とアクセス結果を確認します。元のネットワークに戻した際の動作も想定どおりか確認してください。

注意:On Demandのルールを有効にすると、手動で切断しても再接続が実行され、スイッチが再びオンになることがあります。接続を確実に停止するには、On Demandが有効になっていないか確認してください。この動作だけでアプリの異常と判断しないでください。自動条件を一時的に無効にしてから手動接続をテストすると、状態が繰り返し変わる影響を抑えられます。

06 / DATA

Data:通信量の変化とアクセス記録を確認

Dataでは、クライアント側の通信量統計や関連記録を確認でき、リクエストの動きやデータ量の変化を把握できます。比較する前に、集計対象、期間、画面に表示されている単位を確認してください。アプリの記録と、利用中の接続サービス側の課金集計では基準が異なる場合があります。ここに表示される数値を、残りの利用量や請求額とみなすことはできません。

操作前にDataを開いて現在の数値を記録し、特定のページを読み込むなど、条件を絞ってアクセスした後に変化を確認します。振り分けを調べる場合は、確認できるリクエスト記録からドメイン、接続先アドレス、ポリシーを確認してください。速度を調べる場合は、ネットワーク、サーバー、テスト対象を同じ条件に保ちます。通信量の合計が増えたことだけでは、特定のページが最後まで読み込まれたとは判断できません。

確認ポイント:バックグラウンド処理、システムのリクエスト、ほかのアプリの動作でも通信が発生することがあります。原因を調べる際は無関係な動作を減らし、操作前に集計範囲を記録してください。記録を消すと問題解決の手がかりを失う場合があるため、必要な情報を先に保存します。他の人に問題を伝えるときは、そのテストに関係する範囲だけを残し、ドメイン名以外にも個人の利用状況が分かる情報を隠してください。

07 / SETTINGS

Settings:名前解決、テスト、補助機能

Settingsの項目はそれぞれ異なる処理に影響するため、すべてをまとめて有効にする必要はありません。問題が名前解決、接続テスト、クイック操作、設定同期、診断のどれに当たるかを確認してから、該当する項目を開いてください。以下の項目の場所や利用できる選択肢は、端末やアプリの画面によって異なる場合があります。実際の操作では現在の英語表記を確認してください。

DNS:名前解決と接続を切り分ける

DNSはドメイン名をIPアドレスに変換します。SettingsでDNS関連の項目を確認し、現在のConfigに名前解決へ影響する設定が含まれていないかも確認してください。遅延テストが正常でもWebページを開けない場合、名前解決、TLS、接続先サービス、ルールなどに原因がある可能性があり、症状だけでDNSの問題とは断定できません。現在の名前解決設定を記録し、同じドメインでテストしてください。変更が必要な場合は関連項目を一つだけ変更し、元に戻す方法も記録しておきます。

確認ポイント:プロキシサーバーのアドレス、サブスクリプションURL、DNSアドレスを互いに代用しないでください。変更後に一部のドメインだけアクセスできるようになった場合は、そのドメインに適用されたポリシーと名前解決の結果を確認します。詳しい手順はDNS名前解決の失敗を確認するチェックリストをご覧ください。

Test Method:テスト内容を理解する

Test Methodでは、接続性や遅延をテストする方法を選択できます。Settingsで確認してください。方法によって検証する通信経路の範囲が異なるため、異なる方法で得た数値をそのまま比較することはできません。現在選択されている方法と関連するテスト対象を確認してからConnectivity Testを実行します。方法を切り替えた場合は、同じサーバー群を再テストし、切り替え前後の結果を混在させないでください。

確認ポイント:応答が速くても継続的な通信速度が速いとは限らず、テストがタイムアウトしてもすべての通信が失敗するとは限りません。最後は実際のアクセス先で確認し、そのときのルーティングモードも記録してください。

Today Widget:クイック操作も現在の設定に依存

Today Widgetは、システムのウィジェットに関連する補助機能です。アプリとシステムが対応している場合は、まずSettingsで設定項目を確認し、システムが対応する方法で追加または管理してください。システム要件はApp Storeの掲載内容を確認してください。ウィジェットを追加できるかどうかや表示方法も、端末に用意された項目に従ってください。

追加する前にアプリ内で選択中のサーバーと接続状態を確認し、追加後にウィジェットの表示と実際の状態が一致しているか確認します。クイック操作は設定の確認に代わるものではありません。表示がすぐに更新されない場合は、接続操作を繰り返さず、アプリとシステムの状態を確認してください。

iCloud:同期後も端末側の状態を確認

iCloud関連機能では、対応範囲内でアプリのデータを保存または同期できます。Settingsで該当する項目を確認してください。使用前に自分のApple Accountで端末にサインインしていることと、システムでアプリのiCloud利用が許可されていることを確認します。端末内のデータを復元できるように保存してから、画面に表示される方法で同期または復元してください。同期対象は項目の説明を確認し、すべてのデータやシステムの許可情報まで移行されると想定しないでください。

確認ポイント:別の端末でも、現在の設定、サーバーの選択、VPN構成の許可状況を確認してください。iCloud同期はリアルタイムの接続状態を同期するものではありません。どちらのデータが上書きされるか分からないまま、復元を繰り返さないでください。

Diagnostics:再現可能なトラブル情報を記録

Diagnosticsは診断情報の収集を補助する機能です。Settingsで該当する項目を探してください。問題が発生したネットワーク、ルーティングモード、操作手順を先に記録し、画面の案内に従って関連する情報を一度収集します。再現時は同じテスト対象を使い、再試行前に前回変更した項目を書き留めて、ログと実際の設定が対応するようにしてください。

注意:診断情報にはサーバーアドレス、リクエスト情報、認証関連の項目が含まれる場合があります。書き出しや共有の前に一つずつ確認し、機密情報を隠してください。問題の説明に必要な最小限の情報だけを残します。診断情報は原因の範囲を絞るためのもので、エラーメッセージ一つを根拠にすべての設定をリセットしないでください。

08 / VERIFICATION

設定後の確認:一つのリクエストを段階ごとに確認

各機能には相互に関係があります。サーバー設定が接続の基盤となり、Global Routingが処理モードを決め、Configがルールとポリシーを定義します。DNSは名前解決に関わり、DataとDiagnosticsは状況を確認する手がかりになります。設定が有効かどうかは、スイッチがオンかだけで判断せず、同じリクエストを段階ごとに確認してください。

  1. 接続の基盤を確認。自分で用意した、必要な情報がそろったサーバーを使用していること、現在のネットワークが利用できること、システムのVPN構成に必要な許可が済んでいることを確認します。
  2. ルーティングモードを確認。Global Routingがテストの目的に合っているか確認してください。Configを使う場合は、有効な設定ファイルとルールの適用結果も確認します。
  3. 実際のアクセスを確認。テストを実行した後、決めたアクセス先を読み込み、成功、タイムアウト、具体的なエラーを記録します。遅延の数値だけで結論を出さないでください。
  4. 自動動作を確認。通常の設定に戻す前に、On Demandが接続状態を再び変更しないか確認し、今回有効だった設定を記録してください。

まだインストールしていない場合は、先にApp Storeで正規アプリを確認して購入する方法をご覧ください。Shadowrocketの入手先はApp Storeのみです。ストア上のデベロッパはShadow Launch Technology Limited、アプリIDは932747118です。価格、システム要件、購入対象となる地域はApp Storeの掲載内容をご確認ください。初回の読み込み方法は使い方ガイド、繰り返し発生する問題はトラブルシューティングマニュアルで順に確認してください。