公式ガイド・機能と設定
Shadowrocket の接続モード
まずGlobal Routingを選び、次にConfigとサーバーを確認します。接続のオン・オフ、リクエストに適用するポリシー、実際にアクセスできるかは、それぞれ個別に確認してください。
モード選択
ルール照合
設定の確認
以下ではiPhone / iPadの一般的な画面を例に説明します。項目の場所や利用できる設定はプラットフォームによって異なるため、実際のアプリ画面で確認してください。ShadowrocketはiPhone / iPad、Mac(Appleシリコン・Intel)、Windows、Android、Linux向けに提供されています。入手先は全プラットフォームのダウンロード をご覧ください。
アプリの買い切り価格とサーバーの利用料金は別です。 iPhone / iPad版はApp Storeで$2.99の買い切りです。Mac / Windows / Android / Linux版は無料です。サブスクリプションやサーバー情報はご利用のサービス提供元から入手してください。当サイトではサーバーやサブスクリプションの提供・販売・推奨は行っていません。
Global Routing
ルールによる振り分け
サブスクリプションとサーバー
On Demand
Data
Settings
確認の手順
モード選択
Global Routingの3つのモード
Config、Proxy、Directはそれぞれ設定、プロキシ、直接接続に相当します。モードによってリクエストの経路が決まりますが、接続のオン・オフとは別の設定です。
概要: Global Routingは、全体のルーティング方法を選ぶ項目です。HomeでGlobal Routingを開き、現在選択されている項目を確認します。初めて設定する場合は、まず既存のサーバーを追加して利用できることを確かめてから、普段使うモードを選びましょう。複数の設定を同時に変えると原因を特定しにくくなるため、サーバー、DNS、Configを一度に変更しないでください。
モードの選び方と元に戻す方法
利用できるルール設定がすでにある場合は、通常Configから始めます。Configで特定の接続先にアクセスできず、同じサーバーを選んだProxyではアクセスできる場合は、ルールとポリシーを確認しましょう。すぐにサブスクリプションを再追加する必要はありません。Directでも本来直接接続できる接続先にアクセスできない場合は、Wi-Fi、モバイル通信、接続先サービスの状態を確認してください。条件は一度に一つだけ変更し、比較結果を記録します。テスト後は、普段使うモードに戻してください。
注意点: Directを選んでも接続がオフになるわけではなく、Proxyを選んでも接続先へのアクセスが保証されるわけではありません。システム上は接続中と表示される場合があります。リクエストの経路は、システムのステータスアイコンだけで判断せず、リクエストログも確認してください。また、すでに確立した接続と新しいリクエストを区別し、モードを切り替えた後にアクセスし直して確認しましょう。
照合条件と適用ポリシー
Configとルールによる振り分け
ルールタイプは「何に一致するか」、ポリシーは「一致した通信をどう処理するか」を示します。両者は置き換えられません。
ルールタイプの違い
Configで現在のRuleの内容を確認します。DOMAINはドメインの完全一致、DOMAIN-SUFFIXはドメインのサフィックス、DOMAIN-KEYWORDはドメイン内のキーワードに使用します。IP-CIDRとIP-CIDR6はアドレス範囲を指定し、GEOIPはIPアドレスに対応する地域データに基づいて照合します。結果はデータや名前解決の状況に左右されるため、Webサイトの所在地を保証するものではありません。
USER-AGENTで照合できるかどうかは、リクエストに確認可能な情報が含まれているかによります。すべての接続で取得できるとは限りません。ルールを追加する前に、対象リクエストで実際に使われるドメインやアドレスを確認し、画面に表示された名前をリクエストのドメインと混同しないようにしてください。
ポリシーの違い
DIRECTは直接接続、REJECTは拒否、PROXYは該当するプロキシポリシーで処理することを示します。Configで独自のポリシー名を参照する場合もあります。ルール内の名前がConfigで定義されたポリシーと一致していることを確認してください。ルールの末尾に名前を書き加えただけでは、利用可能なサーバーやポリシーは作成されません。
誤ったルールに一致した場合は、まずどのルールが適用されたかを確認し、照合条件とポリシーのどちらを変更するか判断します。対象がREJECTに一致している場合、サーバーを変更しても結果は変わりません。ルールが参照するポリシーを利用できない場合は、そのポリシーのメンバーと選択状態を確認してください。
ルールの順序と確認方法
以下はルール構文の例であり、完全なConfigではありません。サーバー情報も含まれていません。example.comはサフィックス照合の説明用です。実際のConfigでは、処理したい接続先を指定してください。
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
ルールは通常、記載順に照合され、最初に一致したルールのポリシーが適用されます。範囲の狭いルールを、より広い範囲を対象とするルールより前に置いてください。前のルールに一致しない場合の最終処理にはFINALを使います。編集前に、現在利用できるConfigのコピーを保存してください。新しいConfigを有効にしたことをConfigで確認し、Global RoutingをConfigに設定してから接続先に再アクセスします。リクエストログで一致したルールとポリシーを確認してください。
注意点: リモートConfigの更新によって、ローカルの変更が上書きされることがあります。カスタム設定を長期的に保持する場合は、アプリが提供するConfig管理機能に応じて別途管理してください。保存できたことは、内容が書き込まれたことを示すだけです。ルールが選択されたことや、対象リクエストに必ず適用されることを意味しません。
接続情報の管理
サブスクリプションとサーバーの管理
Subscribeではサーバー一覧の更新元を管理し、Add Serverでは個別の接続情報を管理します。Configはルールや関連設定を管理します。
インポートと手動追加
概要と場所: Homeで登録済みのサーバーとグループを確認し、追加画面からAdd Serverを開きます。サブスクリプションURLがある場合は、アプリが対応するSubscribeの項目を使います。個別のサーバー情報がある場合は、対応するプロトコルを選んで入力してください。Scan QR CodeでQRコードを読み込む場合も、スキャン前に情報の提供元がご利用のサービス提供元であることを確認します。
設定方法: サブスクリプションURLはご利用のサービス提供元から入手してください。パス、クエリパラメーター、大文字・小文字を変えずに保ち、貼り付けた前後に空白や改行が混入していないか確認します。手動で追加する場合は、まずプロトコルを選び、サーバーアドレス、ポート、プロトコルごとに必要な認証、トランスポート、TLSのパラメーターを入力してください。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは必要な項目が異なります。別のプロトコルの設定方法をそのまま当てはめないでください。
インポート後、まずHomeにサーバーが表示されていることを確認します。サーバーを一つ選び、Connectivity Testを実行してから実際にアクセスしてみてください。サブスクリプションのインポート成功は一覧を取得できたことを示すだけで、すべてのサーバーが利用できるとは限りません。Connectivity Testに結果が表示されても、すべてのWebサイトにアクセスできるとは限りません。それぞれ別に確認してください。
更新・名前変更・削除
サブスクリプションの内容が変わった場合は、該当するサブスクリプションを更新し、サーバー数、グループ、選択中の項目が変わったか確認します。更新に失敗した場合は、まずローカルネットワークからサブスクリプションURLにアクセスできるかを確認し、URLが有効か、アプリが認識できる形式の内容が返されているかを調べてください。エラーページ、ログインページ、通常のWebページはサーバーサブスクリプションとしてインポートできません。
注意点: まとめて削除する前に、サブスクリプションから作成された項目と手動で追加した項目を区別してください。更新によってサブスクリプション管理下の項目が再生成される場合があるため、自動生成された項目への一時的な変更に頼らないようにしましょう。サブスクリプションURLにはアクセス用の認証情報が含まれていることがあります。スクリーンショット、ログ、問い合わせ内容ではURL全体と認証情報を隠してください。公開コメントや不要な確認ツールに貼り付けないでください。
サブスクリプションの追加と初回接続の手順を見る →
接続のトリガー条件
On Demandによるオンデマンド接続
On Demandは接続を開始するタイミングを制御します。接続後の通信を振り分けるのは、Global Routingとルールです。
概要と場所: On Demandでは、設定した条件に応じて接続を開始します。SettingsでOn Demandまたはオンデマンド接続に関する項目を探し、条件とスイッチの状態を確認してください。利用できる条件はプラットフォームによって異なります。別の端末に表示される設定が、この端末でも必ず使えるとは限りません。
設定方法: まず自動接続による影響を避け、手動で接続してサーバー、DNS、ルールが正常に動作することを確認します。その後、オンデマンド接続の条件を設定してください。Wi-Fi、モバイル通信、特定のネットワークに関する条件が表示される場合は、どの状況で接続し、どの状況では接続しないかを一つずつ確認します。保存後、確認しやすい環境でネットワークを一度切り替え、接続が想定どおりか、対象リクエストにどのポリシーが使われるかを確かめてください。
注意点: On Demandはサーバーの障害を直す機能ではありません。手動接続に失敗する状態で有効にすると、同じ問題が繰り返されるだけです。接続をオフにした後に自動で再接続する場合は、オンデマンド条件とシステム側の関連設定を確認し、すぐにConfigを削除しないでください。トラブル対処中は元の条件を記録して自動接続を一時停止し、確認後に設定を戻します。これにより、想定どおりの自動接続を異常と誤認せずに済みます。
通信量の確認
Dataの通信量統計
統計はアプリが記録した通信状況を確認するためのものです。サービス提供元の使用量や通信事業者の請求額の代わりにはなりません。
概要と場所: Dataを開いて、アプリが提供する通信量統計を確認します。まず画面に表示された集計対象と期間を読み、アップロード、ダウンロード、その他の項目を比較してください。プラットフォームによって別の場所に表示される場合は、実際の画面にある項目名と説明に従ってください。
使い方: 特定の操作で通信が発生したかを調べる場合は、現在の数値を記録し、目的の操作を一度だけ行ってからDataに戻り、変化を確認します。継続して確認する前に、接続を切り替えてもカウントが保持されるか、リセットできるか、リセットによってどの記録が消えるかを確認してください。集計範囲の異なる数値を単純に引き算して、特定アプリの正確な使用量と判断しないでください。
注意点: プロトコルのオーバーヘッド、再送、集計方法、請求期間などによって数値に差が生じます。Dataの数値が増えても、アプリが通信を記録したことを示すだけで、特定のWebページへのリクエストが指定したサーバーを経由した証拠にはなりません。通信の振り分けを確認するには、リクエストとポリシーを確認してください。バックグラウンド通信が気になる場合は、システムのアプリ別通信量やバッテリー使用状況と照らし合わせます。
主な設定項目の説明
Settingsの主な設定
正常に接続できる基本設定を保ちます。以下の各項目は個別に変更し、同じ接続先で結果を確認してください。
DNS
概要と場所: DNSはドメイン名をアドレスに変換します。関連設定はSettingsまたは現在のConfig内にある場合があります。まず使用中のConfigを確認し、DNSが定義されているかを調べてください。グローバル設定だけを変更して、Config内の設定を見落とさないようにしましょう。
設定方法と注意点: 現在正常に動作している名前解決方法を基準にし、明確な必要がある場合に限り、カスタムDNSやDNS over HTTPSに切り替えます。設定後は同じドメインに再度リクエストし、名前解決の結果、アクセス結果、ログを比較してください。DNS over HTTPSの接続先にもアクセスできる必要があります。誤ったルールや認証情報、利用できないサーバーを自動で修正するものではありません。詳しくはDNS設定の解説 をご覧ください。
Test Method
概要と場所: SettingsのTest Methodでは接続テストの方法を選択します。方法によって確認する段階が異なるため、結果は選択した方法とあわせて読み、単独の数値だけで比較しないでください。
設定方法と注意点: サーバーを比較する際は、Test Method、テスト先、ローカルネットワークを同じ条件にしてからConnectivity Testを実行してください。ポートに接続できても、プロキシ経由のリクエスト全体が成功するとは限りません。テスト先にアクセスできても、他の接続先へのアクセスが保証されるわけではありません。テスト結果と実際の利用状況が異なる場合は、まずテスト方法と接続先を確認し、実際のリクエストログを調べてください。それだけを理由に、すべての設定を頻繁に変更しないようにしましょう。
Today Widget
概要と場所: Today Widgetは、対応プラットフォームで利用できる情報確認や操作のショートカットです。Settingsで関連設定を探し、システムのウィジェット管理画面から追加できるか確認してください。表示方法はシステムのバージョンによって異なる場合があります。
設定方法と注意点: まずアプリ内でサーバーを選択し、接続できることを確認してから、ウィジェットで利用できる項目を設定します。追加後にショートカットを一度試し、アプリに戻って現在の状態を確認してください。ウィジェットの表示には更新間隔がある場合があるため、表示がすぐに変わらないことだけで接続失敗と判断しないでください。ウィジェットが見つからない場合は、使用中のシステムとアプリがその機能に対応しているかを確認します。
iCloud同期
概要と場所: iCloud関連の設定では、アプリが対応するデータの同期やバックアップ機能を扱います。Settingsで詳細を確認し、システムのiCloud権限、アカウント、利用可能なストレージも確認してください。同期対象はアプリに明記された項目に限られます。すべてのデータが移行されると決めつけないでください。
設定方法と注意点: 初めて有効にする前に、端末内の利用可能なConfigを保存してください。まず一方の端末でアップロードまたは同期を行い、もう一方で内容を確認します。データが競合した場合は、どちらを残すかを見極めてから操作し、連続して上書きしないようにしてください。同期は継続的に保持される独立したバックアップではなく、削除も同期先に反映される場合があります。サーバーの認証情報やサブスクリプションURLは機密情報として扱ってください。
Diagnostics
概要と場所: Diagnosticsでは、接続やリクエストの問題を調べるための情報を確認できます。Settings内の該当項目を開き、ツールが実際に確認している対象と出力内容を確認してください。個別の診断結果をネットワーク全体の結論として解釈しないでください。
使い方: 問題が起きた接続先、現在のGlobal Routing、選択中のサーバー、ネットワークの種類を記録してから、もう一度同じ操作を行います。ドメインの名前解決、接続のタイムアウト、認証、ポリシー選択のどこで問題が起きたかを確認し、該当する箇所だけを調整してください。同じ問題が複数のネットワークで起きる場合も、それぞれ分けて記録し、同じ診断にまとめないようにします。
注意点: ログをエクスポートまたは共有する前に、サーバーアドレス、サブスクリプションURL、認証情報、個人のアクセス履歴が含まれていないか確認し、必要最小限の範囲だけ共有してください。症状に応じた詳しい確認方法はトラブル対処ガイド をご覧ください。問い合わせのためにConfig全体を公開する必要はありません。
設定後の確認
順番にConfigを確認
「サーバーが利用できるか」「モードが正しいか」「ルールが一致しているか」を分けて確認すると、設定を何度も変更せずに済みます。
入力を確認。 Homeでサーバーまたはサブスクリプションが追加されていること、プロトコルの項目が揃っていることを確認します。表示名だけで正しく追加されたと判断しないでください。
接続を確認。 同じTest MethodでConnectivity Testを実行し、続けて実際のリクエストを試します。テストに失敗した場合は、サーバー、ローカルネットワーク、認証情報のどこに問題があるかを確認してください。
モードを確認。 Global Routingで、今回確認するモードとしてConfig、Proxy、Directのどれが選ばれているかを確認します。テスト後に一時的なモード選択を戻し忘れないようにしてください。
Configを確認。 Configを使う場合は、正しいConfigが有効になっていることを確認し、ルールの順序、ポリシーの参照先、最終処理を調べます。
自動動作を確認。 最後にOn Demandなどの自動接続設定を元に戻し、ネットワークを切り替えて再確認します。自動接続と通信の振り分けが想定どおりかを確かめてください。
変更後に問題が発生した場合は、まず直前の正常な設定に戻し、変更する条件を一つに絞って再確認します。インポートから始める場合は初回設定ガイド をご覧ください。接続はできるものの特定の接続先で失敗する場合は、症状別のトラブル対処ガイド から確認してください。アプリのダウンロードやインストールに関する問題は全プラットフォームのダウンロード で案内しています。ルールの変更で解決する必要はありません。