公式マニュアル · 機能と設定

Shadowrocket プロキシモードと基本設定

まずGlobal Routingを選び、ルール、サーバー、DNSを確認します。以下ではiPhone / iPadの画面を例に、各設定の役割、操作手順、確認方法を説明します。

ShadowrocketにはiPhone / iPad / Mac / Windows / Android / Linux版があります。設定画面や手順は、各プラットフォームの実際の表示をご確認ください。

Global Routing:設定、プロキシ、直接接続

iPhone / iPad:Homeで現在のモードを確認します。通常の振り分けにはConfigを使い、一時的な確認にはProxyまたはDirectに切り替えます。

概要:Global Routingは、リクエストのルーティング方法を決めます。接続スイッチ、SERVERで選択したサーバーとはそれぞれ役割が異なります。スイッチは接続の有効・無効、モードは経路の選択方法、サーバーはプロキシ接続で使用する接続先を決めます。SERVERを変更しただけではConfigがProxyに切り替わることはなく、DIRECTに一致したリクエストがプロキシ経由になるわけでもありません。

画面の場所:Homeを開き、Global RoutingでConfig、Proxy、Directの選択状態を確認します。Configはルーティングモードであると同時に、設定管理画面の名称でもあります。操作手順を読む際は「ルーティングモード」と「画面の入口」を区別してください。

モードリクエストの処理方法用途注意点
設定 · Config現在有効な設定のルールに従ってポリシーを選択します。ドメインやIPアドレスごとに経路を振り分ける通常利用。有効な設定とルールの順序を先に確認してください。
プロキシ · Proxyリクエストをプロキシ経由で処理し、プロキシ経路を確認します。振り分けルールに問題があるか一時的に切り分ける場合。すべてのシステム接続が必ずプロキシ経由になるわけではありません。
直接接続 · Directリクエストを直接接続で処理します。現在のネットワークから接続先へ直接アクセスできるかを比較する場合。接続スイッチをオフにするモードでも、プライバシー保護の設定でもありません。

設定手順:① Homeで使用するサーバーを選択します。② Global RoutingをConfigに設定します。③ Config画面で想定した設定が有効になっていることを確認します。④ 接続を有効にし、確認済みの接続先にアクセスします。問題の切り分けでは、一時的にProxyまたはDirectに切り替えて同じ接続先を再テストし、終了後に元のモードへ戻します。

注意点:モードの切り替えは切り分けの手掛かりになりますが、一度成功しただけで原因を断定することはできません。アプリのキャッシュ、確立済みの長時間接続、DNSキャッシュに以前の結果が残る場合があります。切り替え後にリクエストを再実行し、ネットワーク環境も記録してください。Proxyでは接続できてConfigではできない場合、すべてのサーバーを再設定する前に、ルールの一致状況とポリシーの参照先を確認します。

ルールの種類とポリシーの選択

iPhone / iPad:Configで有効な設定を確認します。ルールは「何に一致するか」、ポリシーは「一致後にどう接続するか」を決めます。

概要:ルール振り分けでは、接続先ごとに異なるポリシーを適用します。DOMAINは完全なドメイン名、DOMAIN-SUFFIXはドメインの接尾辞、DOMAIN-KEYWORDはドメイン内のキーワードに一致します。IP-CIDRとIP-CIDR6はそれぞれIPv4とIPv6のアドレス範囲に、GEOIPはIPアドレスの地域データに基づいて一致します。ルールは通常、上から順に評価され、最初に一致したルールで処理が決まります。範囲の広いルールを詳細なルールより前に置かないようにしてください。

画面の場所:Configから現在の設定を開き、[Rule]セクションと参照先のポリシーを確認します。編集前に復元用のコピーを保存してください。特に、名前が似た別の設定ではなく、現在有効なファイルを編集していることを確認します。リモート設定は更新時にローカル編集が上書きされる場合があります。継続して使う前に、設定の管理元を把握してください。

[Rule]
DOMAIN,api.example.com,DIRECT
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY

