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

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

まずリクエストの処理方法を決めてから、ルール、接続、診断の設定を調整します。Global Routingは全体の処理方法、Configはルールの詳細、サーバー情報は実際の接続先を決定します。

ShadowrocketはAppleプラットフォーム向けの有料・クローズドソースアプリで、App Storeのみで配信されています。本ページでは主にiPhoneとiPadでの操作を説明します。システム要件はApp Storeの掲載内容をご確認ください。

01 · リクエストの処理方法

Global Routing:Config / Proxy / Direct

最初に全体の動作を選び、個々のリクエストを確認します。モードの選択と接続のオン・オフは分けて考えましょう。

機能と設定場所

Global Routingは、全体的なルーティング方式を選ぶ項目です。通常はHomeから開きます。本ページでは3つの代表的な方式を「Config」「Proxy」「Direct」と呼び、画面上の選択肢もConfig、Proxy、Directのまま表記します。ここを切り替えてもサーバーアドレスが入力されたり、無効な認証情報が有効になったりするわけではありません。設定するのは「リクエストをどう処理するか」であり、「接続情報をどこから取得するか」ではありません。

選択肢のConfigと画面下部のConfigタブは関連していますが、役割は異なります。前者は現在の設定に基づいて通信を処理する方式、後者は設定ファイルの管理・編集画面です。ルールファイルを保存しただけでは、そのファイルに従って現在の接続が振り分けられているとは限りません。選択中のファイルとGlobal Routingの状態を確認してください。

画面上の選択肢 処理方法 使用する場面 確認する項目
Config 現在の設定にあるルールとポリシーに従ってリクエストを処理します。 ドメインやアドレスなどの条件に応じて、日常的に通信を振り分ける場合。 現在の設定、ルールの順序、ポリシーの対象、最後のフォールバックルール。
Proxy 通信をプロキシ経由で処理します。実際の動作はアプリやシステムのネットワーク上の制約にも左右されます。 選択中のサーバーで対象のリクエストを処理できるか、一時的に確認する場合。 サーバーの稼働状況と、そのサーバーから対象サービスへの接続状況。
Direct 通信を直接接続で処理します。 ローカルネットワーク経由の経路と比較し、プロキシ経由の問題を切り分ける場合。 対象にローカルネットワークからアクセスできるか、DNSにカスタム設定が残っていないか。

切り替え方と比較方法

まずHomeで選択中のサーバーを確認し、Global Routingで必要な方式を選びます。比較時は同じ対象に同じ種類のリクエストを送り、必要に応じて接続を張り直して、既存接続の再利用による影響を避けてください。Proxyでは動作するのにConfigで問題が起きる場合は、次にルールの一致状況とポリシーの選択を確認します。どちらでも問題が起きる場合は、ルールを何度も変えるのではなく、サーバー情報、ローカルネットワーク、DNSを確認します。

Directは接続経路の比較に使えますが、ネットワーク関連の設定がすべて無効になるわけではありません。DNS、既存の接続、システムの動作が結果に影響することがあります。一時的なテストが終わったら、普段使う予定の方式に戻し、接続のオン・オフも確認してください。テスト時の状態を日常利用の設定として残さないようにしましょう。

02 · 条件とポリシー

ルールによる振り分け:一致条件を確認してから処理方法を決める

ルールの種類は「何に一致させるか」、ポリシーは「一致後にどう処理するか」を示します。

Configで現在の設定を確認

ルールによる振り分けでは、リクエストごとに異なる処理方法を指定できます。Configを開いて使用中のファイルを確認し、ルールとポリシーを見直してください。通常は上から順に照合され、最初に一致したルールで処理方法が決まります。そのため、範囲の広いルールを上に置きすぎると、後にある詳細なルールが適用されないことがあります。変更前に元の設定を保存し、問題の対象に関係するルールだけを少数移動または編集してください。

DOMAINは指定したドメインに一致します。DOMAIN-SUFFIXはドメインの末尾とそのサブドメインに一致します。DOMAIN-KEYWORDはドメイン内のキーワードで照合するため、想定より広い範囲に一致することがあります。IP-CIDRとIP-CIDR6はそれぞれアドレス範囲を指定します。GEOIPはIPアドレスの地域情報データベースに基づく判定であり、サービスの登録地や使用言語を示すものではありません。ドメインとアドレスの変換が関わる場合は、DNSの名前解決結果も考慮してください。

DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY

ここでは構文の読み方だけを示しており、完全な設定例ではありません。PROXYはプロキシ経由、DIRECTは直接接続、REJECTは拒否を表します。ルールが独自のポリシー名を参照している場合、そのポリシーが現在の設定に存在する必要があります。FINALはそれ以前の条件に一致しなかった場合のフォールバックです。配置場所と対象ポリシーの両方を確認してください。

一致条件の適用範囲に注意

USER-AGENTはリクエスト内で照合に利用できる情報に依存します。すべてのリクエストで同じ項目が確認できるとは限りません。ルール名だけを見て、必ず適用されると判断しないでください。想定と異なるリクエストがあった場合は、利用できる接続ログを確認し、対象ドメイン、アドレス、適用ポリシーを照合します。Global RoutingがConfigになっていることを確認してから、ルールの順序と参照関係を見直してください。ルールで選べるのは通信経路であり、対象サービス自体のエラーは解決できません。

リモートルールとサーバーの購読情報は別のものです。サーバー一覧を更新しても、ルールまで更新されるとは限りません。また、設定ファイルを切り替えるとポリシー名が変わることもあります。複数の設定の関係を整理する場合は、購読とサーバーの管理ガイドもご覧ください。変更をまとめて行う前に、情報の入手元と用途を明確に記録しておきましょう。

03 · 接続情報

SubscribeとAdd Server

Subscribeは登録済みのサーバー情報をまとめて管理する機能、手動追加は各項目を個別に確認する方法です。

Subscribe:登録済みの購読情報を読み込む

Homeの追加メニューからAdd Serverを開き、Subscribeを選択して、自分がすでに持っている購読URLを貼り付けます。保存後に更新し、サーバー項目が作成されたことを確認してから、使用する項目を選んでください。購読URLと個別サーバーの共有URLは別の形式です。読み込みに問題がある場合は、内容に合った入力画面を選んでいるか、URLが欠けていないかを先に確認します。

購読が複数ある場合は、用途が分かる名前を付け、並び順だけで選ばないようにします。更新時にはサーバーから返された内容に基づいて項目が変更されるため、手動で変更した名前やパラメーターが次回の更新で上書きされることがあります。更新前に選択中の項目を記録し、更新後に選び直してください。「更新完了」は、すべてのサーバーに正常に接続できる証明ではありません。

Add Server:項目を手動で確認

個別のサーバー情報がある場合は、Add Serverで該当するTypeを選び、アドレス、ポート、プロトコルに必要な認証情報を入力します。Shadowsocks、VMess、VLESS、Trojan、WireGuard、Hysteria2などでは、必要なパラメーターが異なります。Typeだけを変更して前回の内容を使い回さず、手元の情報に合わせて項目ごとに入力してください。

TLS、サーバー名、トランスポートに関する情報がある場合は、サーバー側の設定と一致させます。保存できても、項目が端末に登録されたことを示すだけで、認証や接続が成功したとは限りません。まずConnectivity Testを実行し、その後、対象に実際にアクセスして確認します。問題が起きた場合に比較できるよう、元の情報を保管し、複数の項目を同時に変更しないでください。

QRコード、クリップボード、複数の購読情報を整理する

Scan QR Codeやクリップボードから読み込む前に、内容が自分のサーバー情報であることを確認してください。読み込み後はプロトコル、アドレス、ポート、メモを確認します。QRコードの読み取りに成功しても、必要な情報がすべて含まれているとは限りません。購読URL、共有情報、設定のバックアップには認証情報が含まれることがあります。公開用のスクリーンショットや診断内容に載せず、問題を説明する際は必要な項目名だけを残してください。

購読情報が複数ある場合は、用途ごとに整理してからテストし、並び順を調整します。購読を削除する前に、関連するどの項目に影響するかを確認し、残したい個人設定を保存してください。購読の更新とApp Storeでのアプリ更新は役割が異なります。前者はサーバー情報を変更し、後者はクライアントを更新するため、互いに置き換えることはできません。

04 · 条件に応じた接続

On Demand:必要に応じた接続

再現可能な手動接続を先に確立してから、自動接続の条件を設定します。

機能と設定方法

