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

Shadowrocket 設定ガイド

まず Home でサーバーを確認し、Global Routing で Config を選択します。接続できることを確認してから、DNS と On Demand を設定してください。このページでは、よく使う機能について「概要・場所・設定方法・注意点」の順に説明します。一度にすべてを変更せず、項目ごとに確認できます。

通常の振り分け:Config サーバーの場所:Home 確認の順序:サーバー → ルール → DNS

Global Routing の3つのモード

Global Routing は、通信経路を選ぶ全体的な方式を決める機能で、サーバー設定の不足を補うものではありません。Home で Global Routing を開くと、Config、Proxy、Direct を選べます。日本語ではそれぞれ「設定」「プロキシ」「直接接続」にあたりますが、操作時は画面に表示される英語の項目名を選んでください。初めて使う場合は、必要な情報がそろった手持ちのサーバーを選び、その後に動作モードを決めます。モードを切り替えても、パスワードの誤り、無効なサブスクリプション、接続できないサーバーは解決しません。

通常は Config を選び、現在の設定ファイル内のルールに通信先を振り分けさせます。「一部のサイトは使えるが、ほかは使えない」場合は、一時的に Proxy と Direct を切り替えて比較できます。Proxy では選択中のサーバーでリクエストを処理できるか、Direct では現在のネットワークから接続先へ直接アクセスできるかを確認できます。切り替える項目は一度に1つにし、リクエストを再実行してください。確認後は Config に戻します。

画面上の項目通信の処理方法使用する場面注意点
Config(設定)現在の Config に設定されたルールに従い、PROXY、DIRECT、またはほかの定義済みポリシーを選択します。ドメイン、アドレス、地域に応じて通信を振り分ける通常の利用。実際に有効な設定ファイルと、そのルールの順序を確認してください。
Proxy(プロキシ)対象となる通信をプロキシ経由にします。サーバーへの接続を一時的に比較し、ルールの問題かサーバーの問題かを切り分けます。選択中のサーバーに依存します。クライアントに渡されていないシステムやアプリの通信は、この確認の対象外です。
Direct(直接接続)対象となる通信を直接接続にします。現在のネットワークから接続先に直接アクセスできるかを確認します。Direct はクライアントの接続スイッチをオフにすることでも、On Demand を停止することでもありません。

Global Routing の3つのモードの使い方を読む →

ルールによる振り分け:マッチ条件と実行ポリシー

ルールタイプは「何にマッチするか」を指定

Config で現在の設定ファイルを開き、ルールを確認します。DOMAIN は完全一致するドメイン、DOMAIN-SUFFIX はドメインの末尾とサブドメイン、DOMAIN-KEYWORD はドメインに含まれるキーワードにマッチします。IP-CIDR と IP-CIDR6 はアドレスの範囲、GEOIP はアドレスの地域に基づいてマッチします。

対象範囲を明確に指定できる条件を優先してください。DOMAIN-KEYWORD は意図しないドメインにもマッチする場合があります。USER-AGENT は該当するリクエスト情報を取得できる場合に限られるため、すべての暗号化通信に使える汎用的な判定条件ではありません。

ポリシーは「マッチした通信をどう処理するか」を指定

PROXY はプロキシ経由、DIRECT は直接接続、REJECT は該当するリクエストの拒否を表します。設定では独自のポリシー名が参照される場合もあります。参照先のポリシーが設定内に定義されている必要があるため、ルール末尾の文字だけを変更しても動作しません。

ルールは通常、記載順に照合されます。具体的な条件を広範な条件より前に置き、先行するルールにマッチしなかった場合の最終処理には FINAL を使います。問題を調べるときは、ファイル内にキーワードがあるかだけでなく、実際にどのルールにマッチしたかを確認してください。

Config でルールを編集・確認する

まず現在の設定ファイルを複製してから、ルールを1つだけ変更して保存します。Config に戻り、編集したファイルが有効になっていることを確認したうえで、Global Routing で Config を選択してください。以下はルールの記述例です。example.com は説明用のドメインであり、あらゆるアクセス要件を満たす設定全体ではありません。

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