設定手順:① 個別に処理したい接続先を整理します。② 詳細なルールを先に書き、範囲の広いルールを追加します。③ 各ルールに実在するポリシーを割り当てます。④ 最後にフォールバックとしてFINALを置きます。⑤ 設定を保存して有効にし、再テストします。上記はルール構文の例です。すべてのネットワークで使える完成済み設定ではなく、サーバー情報も含まれていません。

注意点:PROXY、DIRECT、REJECTはポリシーのキーワードです。それぞれプロキシ、直接接続、拒否を表し、翻訳してルールに記述しないでください。ドメインルールとIPルールが参照する情報は異なります。IPアドレスへのアクセスが、特定のドメインへのアクセスと同じ扱いになるわけではありません。USER-AGENTなどリクエスト情報に依存するルールには適用条件があり、すべての暗号化されたリクエストを識別できるとは限りません。一致しない場合は、実際のリクエスト先を確認してからルールの順序を調整してください。詳しくは用語解説をご覧ください。

サブスクリプションとサーバーの管理

iPhone / iPad:サーバーのサブスクリプションとルール設定を区別し、SubscribeまたはAdd Serverから手元の情報を登録します。

概要:サーバー情報にはプロトコル、アドレス、ポート、認証パラメーターが保存されます。サブスクリプションは複数のサーバー情報をまとめて取得・更新するためのものです。設定ファイルではルーティングやDNSなどの動作を定義します。サーバーをインポートしても、対応するルールが有効になるとは限りません。また、サブスクリプションを更新してもConfig内のルールファイルが更新されるとは限りません。この3つを分けて確認すると、「一覧に情報があるのに接続できない」という誤認を防げます。

画面の場所:HomeのSERVER欄でサーバーを確認・選択できます。Add Serverはサーバー情報の追加、Subscribeは該当するサブスクリプションの登録に使います。設定ファイルの管理にはConfigを使用します。画面上のサブスクリプション対象はサーバー一覧ではなく設定ファイルの場合もあります。操作前にタイトルとインポート結果を確認してください。Scan QR Codeやクリップボードからの読み込みは登録方法であり、元の情報の種類を変えるものではありません。

設定手順:① 利用者自身が用意したサブスクリプションURLまたはサーバー情報を準備します。② 該当する画面からインポートし、手動入力する場合はTypeを正しく選択します。③ アドレス、ポート、プロトコルに必要な認証項目を確認します。④ Homeに戻り、インポートされたグループと選択中のサーバーを確認します。⑤ Connectivity Testで基本的な接続を確認し、実際の接続先にもアクセスします。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard、HTTP、SOCKS5では入力項目が異なります。別のプロトコルの入力方法をそのまま使わないでください。

注意点:サブスクリプションURLにはアクセス認証情報が含まれることがあります。スクリーンショットや診断情報を共有する前に、URL全体と認証情報を隠してください。更新によってサーバー名、件数、グループが変わる場合があるため、更新後に選択状態を再確認します。サブスクリプションから生成された情報を手動で変更しても、次回の更新で置き換わる場合があります。問題が発生したら、「サブスクリプションをダウンロードできない」「内容を認識できない」「インポート後に接続できない」を切り分け、症状に応じてトラブルシューティングマニュアルを確認してください。有効な情報を繰り返し削除しないでください。

On Demandによるオンデマンド接続

iPhone / iPad:まず手動接続を確認し、その後On Demandのネットワーク条件を設定します。

概要:On Demandは、システムが対応する条件に基づいて接続を開始するかどうかを決めます。設定するのは「いつ接続するか」であり、「特定のドメインをどのポリシーで処理するか」ではありません。ドメインやIPアドレスの経路は、引き続きGlobal Routingと設定ルールで確認します。また、利用できないサーバー、誤った認証情報、アクセス不能なサブスクリプションを修復する機能ではありません。

画面の場所:SettingsでOn Demandを探し、有効な条件と対象ネットワークを確認します。項目はプラットフォーム、OS、アプリの実際の画面によって異なります。使用中の端末に表示されない項目について、他のプラットフォームの手順をそのまま適用したり、無関係なスイッチの変更で代用したりしないでください。

