Shadowrocket
機能と基本設定
Global RoutingからSettingsまで、「通信の処理方法を決めてから、接続と診断を確認する」順に、各機能の役割、画面上の場所、設定方法、注意点を解説します。
- ルーティングモード Config / Proxy / Direct
- ルールのポリシー PROXY / DIRECT / REJECT
- トラブル時の確認 Connectivity Test
ShadowrocketにはiPhone、iPad、Mac(Appleシリコン・Intel)、Windows、Android、Linux版があります。以下では、iPhone / iPad版の英語表示を画面上の項目を探す手がかりとして使います。他のプラットフォームでは項目の場所やシステム権限が異なる場合があるため、実際のアプリ画面を確認してください。特定のプラットフォームのメニュー手順を、すべての端末に当てはめないでください。
始める前に、すでにお持ちのサブスクリプションまたはサーバー情報を用意し、現在選択中の構成を確認してください。アプリをまだ入手していない場合は、先に全プラットフォームのダウンロードガイドをご覧ください。初回接続の一連の手順は使い方ガイドで説明しています。このページでは各設定の関係を解説しており、すべての初期値を変更する必要はありません。
01 / GLOBAL ROUTING
Global Routing:Config、Proxy、Direct
概要:Global Routingでは、クライアントが処理するリクエストの扱いを決めます。画面上のConfig、Proxy、Directは、それぞれ構成に従う、プロキシ経由、直接接続の3つのモードです。サーバーが3台あるという意味でも、接続品質の段階を示すものでもありません。モードを選択した後も、接続スイッチ、サーバー、システムの許可設定を確認してください。
場所と設定方法:HomeでGlobal Routingを開き、用途に応じてモードを選択します。ルールを設定済みで、ドメインやアドレスごとに通信を振り分けたい場合はConfigを選びます。問題がルールに関係するか確認するときは、一時的にProxyまたはDirectへ切り替え、同じ宛先でテストを繰り返して結果を記録します。
| 画面の項目 | 通信の処理方法 | 使用する場面 | 確認するポイント |
|---|---|---|---|
| Config · 構成 | 現在の構成にあるルールとポリシーに従ってリクエストを処理します。 | 宛先ごとに異なる経路を使い分ける、通常の利用時。 | 現在の構成、ルールの順序、ポリシーの割り当て。 |
| Proxy · プロキシ | クライアントが処理するリクエストを、プロキシ経由で処理します。 | ルール分岐の影響を一時的に除外し、サーバー経由の通信を確認するとき。 | デフォルトサーバーが選択されているか、利用可能か。 |
| Direct · 直接接続 | クライアントが処理するリクエストを、直接接続で処理します。 | 現在のネットワークから同じ宛先へ直接アクセスできるか確認するとき。 | ローカルネットワーク、DNS、宛先自体の状態。 |
注意点:Proxyを選んでも、システム上のすべての通信が必ず同じ経路を通るとは限りません。実際の範囲はシステムと通信の取り込み設定にも左右されます。Directも接続スイッチをオフにする操作ではありません。トラブルシューティング後は元のモードに戻してください。構成ファイルを変更していなくても、通信の処理結果が変わる場合があります。Proxyでは正常でConfigでは問題が起きる場合、サーバーを再インポートする前に、まずどのルールが適用されているか確認してください。
02 / CONFIG
ルール分岐:マッチ条件と処理ポリシー
概要:ルールは通常、マッチタイプ、マッチ対象、ポリシーで構成されます。DOMAINはドメインの完全一致、DOMAIN-SUFFIXはドメインとサブドメイン、DOMAIN-KEYWORDはドメイン内のキーワードに使用します。IP-CIDRとIP-CIDR6はそれぞれIPv4、IPv6のネットワーク範囲を表し、GEOIPはIPアドレスの地域データベースに基づいて判定します。USER-AGENTは取得可能なリクエスト情報に依存するため、すべてのアプリ通信に適用できる汎用条件ではありません。
場所と設定方法:Configを開き、使用中の構成を確認してからルールとポリシーを確認します。ルールは通常、上から順に評価されるため、具体的な条件を広い条件より前に置き、最後に未一致のリクエストを処理するFINALを設定します。PROXYはプロキシポリシー経由、DIRECTは直接接続、REJECTは拒否を意味します。構成で名前付きポリシーを参照している場合は、その名前に実際にどの対象が割り当てられているかも確認してください。
DOMAIN-SUFFIX,example.com,PROXY
DOMAIN-KEYWORD,example,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
上記はルールの書式を読むための例です。example.comは説明用のドメインであり、そのまま完全な構成として読み込むものではありません。最初のルールに一致したドメインは、後続のキーワードルールに頼る必要はありません。末尾のFINALは、前のルールに一致しなかったリクエストを処理します。「何に一致するか」と「どのように処理するか」を分けて読むと、行末のPROXYだけを見るより問題を特定しやすくなります。
注意点:ルールを変更しても、利用できないサーバーが復旧するわけではありません。一度に変更するのは1か所だけにし、保存後もその構成が引き続き選択されていることを確認してから、リクエストを再送して結果を確認してください。IP関連のルールでは、ドメインの名前解決結果、IPv6、データベースの差異も考慮します。地理情報を使うルールだけで、すべてのリクエストの実際の経路を判断しないでください。
03 / HOME · SUBSCRIBE
サブスクリプションとサーバーの管理
概要:サーバー項目には、接続に必要なプロトコルとパラメーターが保存されます。Subscribeは、すでにお持ちのサブスクリプションURLからサーバー一覧を更新する機能です。サブスクリプションとConfigは別の項目です。サーバー一覧を読み込んでも、ルール構成が切り替わったり、デフォルトサーバーが選択されたりするわけではありません。
場所と設定方法:Homeの追加メニューを使います。既存のサブスクリプションを読み込む場合は、タイプにSubscribeを選び、URL全体を貼り付けます。識別しやすいメモを入力して保存し、更新を実行してください。手動で入力する場合は、Add Serverから、すでにお持ちのサービス情報に明記されたプロトコルを選択し、アドレス、ポート、認証情報を順に入力します。Scan QR Codeは、有効なQRコードをすでにお持ちの場合に利用できます。
Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard、Hysteria2では、必要なパラメーターがそれぞれ異なります。アドレスが同じだからといってプロトコルを変更したり、サーバーのドメインをすべてのTLS項目にそのまま入力したりしないでください。各項目は、お手元の情報に合わせて入力します。項目の用途についてはプロトコルリファレンスをご覧ください。
注意点:サブスクリプションを更新すると、項目名や一覧の内容が変わることがあります。更新後はデフォルトサーバーを再確認し、削除済みのサーバーを選択したままにしないようにしてください。同じサブスクリプションを何度も読み込むと管理が煩雑になります。削除する前に、サブスクリプションから追加された項目か、手動で追加した項目かを確認してください。サブスクリプションURLにアクセス情報が含まれている場合があります。スクリーンショットやログ、構成を共有する際は、URL全体と認証情報を隠してください。
04 / ON DEMAND
On Demand:条件に応じた接続
概要:On Demandは、設定した条件を満たしたときに接続を開始する、システムのオンデマンド接続設定です。ドメインにPROXYまたはDIRECTを割り当てる機能ではありません。接続を開始する条件と、接続後に通信を振り分ける設定は、それぞれ別のものです。
場所と設定方法:SettingsでOn Demandを探し、現在の条件を確認してから必要なルールを有効にします。ネットワークの種類や特定のネットワークに応じて条件を指定できる場合は、実際の利用環境に合わせて設定してください。保存後、該当するネットワーク環境で動作を確認し、システムによるVPN構成の追加が許可されていることも確認します。
注意点:オンデマンド接続が有効だと、手動で切断した後に再び接続が開始されることがあります。必ずしもスイッチの不具合とは限らないため、まず起動条件を確認してください。接続できないときは、On Demandを一時的に無効にし、手動接続で再現可能なテスト条件を作って確認します。調査後は設定を元に戻してください。ネットワーク切り替え後の接続タイミングにはシステムも関与するため、どの状況でも常時オンラインになる保証と捉えないでください。
05 / DATA
Data:通信量の記録を確認
概要:Dataでは、クライアントが記録した通信量を確認し、接続中のデータ通信を把握できます。表示されるのはクライアント側の統計情報であり、システム上のすべてのアプリの通信量を集計したものでも、すでに利用しているサービスの課金記録に代わるものでもありません。
場所と使い方:Dataを開き、表示されている集計期間、送受信の方向、分類を確認してから、操作前後の変化を比べます。たとえば、テスト対象を1つだけ開いて前後の通信量が増えたか記録し、現在のGlobal Routingモードとあわせて確認します。統計をリセットできる場合は、実行前に記録を残す必要がないか確認してください。
注意点:通信量が増えていても、データ通信があったことを示すだけで、対象のコンテンツが正常に読み込まれた証明にはなりません。すべてのリクエストが想定したポリシーに一致したとも限りません。バックグラウンド通信、再試行、接続時の通信も統計に含まれる場合があります。複数端末の数値を単純に合算してサービス提供元の記録と比べるのではなく、それぞれの集計期間、単位、計測方法を確認してください。
06 / SETTINGS
Settings:よく使う設定の確認ポイント
Settingsの項目は、プラットフォームやシステム権限によって異なる場合があります。以下では機能名を手がかりに確認してください。特定のサブメニュー階層を固定の手順として扱わないでください。設定を変更する前に現在の値を記録します。構成ごとの設定と全体設定の両方がある場合は、同じ項目を複数の場所で何度も変更せず、現在の構成が別の設定で上書きされていないか確認してください。
DNS:名前解決の経路を確認
用途と場所:DNSはドメイン名をIPアドレスに変換します。Settings内のDNS関連項目と、現在の構成で確認できます。設定方法:まず、現在の構成で名前解決方法が指定されているか確認し、既存の設定内容に合わせて調整してから保存し、リクエストを再送します。注意点:DNSの名前解決に成功しても、プロキシ接続が成功したとは限りません。DNS設定を変更しても、認証情報の誤りは解消されません。「IPアドレスではアクセスできるが、ドメイン名では失敗する」場合は、DNSが優先して確認する項目の一つです。すべての接続問題をDNSのせいにしないでください。
Test Method:テスト条件をそろえる
用途と場所:SettingsのTest Methodでは、接続テストに使用する方法を選択します。設定方法:現在の画面で選べる方法を選択し、Homeに戻ってConnectivity Testを実行します。複数のサーバーを比較する場合は、テスト方法とネットワーク環境をそろえてください。注意点:テスト方法によって確認する接続段階が異なるため、結果をそのまま比較できない場合があります。1つのテストに成功しても、すべてのWebサイト、プロトコル、長時間のデータ転送が正常とは限りません。
Today Widget:ショートカットを確認
用途と場所:Today Widgetは、システムのウィジェット表示に関する設定です。Settingsで現在設定できる内容を確認できます。設定方法:アプリとシステムに用意された手順に従って表示項目を設定し、システム内の該当するウィジェット領域で追加できるか確認します。注意点:ウィジェットの表示、更新タイミング、実行できる操作はシステムのバージョンによって異なります。表示されない場合は、まずシステムのウィジェット設定を確認してください。そのためにサーバー構成を作り直す必要はありません。ウィジェットの状態に疑問がある場合は、アプリ内のHomeで実際の状態を確認してください。
iCloud:同期範囲と上書きを確認
用途と場所:iCloud関連の項目では、アプリが対応するデータの同期や復元を設定できます。Settingsで確認してください。設定方法:システムで目的のアカウントにサインインしていること、アプリにiCloudの使用が許可されていることを確認し、アプリに表示される同期範囲を確認してから同期または復元を実行します。注意点:すべての接続状態、統計情報、プラットフォーム間の構成が自動的に一致するとは限りません。復元の前に、現在使用できる構成を保存しておいてください。競合が発生した場合は、ローカルとクラウドの内容を見分け、新しい変更を古い内容で上書きしないようにします。
Diagnostics:トラブルシューティング用の情報を収集
用途と場所:SettingsでDiagnosticsを探し、アプリに用意されている診断またはログ機能からエラーの手がかりを確認します。設定方法:まず再現可能な問題を特定し、画面の案内に従って該当する操作の記録を収集します。作業後は、不要になった詳細記録を停止してください。注意点:記録にはアクセス先のドメイン、サーバーアドレスなどの機密情報が含まれる場合があります。他の人に共有する前に、認証情報、サブスクリプションの認証情報、関係のない情報を削除してください。構成全体を通常のスクリーンショットとして公開しないでください。
07 / CONNECTIVITY TEST
設定変更後の確認手順
確認する問題を毎回1つに絞ると、「サーバーが選択されていない」「サーバーに接続できない」「ルールの適用先が想定と異なる」「宛先自体に問題がある」を切り分けられます。DNS、プロトコルのパラメーター、Global Routing、ルールを同時に変更すると、復旧しても原因を特定できません。
- Homeを確認。すでにお持ちのサーバー情報が正しく入力され、デフォルトサーバーが選択されていること、接続スイッチが想定どおりの状態であること、システムの許可が取り消されていないことを確認します。
- Connectivity Testを実行。Test Methodは変更せず、現在のネットワークとテスト結果を記録します。失敗した場合は、まずアドレス、ポート、認証情報、サブスクリプションの更新状況を確認してください。
- Global Routingを比較。一時的にProxyとDirectを使い、同じ宛先へアクセスした後、Configに戻します。Configの場合だけ結果が異なるときは、現在の構成とルールポリシーを確認してください。
- 手がかりに沿って設定を確認。ドメインの名前解決に問題がある場合はDNS、自動再接続に問題がある場合はOn Demand、通信量の疑問はDataを確認します。必要に応じてDiagnosticsで該当する記録を収集してください。
- 通常の状態に戻す。一時的なテストモードを元に戻し、不要になった詳細記録を停止します。有効な変更と元の値を記録に残し、次回のトラブルシューティングで同じ試行を繰り返さないようにしてください。
入手方法を確認する場合、iPhone / iPad版は指定のApp Store製品ページから入手できます。システム要件はApp Storeのページに記載された内容をご確認ください。Mac、Windows、Android、Linux版のインストーラーは、当サイトのダウンロードガイドから入手できます。よくある症状と対処方法はよくある質問をご覧ください。一度のテスト失敗を理由に、すべての設定をリセットする必要はありません。