1行目は例のドメインとそのサブドメインを PROXY に、2行目は該当地域のアドレスにマッチしたリクエストを DIRECT に振り分け、最後の行はそれ以外のリクエストを処理します。ドメインルールとアドレスルールでは判定基準が異なり、DNS の応答アドレスが後続のアドレスルールに影響する場合もあります。そのため、ネットワークを変えたときに同じサイトが別のルールにマッチしても、設定が保存されていないとは限りません。名前解決の結果と接続記録もあわせて確認してください。

ConfigGlobal RoutingPROXYDIRECT

Subscribe と Add Server

管理する項目はサーバー、サブスクリプション、設定ファイルの3種類です。サーバーには接続情報、サブスクリプションにはサーバー一覧の更新先、Config には通信振り分けルールを保存します。それぞれ用途が異なるため、サブスクリプションのアドレスをサーバーのドメイン欄に入力しないでください。

Subscribe:登録済みサブスクリプションを追加

Home で追加画面を開き、Subscribe に対応する種類を選択します。手持ちのサブスクリプションアドレスと識別しやすい名前を入力して保存し、更新を実行してください。追加後に Home に戻り、サーバー一覧に項目が表示されることを確認してから、いずれかを選んで Connectivity Test を実行します。

サブスクリプションの更新は、リモートの一覧を取得し直す操作であり、接続の問題を自動的に修復するものではありません。更新に失敗した場合は、アドレスが完全で有効か、現在のネットワークからアクセスできるかを確認してください。元のグループやメモが失われるおそれがあるため、何度も削除して作り直すのは避けましょう。

Add Server:サーバーを個別に登録

Add Server を開き、手持ちの情報に合うプロトコルを選んでから、アドレス、ポート、認証情報を入力します。Shadowsocks、VMess、VLESS、Trojan、WireGuard、Hysteria2 などは必要な項目が異なります。提供された情報に明記されている項目だけを、指定に従って入力してください。

TLS、通信方式、サーバー名などの項目は、相互に整合している必要があります。一般的に見える選択肢でも、自己判断で置き換えないでください。対応する種類は現在のクライアントに表示される一覧で確認します。入力後に保存し、Home に戻って登録した項目を選択してください。

サーバー単体の共有リンクは、クリップボードから読み込むか Scan QR Code で処理できます。ただし、内容がサーバーの共有情報か、サブスクリプションの更新先かを先に確認してください。アカウントページの URL、ログイン状態を含む Web ページのアドレス、不完全な QR コードのテキストを Subscribe に登録しないでください。

サブスクリプションの更新、複数登録の整理、並べ替え、バックアップのガイドを見る →

複数のプロトコルとサーバーの選び方

プロトコルはクライアントとサーバーの通信方式を示すもので、接続速度を保証するものではありません。HTTP、SOCKS5 なども、手持ちのサーバー情報に合わせて選びます。プロトコルが一致しない場合、アドレスとポートに接続できても、認証やデータ転送に失敗することがあります。サーバー一覧には用途、プロトコル、グループなどのメモを付け、テスト結果が似ているからといって設定も同じだと考えないようにしましょう。

Connectivity Test で確認できるのは、現在の Test Method による応答結果です。1回のタイムアウトだけではサーバーが無効とは判断できず、1回成功してもすべての接続先にアクセスできるとは限りません。同じサーバーでテストを繰り返し、実際に接続先のページを開いてから、ルールと DNS も確認してください。

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

On Demand は、システムのネットワーク条件に応じて接続を開始する機能であり、サーバーが利用可能かを調べるスイッチではありません。クライアント画面に表示される On Demand の項目で、条件と全体のオン/オフを確認してください。場所や対応する条件はプラットフォームによって異なるため、現在の画面に従います。有効にする前に手動で接続し、サーバー、Config、DNS が正常に動作することを確認してください。自動接続の問題と基本的な接続障害を混同せずに済みます。

  1. 手動接続時の状態と選択中のサーバーを記録し、実際にアクセスできることを一度確認します。
  2. On Demand を開き、登録済みの条件を確認します。画面にネットワークの種類や Wi-Fi の条件が表示される場合は、必要な条件を1つずつ設定してください。重複する条件を一度に複数追加しないようにします。
  3. 有効にしたら、確認したいネットワークに切り替えます。システムの接続状態を確認し、接続先のアプリを開き直してアクセスしてください。
  4. 接続を維持したくない場合は、先に On Demand を無効にしてから現在の接続を切断します。Home の接続スイッチだけをオフにすると、条件に応じて再接続されることがあります。