設定手順:① On Demandを一時的に無効にし、手動接続で目的の接続先を利用できることを確認します。② 現在のルールとサーバーの選択状態を記録します。③ 必要な接続条件を有効にし、一度に変更する項目は1つだけにします。④ Wi-Fiとモバイル通信を切り替え、接続状態を確認します。⑤ 元のネットワークに戻して再確認し、同じ結果を再現できることを確かめます。

注意点:手動で切断した後に再接続される場合は、接続スイッチの故障と決めつけず、まずOn Demandの条件を確認してください。オンデマンド接続とバックグラウンド更新は別の設定です。また、システムによって接続のスケジュールが制限される場合があります。ネットワーク名、ネットワークの切り替え、スリープからの復帰が再現状況に影響するため、問題を調べる際は発生前後のネットワーク環境を記録してください。

Dataの通信量統計

iPhone / iPad:Dataではアプリが記録した通信量を確認できます。システムの通信量記録や、利用中のサービスの使用量を置き換えるものではありません。

概要:Dataではアプリが記録した範囲の通信量を確認でき、接続状況や急な増加を把握するのに役立ちます。統計値は表示期間、集計開始時点、クライアントが実際に記録する範囲によって異なります。端末全体のモバイルデータ使用量として扱ったり、サービスの残り通信量を判断する唯一の基準にしたりしないでください。

画面の場所:Dataを開き、まず統計項目の名称と対象期間を確認してから数値を読みます。特定のテストで通信が発生したか調べる場合は、テストの前後で同じ項目を確認してください。異なる期間、ネットワーク、集計基準の数値をそのまま差し引いても、有効な結果が得られないことがあります。

確認手順:① テスト前の統計値と時刻を記録します。② 関係のないダウンロードや同期を停止します。③ 内容を明確にしたアクセス操作を1回だけ行います。④ Dataに戻って変化を確認します。⑤ Global Routingのモード、接続先、ネットワークの種類を踏まえて結果を判断します。統計をリセットする場合は、比較用の記録を保存し、画面でどのリセット操作が提供されているか確認してください。

注意点:通信量が増えても、接続先の読み込みが完了したとは限りません。アップロード、再試行、バックグラウンド接続でも数値は増加します。使用量が多い場合は、すぐに特定のルールが原因と判断せず、システムのバックグラウンド処理、同期、接続の再試行を確認してください。料金や残量を確認するときは、システムのモバイルデータ記録と、利用者自身が契約しているサービスの使用量をそれぞれ確認します。

Settingsの基本項目

iPhone / iPad:設定の適用範囲を確認し、一度に変更する項目は1つだけにします。元の状態に戻す方法も確保してください。

DNS:ドメイン名の名前解決と設定元

概要と画面の場所:DNSはドメイン名をIPアドレスに変換します。関連設定はSettingsと現在のConfigの両方で確認してください。名前解決の失敗とプロキシ接続の失敗は別の問題です。サーバー情報が正しくても、接続先のドメインを名前解決できないとリクエストは失敗する場合があります。

設定手順:① 現在のDNS設定と、有効な設定内のdns-serverを記録します。② 指定したDNSサーバーに、現在のネットワークとルーティングから到達できることを確認します。③ 変更箇所を1つに絞り、ドメインへのリクエストを再実行します。④ アプリの診断情報と照らし合わせて変化を確認します。注意:DNS、ルーティングモード、サーバーを同時に変更すると、どの変更が影響したのか判断できません。カスタムDNSを設定しても、リクエストが自動的に暗号化されるわけではありません。キャッシュのため、変更がすぐに結果へ反映されない場合もあります。

Test Method:テスト方式と結果の見方

概要と画面の場所:SettingsのTest Methodではテスト方式を選択でき、Connectivity Testの結果の解釈にも影響します。疎通テストとWebページ全体の読み込みは別の操作です。プロトコルのハンドシェイク、接続先へのアクセス、アプリからのリクエストは、それぞれ異なる段階で行われる場合があります。

設定手順:① 選択可能な方式とテスト対象を確認します。② 同じネットワーク、同じ方式で複数のサーバーをテストします。③ 続けて実際に使用する接続先へアクセスします。注意:異なる方式で得た数値をそのまま比較して順位付けしないでください。一度のタイムアウトで、すべてのリクエストが失敗すると判断することはできません。テストに成功しても、すべてのWebサイトにアクセスできるとは限りません。数値だけでなく、テスト方式と対象名も記録すると原因を調べやすくなります。