On Demandは、設定した条件に応じてVPN接続を開始する機能です。接続をいつ確立するかを決めるものであり、接続後のリクエスト処理はGlobal RoutingとConfigが担当します。SettingsからOn Demand関連の設定を探してください。利用できる条件は現在のアプリ画面で確認します。どのネットワーク環境で接続したいかを決めてから該当する条件を有効にし、自動接続のためにすべての項目を一度にオンにするのは避けましょう。

設定前にサーバーを手動で選び、Global Routingを決め、実際にアクセスできることを確認します。その後On Demandを設定し、Wi-Fiやモバイル通信を切り替えた際に、システムとアプリの接続状態が想定どおりかを確認してください。テスト時のネットワーク環境も記録し、サーバーの一時的な停止を接続条件の不具合と誤認しないようにします。

切断後の自動動作に注意

On Demandを有効にすると、手動で切断しても接続が切れたままになるとは限りません。条件を再び満たすと、システムが接続を開始することがあります。「切断後にまた接続する」場合は、設定を何度も削除するのではなく、まずOn Demandを確認してください。自動接続を一時停止するには、該当する条件をオフにしてから、ネットワークを一度切り替えて動作を確かめます。

On DemandはすべてのWebサイトへのアクセス可否を判定する機能ではなく、サーバーの稼働を保証するものでもありません。システムのスケジュール、ネットワーク環境、有効な設定に影響されます。ルールやサーバーを調整する際は、自動再接続が比較の妨げにならないよう一時的に自動接続を停止してください。確認後、元の条件に戻します。

05 · 通信量の確認

Data:通信量の統計

統計はアプリが記録する範囲の通信量を確認するためのもので、外部サービスの課金基準ではありません。

確認場所と数値の見方

Dataを開いて、現在の画面に表示される通信量を確認します。まず集計対象、期間、リセット状態を把握してから数値を比較してください。統計項目によって集計方法が異なる場合があり、1回の接続、特定のサーバー、端末全体の通信量を同じものとして扱うことはできません。システム通信、転送時のオーバーヘッド、外部サービスの計測方法によって差が生じることもあります。

特定の操作で通信が発生したか確認する場合は、開始時の状態を記録し、内容が明確なアクセスを一度行ってからDataに戻り、数値の変化を確認します。テスト中はほかのアプリのバックグラウンド通信をできるだけ減らしてください。累計通信量は速度テストの結果ではありません。数値が増えたことから分かるのは、集計対象の範囲で通信があったことだけです。通信速度、応答品質、すべてのリクエストが想定どおりに振り分けられたかは判断できません。

リセットとトラブル確認時の注意

画面にリセット機能がある場合は、比較に必要な記録を保存してから実行してください。統計を消去してもネットワークの問題は解決しません。通信量が増えているのに対象ページを開けない場合は、リクエストに適切なポリシーが適用されているか、DNSが正常に応答しているか、サーバーから対象にアクセスできるかを確認します。反対に、統計に目立った変化がなくても、集計範囲や既存のキャッシュが原因の場合があります。それだけを根拠に接続失敗と判断しないでください。

06 · よく使う設定項目

Settings:名前解決、テスト、診断

各項目は用途に合わせて調整してください。設定場所と利用可能な項目は、現在のアプリ画面で確認します。

DNS:名前解決の経路を確認

DNSはドメイン名をアドレスに変換します。SettingsでDNS関連の項目を確認するとともに、現在のConfigに別のDNS設定がないかも確認してください。一方だけを変更して、もう一方の影響を見落とさないようにします。まずは正常に動作している設定を維持し、名前解決の失敗、返されるアドレスの異常、または指定した解決経路が必要なことを確認できた場合にのみ変更します。

カスタムDNSやDNS over HTTPSを利用するには、接続可能な名前解決サービスが必要です。すべてのネットワークでシステムDNSより適しているとは限りません。変更時は一度に一つの要素だけを変え、接続を張り直して同じ対象にアクセスし、名前解決の記録を見て改善したか判断します。DoHを使っても、すべてのリクエストが自動的にプロキシ経由になるわけではありません。名前解決の経路と対象への接続経路は分けて確認してください。

Test Method:テスト条件をそろえる

SettingsでTest Methodを探し、現在の画面で選べる方法から、利用中のネットワークに適したものを選びます。その後Homeに戻り、Connectivity Testを実行してください。テスト方法によって確認する段階が異なるため、計測時間を方法をまたいで直接比較することはできません。接続先を指定するテストでは、先にその対象自体へアクセスできることを確認してから、サーバー間の差を見ます。