「切断してもすぐ再接続する」場合は、システムの接続設定を何度も削除する前に On Demand の条件を確認してください。ネットワークを切り替えても接続が始まらない場合は、条件に一致しているか、システムが接続の確立を許可しているか、保存済みのサーバーが引き続き使えるかを確認します。バックグラウンド動作の管理方法はシステムごとに異なるため、アプリを手動で開いたときの結果をバックグラウンドでの動作と同じと考えないでください。

Data:通信量の確認と接続状況の観察

Data ではクライアントが記録した通信量を確認し、リクエストが現在の接続を通ったか、操作の前後でデータが発生したかを調べられます。Data または現在のプラットフォームに対応する統計画面で、アップロード、ダウンロード、接続記録を確認してください。分類と集計範囲は画面の表示に従います。まず現在の数値を記録し、確認したい操作を1回だけ行ってから変化を確認すると、複数のアプリを同時に開くより状況を判断しやすくなります。

Data の統計はサービス提供元の課金記録でも、システム全体の通信量でもありません。バックグラウンドアプリ、再試行されたリクエスト、接続に伴う通信、集計範囲の違いなどにより数値が異なる場合があります。リモート側の使用量を確認する場合は、利用中のサービスにある使用量記録を参照してください。クライアントの累計値だけから推定することはできません。

統計をリセットする場合は、画面に表示されている集計期間を確認し、トラブルシューティングに必要な記録を保存してから操作してください。画面にリセット機能がある場合は、表示される案内に従います。リセットで確認できるのは端末上の新たな変化であり、リモート側の使用量はリセットされません。Data や接続記録を共有する前に、サーバーアドレス、サブスクリプションアドレス、認証情報、個人のアクセス内容が分かる情報を隠してください。

Settings の主な項目

Settings には動作の設定やシステム連携の項目があります。まず現在の正常な状態を保ち、一度に1項目だけ変更してください。変更後は同じサーバー、接続先、ネットワークで再テストします。DNS や接続に関する一部の設定は現在の Config で管理される場合もあります。設定ファイルと Settings を同時に変更せず、実際にどちらが設定元か確認してください。

DNS:ドメイン名の名前解決

概要:DNS はドメイン名を接続に必要なアドレスへ変換します。名前解決に失敗すると、サーバーには接続できても目的の Web サイトが開かない場合があります。

設定場所と方法:Settings の DNS 関連項目と現在の Config を確認してください。手動で指定した DNS サーバーがあるか、現在のネットワークからアクセスできるかを確認し、既存の設定要件に合わせて調整します。出どころや用途が分からないアドレスを複数追加しないでください。

注意点:DNS はどんな場合にも速度を上げるスイッチではありません。変更後はリクエストを再実行し、必要に応じて接続をやり直して古いキャッシュの影響を除きます。一部のドメインだけに問題がある場合は、ルールのマッチ状況、名前解決されたアドレス、接続先サービスの状態も確認してください。

Test Method:テスト方法

概要:Test Method は Connectivity Test で使う検査方法を決める項目であり、実際のブラウジング体験を直接示すものではありません。

設定場所と方法:Settings で Test Method を開き、現在のクライアントで選べる方法を指定します。テスト対象を設定できる場合は、アクセスできることを確認済みで、検査に適した対象を選んでください。Home に戻り、同じサーバーを再テストします。

注意点:テスト方法によって検査する段階が異なります。下位レベルの接続が確立しても、認証、DNS、接続先ページへのアクセスがすべて成功したとは限りません。サーバーを比較するときは方法とネットワーク条件をそろえ、異なる日時や対象で得た結果を混ぜないでください。

Today Widget:ショートカット

概要:Today Widget は、システムが対応する範囲で情報の確認や操作を行うショートカットを提供し、クライアントを開く手順を減らします。

設定場所と方法:現在の iPhone / iPad 版が Today Widget に対応している場合は、Settings で関連項目を確認します。その後、システムのウィジェット編集画面でクライアントが提供するウィジェットを追加してください。実行できる操作はウィジェットの表示内容で確認します。