Today Widget:すばやい確認と操作

概要と画面の場所:Today Widgetはシステムのウィジェットに関する設定項目です。表示内容や操作方法は、現在のシステムとアプリで利用できる項目によって異なります。状態の確認や操作にすばやくアクセスするためのもので、独立したルーティング設定ではありません。

設定手順:① SettingsでToday Widgetの項目を確認します。② システムのウィジェット編集画面から利用可能なウィジェットを追加します。③ Homeに戻り、操作後の接続状態を確認します。注意:ウィジェットの表示更新はシステムのスケジュールに左右される場合があります。表示が同期しないときは、アプリ内の表示とシステムの接続状態を照合し、ボタンを連続して切り替えないでください。システムに該当するウィジェットがない場合、他の端末と同じ操作手順が使えるとは限りません。

iCloud:設定の同期と端末間の確認

概要と画面の場所:iCloud同期に対応する画面では、アプリが同期をサポートする項目を管理できます。同期対象は現在の設定項目の説明に従います。「同期が有効」でも、サーバー、統計、接続状態、すべてのシステム権限がそのまま複製されるとは限りません。

設定手順:① 端末でiCloudにサインインしていることと、関連する権限を確認します。② 現在の設定をバックアップします。③ アプリが対応する同期項目を有効にします。④ 別の端末でファイルの内容と現在の有効項目を確認します。注意:2台の端末で同じ設定を同時に編集しないでください。サブスクリプションURLや認証情報も機密情報です。同期の対象範囲を理解してから操作してください。同期はバックアップの代わりにはなりません。ファイル名が同じでも、2台の端末で同じ内容が有効とは限りません。

Diagnostics:再現可能な診断情報を記録

概要と画面の場所:SettingsでDiagnosticsを探し、実際に利用できる診断ツールで接続に関する情報を確認します。診断情報は問題の範囲を絞り込むためのもので、すべての設定を自動修復するスイッチではありません。

確認手順:① 問題が発生した時刻、ネットワークの種類、Global Routingを記録します。② 具体的な操作を1回だけ再現します。③ その時刻付近のエラーや結果を確認します。④ サーバー、DNS、ルールを個別に照合して原因を調べます。注意:外部に共有する前に、サブスクリプションの認証情報、パスワード、個人のアドレス、不要なアクセス記録を削除してください。エラー1件だけを根拠にすべての設定を変更せず、今回の失敗と同じ時刻・同じ接続先に関係する情報かを確認します。

設定後の確認手順

iPhone / iPad:接続条件からリクエスト結果まで段階的に確認します。複数の条件を同時に変更しないでください。

  1. 基本ネットワークを確認。まず端末が現在のネットワークを正常に利用できることを確認し、アプリに必要なシステム接続権限も確認します。基本ネットワークに問題がある場合、ルールを変更しても解決できないことがあります。
  2. サーバー情報を確認。SERVERで実際に選択されている項目、プロトコル、認証情報を確認します。サブスクリプションの更新後は特に再確認してください。情報が一覧に存在していても、現在選択されているとは限りません。
  3. Global Routingを確認。通常の振り分けではConfigを選びます。比較テストでは一時的にProxyまたはDirectへ切り替え、テスト後に元へ戻してください。結果を比較できるよう、モードとテスト対象を記録します。
  4. 設定とDNSを確認。有効なファイル、ルールの順序、ポリシー名、名前解決の設定を確認します。リクエストがどの段階で止まったかを特定してから、該当項目を変更してください。
  5. 自動接続と統計を確認。最後にOn Demandの条件を設定し、DataとDiagnosticsで状況を確認します。手動接続が安定するまでは、自動接続の条件を追加しないでください。

「スイッチはオンになるがインターネットに接続できない」「一部の接続先だけ失敗する」「サブスクリプションをインポートできない」「更新後に問題が起きた」場合は、トラブルシューティングマニュアルをご覧ください。初回設定には使い方ガイドを順に進めてください。英語の画面用語やルールキーワードを調べる場合は用語解説を参照し、名称だけで設定の役割を推測しないでください。