テストに成功しても、すべてのサービスへアクセスできるとは限りません。タイムアウトしたからといって、接続全体が使えないとも限りません。複数のサーバーを比較する際は、方法、対象、ローカルネットワークをそろえ、実際のリクエスト結果も合わせて判断してください。表示順はその時点のテスト結果によるもので、長期的な品質を示すものではありません。

Today Widget:ショートカットと状態の確認

Today Widgetの項目では、システムが提供する情報確認や操作のショートカットを設定できます。Settingsでアプリが対応する項目を確認し、システム上で利用可能な場所に追加してください。表示形式はシステム環境によって異なります。すべてのデバイスで同じレイアウトが使えるとは限らないため、実際の表示を確認しましょう。

ショートカットを使うとアプリを開く手順を減らせますが、設定後はHomeに戻り、サーバー、Global Routing、接続状態を確認してください。ショートカットの表示とアプリ内の状態が一時的に異なる場合は、サーバーの項目を変更する前にアプリを開いて状態を再確認します。接続が確立したかどうかと、対象へのリクエストが正常かどうかは別々に確認してください。

iCloud:同期範囲と復元手順

SettingsでiCloud関連の同期やバックアップ項目を確認し、現在の画面に記載された同期対象を読んでから有効にするか決めます。設定の同期は購入履歴の復元とは別です。アプリの入手や購入済みアイテムの復元はApp Storeで行います。別のデバイスでは、システム権限や接続状態まで設定ファイルと一緒に完全に引き継がれるとは限りません。

有効にする前に、端末内にある設定を保存してください。特に、2台の端末それぞれで設定を変更している場合は注意が必要です。復元後は購読、サーバーの選択、現在のConfigを一つずつ確認し、接続を手動でテストしてください。購読URLや認証情報を含む内容は機密情報として扱います。同期の利便性だけでなく、バックアップの対象と内容も確認しましょう。

Diagnostics:問題発生時の情報を確認

Diagnosticsでは、現在のアプリで利用できる診断項目を確認または実行できます。Settingsから該当する項目を探してください。開始前に、購読の更新、接続の確立、ドメインの名前解決、特定のリクエストのどの段階で問題が起きるかを整理します。ネットワーク、モード、操作手順を記録してから、症状に関係するチェックを実行してください。

設定は一度に一つだけ変更し、同じ操作を再現して結果を比較します。診断データにはアドレス、ドメイン、リクエスト情報、認証に関する内容が含まれることがあります。共有する前に内容を確認し、機密部分を隠してください。診断ツールが示すのは手がかりであり、自動修復を保証するものではありません。端末の設定が手元の情報と一致していても、サーバー側の状態や対象サービスが利用可能かどうかを引き続き確認する必要があります。

07 · 実際の確認手順

接続情報からルールの一致まで

確認する層を分け、複数の条件を同時に変更して原因が分からなくなるのを防ぎます。

  1. 接続情報を確認する。Subscribeの更新結果を確認するか、Add Serverでプロトコル、アドレス、ポート、認証情報を一つずつ照合します。比較用に元の情報を保存してください。
  2. 現在の選択を確認する。Homeで実際に選択されているサーバーとGlobal Routingを確認します。前回の状態を記憶に頼って判断したり、一覧の先頭が選択中だと思い込んだりしないでください。
  3. 接続を確認してから振り分けを確認する。Connectivity Testと実際のリクエストを使って接続状況を判断します。Configを使用する場合は、設定ファイル、ポリシーの参照先、ルールの順序も確認してください。
  4. DNSと対象へのアクセスを個別に確認する。名前解決の成功と接続の成功は別の段階です。DNSが原因だと分かる場合に限って設定を変更し、DNSの変更でほかの問題を覆い隠さないようにします。
  5. 最後に自動化を戻す。手動で状態を確認した後にOn Demand、同期、ショートカットを有効にし、ネットワークを切り替えた後の実際の動作を確認してください。

最初にアプリを開くところから操作を確認したい場合ははじめにをご覧ください。複数の購読や設定ファイルを整理する場合は購読ガイドをご覧ください。購入やデバイスの互換性についてはApp Store正規版の確認ページで、デベロッパーのShadow Launch Technology Limited、公式アイコン、アプリID 932747118をご確認ください。価格、システム要件、ユニバーサル購入の詳細はApp Storeの掲載内容をご確認ください。

ShadowrocketをApp Storeでダウンロード