注意点:ウィジェットの表示内容は更新が必要な場合があります。目的の項目が見つからない場合は、現在のシステムとクライアントがその種類のウィジェットに対応しているかを確認してください。別バージョンでの配置をそのまま当てはめないでください。ショートカットからシステムの接続許可を回避することもできません。

iCloud 同期:デバイス間の設定共有

概要:iCloud 同期は、対応デバイス間でクライアントに表示されるデータを同期する機能です。システム全体のバックアップとは異なります。

設定場所と方法:まずシステムで自分の iCloud アカウントにサインインし、必要なアクセスを許可していることを確認します。次に Settings で iCloud 同期の項目を確認してください。有効にする前にローカルの設定ファイルを複製し、同期対象を現在の画面の説明と照らし合わせます。

注意点:同じデータを2台のデバイスで同時に編集しないでください。1台で保存して同期を待ち、もう1台で内容を確認します。サブスクリプションの認証情報は機密情報です。バックアップや同期の前に、保存場所とアカウントへのアクセス権を確認してください。

Diagnostics とトラブルシューティングの手順

Diagnostics では接続や動作に関する情報を収集できます。Settings で Diagnostics、または現在のバージョンに対応する診断項目を探してください。問題が発生したネットワーク、選択中のサーバー、Global Routing のモード、実行した操作を記録してから、画面に表示されるツールで確認します。診断結果は実際のリクエストと照らし合わせてください。発生時刻や操作の状況が分からない記録だけでは、どの段階に問題があるか判断しにくくなります。

  1. まずサーバーを確認:Home で選択中の項目を確認し、アドレス、ポート、プロトコル、認証情報を照合してから Connectivity Test を実行します。サブスクリプションの追加に成功したことは一覧を取得できたという意味であり、すべてのサーバーに接続できることを示すものではありません。
  2. 次にモードを確認:同じ接続先に対して Proxy と Config を比較します。Proxy では使えて Config では使えない場合は、まずルールのマッチ状況と独自ポリシーの参照先を確認してください。どちらも使えない場合は、サーバーと名前解決を調べます。
  3. DNS を個別に確認:特定のドメインだけで失敗するか、名前解決エラーがないかを確認します。サーバー、DNS、ルールを同時に変更すると、どの変更で解決したか分からなくなります。
  4. 最後にシステムの条件を確認:接続の許可、On Demand の条件、ネットワーク切り替え時の動作を確認します。必要に応じて自動接続を無効にし、手動接続で再現性のある結果が得られる状態に戻してください。

Diagnostics で情報をエクスポートまたはコピーする前に、サブスクリプションの認証情報、サーバーの認証情報、個人のアクセス記録が含まれていないか確認してください。トラブルの調査に必要なのは通常、エラーの種類、操作の順序、関連する設定であり、機密情報を含むリンク全体ではありません。問題が解決したら、普段使う Config に戻し、一時的な変更を1つずつ元に戻してください。

接続スイッチがオンなのに、ページが開かないのはなぜですか?

スイッチをオンにすると、クライアントが接続の確立または維持を試みますが、接続先へのリクエスト成功を保証するものではありません。まずサーバーと Connectivity Test を確認し、同じ接続先で Proxy と Config を比較してから DNS を調べてください。特定のアプリだけで問題が起きる場合は、そのアプリを再起動して接続し直し、アプリ側のネットワーク状態も確認します。

ルールを変更したのに、Data では以前の経路が表示されるのはなぜですか?

まず Global Routing が Config になっていることと、編集した設定ファイルが選択されていることを確認してください。既存の接続は以前の経路を使い続ける場合があります。リクエストを再実行してから、新しい接続記録を確認してください。累計通信量の変化だけで、新しいルールにマッチしたかどうかを判断しないでください。

クライアントを入手すれば、使えるサーバーも自動的に追加されますか?

手持ちのサブスクリプションまたはサーバー情報をインポートする必要があります。クライアントの買い切り購入と通信サービスの契約は別です。iPhone / iPad 版は App Store で 2.99 米ドルの買い切り、Mac / Windows / Android / Linux 版は無料です。クライアントの入手と、利用中のサービスから提供された接続情報は別々に管理します。

初回接続の手順に沿って使い方を見る →