公式マニュアル・機能ガイド
Shadowrocketの機能と基本設定
まず通信の処理方法を確認し、次に接続を開始する条件を設定します。画面の項目ごとに機能を解説し、設定の順序と確認方法を紹介します。
- Global Routing
- ルールとポリシー
- On Demand
- DataとDiagnostics
ここでは主にiPhone、iPad版のShadowrocketを使い、利用者自身がサブスクリプションまたはサーバー情報を持っていることを前提に説明します。システム要件はApp Storeの掲載内容をご確認ください。初回接続がまだの場合は、先にセットアップガイドを読み、その後このページの項目を順に設定してください。
通信の処理方法を設定
Global Routing:Config、Proxy、Direct
Global Routingでは、Shadowrocketが処理する通信のルーティング方法を選択します。接続のオン/オフとは別の設定です。接続スイッチは接続の開始・終了に使い、Global Routingでは通信の処理モードを選びます。HomeでGlobal Routingを開き、目的に応じてConfig、Proxy、Directを選択してください。
Configは、現在の設定ファイルにあるルールに基づいてポリシーを適用します。ドメインやアドレスごとに通信を振り分ける、日常的な利用に適しています。Proxyは、選択中のサーバーからアクセスできるか一時的に確認するときに使います。Directは、プロキシサーバーを経由しない場合のアクセス状況を確認するモードです。ProxyとDirectを比較するときは、同じWebサイトとネットワーク環境を使用してください。
| 画面表示とモード | 処理の基準 | 利用シーン | 確認ポイント |
|---|---|---|---|
| Config・設定ファイル | 現在の設定ファイルにあるルールに基づいてポリシーを選択します。 | DIRECT、PROXYなど複数のポリシーを使い分ける日常的な接続。 | 有効な設定ファイル、ルールの順序、最終ポリシーを確認します。 |
| Proxy・プロキシ | Proxyモードで処理する通信。 | 選択したサーバーから目的のサイトにアクセスできるか、一時的に確認します。 | デフォルトサーバー、サーバーの設定値、テスト対象を確認します。 |
| Direct・直接接続 | Directモードで処理する通信。 | ローカルネットワークの確認や、プロキシ経由の通信との比較。 | DNSの状態も確認が必要です。接続スイッチをオフにする設定とは異なります。 |
設定の切り替えと復元
Global Routingを開いて目的のモードを選び、Homeに戻って現在の設定を確認してから、同じサイトへのアクセスをテストします。Proxyでは接続できるのにConfigの結果が想定と異なる場合は、すぐにサーバーをすべて再インポートせず、ルールとポリシーの割り当てを確認してください。一時的なテストが終わったら元のモードに戻し、診断用の設定を普段使いの状態として残さないようにします。
モードを切り替えても、確立済みの接続は切り替え前の経路を使い続けることがあります。結果を判断する前に、対象へのリクエストを新たに実行してください。再接続が必要な場合は、通信が中断されないよう、作業中の内容を先に保存してください。
条件と適用結果
ルール設定:ルールタイプとポリシー
ルールは通信が条件に合うかを判定し、ポリシーは一致した通信の処理方法を決めます。Configを開き、使用中の設定ファイルを確認してから、その中のルールを表示または編集してください。現在の設定を把握して初めて、通信がDIRECT、PROXY、REJECTのどれに振り分けられるかを説明できます。
一般的なルールは、設定ファイルに記載された順に照合されます。通常、より具体的な条件を広い条件より先に置き、FINALを末尾に設定して最終的な処理を指定します。変更前に元の設定を保存し、関連するルールを一度に一組だけ変更して、対象のリクエストがどう判定されるか確認してください。
| ルールタイプ | 一致する内容 | 使用上の注意 |
|---|---|---|
DOMAIN | 指定した完全一致のドメイン。 | 対象が明確な単一のドメインに適しています。 |
DOMAIN-SUFFIX | ドメイン本体とそのサブドメイン。 | 単一のDOMAINよりも広い範囲に適用されます。 |
DOMAIN-KEYWORD | ドメインに含まれるキーワード。 | 一致範囲が広がりやすいため、変更後に意図しない一致がないか確認してください。 |
GEOIP | 接続先IPアドレスの地理的な分類。 | 結果は、名前解決されたアドレスや使用するデータによって異なります。 |
IP-CIDR / IP-CIDR6 | IPv4 / IPv6のアドレス範囲。 | アドレスの種類とプレフィックス長を確認してください。 |
FINAL | 前のルールに一致しなかった通信。 | 最終的に適用するポリシーを明示する必要があります。 |
ポリシーとルールの例
DIRECTは直接接続、PROXYはプロキシ経由の接続、REJECTは接続の拒否を表します。設定で名前付きのポリシーグループを使う場合は、グループ内で現在選択されている項目も確認してください。ルールの指定先がPROXYでも、デフォルトサーバーが正しいとは限りません。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
GEOIP,CN,DIRECT
FINAL,PROXY
この例はルールの構造を説明するものです。example.comとそのサブドメインは最初のルールで照合され、次にGEOIPを確認し、残りの通信はFINALで処理します。あらゆるネットワークに適した完全な設定ではありません。ドメインへのアクセスでは複数のリソースがリクエストされることがあるため、原因を調べる際はブラウザーのアドレスバーだけで判断せず、実際にリクエストされたドメインを確認してください。
ルールキーワードと画面上の用語の違いは用語集をご覧ください。照合順序を詳しく知りたい場合は、ルールの書き方入門をご覧ください。
既存情報のインポートと整理
サブスクリプションとサーバーの管理
サーバー項目には、リモートサーバーへの接続に必要な情報を保存します。Subscribeを使うと、既存のサブスクリプションリンクから複数の項目を管理できます。主な追加操作はHomeから行います。手動で入力する場合はAdd Serverを開き、正しいTypeを選択してから、お手元のサーバー情報に従ってアドレス、ポート、認証情報を入力してください。
インポート後は接続前に内容を確認
既存のサブスクリプションはSubscribeから、QRコードはScan QR Codeからインポートできます。クリップボードから読み込む前に、コピーした内容が完全な情報であり、説明文や途中で切れたアドレスではないことを確認してください。インポートが成功しても、クライアントが内容を読み取れたというだけで、サーバーに接続できることや、すべての項目が現在のネットワークに適していることを意味しません。
Homeに戻り、項目名とプロトコルタイプを確認して、使用するサーバーを選択した後、Connectivity Testを実行します。手動で追加した項目は、ポート、認証欄、サーバー情報で指定されているTLSやトランスポートの設定を一つずつ確認してください。名前が似ているからといって、異なるプロトコルの項目を流用しないでください。
更新・整理・バックアップ
サブスクリプションの更新では、配信元から最新の内容を取得します。更新によって項目が追加、削除、書き換えられることがあるため、重要な手動変更をサブスクリプションから生成された項目だけに保存しないでください。複数のサブスクリプションを管理する場合は、用途がわかる名前を付けます。項目を削除する前に、デフォルトサーバーが削除予定のグループに含まれていないか確認してください。
レイテンシテストは、その時点の環境で接続先を絞り込むための目安であり、速度や安定性を長期的に順位付けするものではありません。項目や設定を削除する前に、アプリのエクスポート・バックアップ機能で必要な情報を保存してください。バックアップに認証情報が含まれる場合があるため、アクセスできる範囲を限定してください。詳しい手順はサーバー管理マニュアルをご覧ください。
接続を開始する条件
On Demandによるオンデマンド接続
On Demandは、条件に応じて接続を開始するタイミングを決める機能です。接続のタイミングを制御するものであり、Global RoutingやConfigのルール設定を置き換えるものではありません。まず手動接続と目的のサイトへのアクセスが正常に動作することを確認してから、SettingsでOn Demand関連の項目を設定してください。
まずは1つの利用シーンで設定
どのネットワーク環境で接続したいかを先に記録し、画面で設定できるWi-Fi、モバイル通信、ドメインなどの条件に基づいてルールを作成します。Wi-Fi名で条件を分ける場合は、ネットワーク名を正確に確認してください。まずは明確に動作を確認できる条件を1つだけ作成し、保存後に対象のネットワークへ切り替えて、システムの接続状態と実際のアクセス結果を確認します。
2つ目の条件を追加する前に、既存の条件と重複していないか確認してください。ネットワークの切り替え、デバイスのスリープからの復帰、アプリによるリクエストの再実行などにより、1回の手動操作とは異なる結果になることがあります。一度の状態変化だけで条件が有効だと判断しないでください。
繰り返し接続される場合と停止方法に注意
On Demandを有効にすると、手動で接続を終了しても、条件が再び満たされたときに接続が開始されることがあります。自動接続を一時停止するには、Homeのスイッチを繰り返し切り替えるのではなく、On Demandの状態を確認してください。問題を調べるときは、まずオンデマンド条件を一時的に無効にし、手動接続を基準に比較してから、条件を一つずつ戻します。
オンデマンド接続はバックグラウンドでのネットワーク動作に影響します。テスト中は元の条件を記録し、想定どおりに動作することを確認してから継続利用してください。利用シーンについてはOn Demandの設定ガイドをご覧ください。
通信量の変化を確認
Dataで通信量を確認
Dataでは、アプリが記録した通信量を確認できます。Dataを開き、まず表示対象の範囲と集計期間を確認してから、アップロード、ダウンロード、各分類の数値を比較してください。「テスト中に通信が発生したか」の確認には使えますが、「目的のサイトにアクセスできたか」を単独で判断することはできません。
条件をそろえて比較
テストを始める前に現在の統計値を記録し、ほかのアプリのバックグラウンド動作を一時的に減らしてから、目的のページを再読み込みするなど、明確な操作を1つだけ行います。完了後にDataを開いて変化を確認してください。リセット機能がある場合、以前の記録が必要かどうかを実行前に確認します。統計を消去しても、接続の問題は解決しません。
バックグラウンド同期、画像の読み込み、接続失敗後の再試行でも通信が発生することがあります。数値が増えても、すべてのコンテンツが読み込まれたとは限りません。数値がわずかでも、ルールが適用されていないとは限りません。統計の変化をアクセス結果、接続ログ、テスト時刻と合わせて判断してください。
課金上の通信量とは分けて考える
Dataの記録範囲は、システムや利用中のサービス事業者の集計と異なる場合があります。プロトコルのオーバーヘッド、集計期間、接続の対象範囲などが比較結果に影響します。Dataはクライアント側で状況を確認するための機能であり、請求額の根拠としてそのまま使うものではありません。通信量の異常を調べる場合は、まず対象期間を絞り、具体的な動作を確認してください。累計値だけから個々の接続状況を推測しないようにします。
よく使う項目を順に解説
Settings:DNS・テスト・便利な機能
Settingsには、接続関連のオプションや補助機能がまとめられています。ネットワークの動作は、現在のConfigにも左右されることがあります。変更前に、設定が全体のオプションか設定ファイル内の項目かを確認し、元の値を記録してください。利用できる項目は、デバイスに表示される内容をご確認ください。
DNS:ドメイン名の名前解決
DNSは、ドメイン名を接続先のアドレスに変換します。SettingsのDNS関連項目と、現在の設定ファイルにあるDNS設定を確認してください。一方だけを変更して、すべてのリクエストに新しい値が使われると思い込まないようにします。システムのDNS、自分で指定するDNS、DNS over HTTPSのいずれを使うかは、現在のネットワーク環境に合わせて選びましょう。特定の方式が必ず速いとは限りません。
設定を変更するときは、名前解決に関わる項目を一度に1つだけ調整し、保存後に同じドメインへ再アクセスしてください。サーバーテストには成功するのにドメインへのアクセスに問題がある場合は、名前解決の結果、解決経路、ドメインルールを優先して確認します。詳しい設定方法はShadowrocketのDNS設定ガイドをご覧ください。
Test Method:テスト方法
Test Methodでは、接続性やレイテンシのテスト方法を設定します。Settingsで現在の値を確認し、Homeから該当するテストを実行してください。テスト方法を選ぶ際は、使用するサーバーと現在のネットワークが、その方法で必要となる接続に対応しているかを考慮します。
複数の項目を比較するときは、Test Methodとネットワーク環境をそろえてください。テストに失敗しても、テスト対象や方法が制限されている可能性があり、すべての実際のアクセスが使えないとは限りません。テストの所要時間はファイルのダウンロード速度を示すものでもないため、目的のサイトへのアクセスを別途確認してください。
Today Widget:クイックアクセス
Today Widgetを使うと、システムのウィジェット画面から情報を確認したり、簡単な操作を実行したりできます。まずSettingsでToday Widget関連の項目を確認し、デバイスのシステムが提供する方法で利用可能なウィジェットを追加してください。表示内容や操作できる範囲は、デバイスの対応状況によって異なります。
設定後はHomeに戻り、デフォルトサーバーと現在の状態を確認してから、ショートカット操作を試してください。ウィジェットは手順を減らせますが、初期設定の代わりにはならず、現在のルールが適用されていることを保証するものでもありません。ウィジェットの情報が更新されない場合は、アプリを開いて実際の状態を確認してください。
iCloud同期:デバイス間で設定を保持
iCloud同期では、対応範囲内のアプリデータをデバイス間で同期できます。各デバイスで自分のiCloudアカウントにサインインし、Shadowrocketに必要な機能の使用を許可してから、Settingsの同期オプションを確認してください。同期される内容は画面の説明で確認し、すべての項目、統計、認証情報が完全に移行すると想定しないでください。
初めて同期を有効にする前に、両方のデバイスで重要な設定をそれぞれ保存してください。同期後は設定名、デフォルトサーバー、接続結果を確認し、すぐに元のデバイスのデータを削除しないでください。同期は独立したバックアップではありません。誤った変更を元に戻す必要に備え、事前に設定のコピーを保存してください。
Diagnostics:診断情報
Diagnosticsでは、ネットワークの状態を確認し、トラブルシューティングに役立つ情報を収集できます。Settingsの該当項目から診断ツールを開き、DNS、サーバー接続、ルールの適用結果のうち何を確認するか決めてから、画面に表示される該当のチェックを実行してください。条件を再現できるよう、診断前にネットワークの種類、現在のモード、選択中のサーバーを記録します。
診断結果は、実際のリクエストと照らし合わせて確認してください。ログを共有する前に、サブスクリプションURL、認証情報、デバイス情報、アクセス先のドメインが含まれていないか確認し、必要な部分だけを残します。問題の調査を理由に、設定全体やサブスクリプションの内容をそのまま公開しないでください。
基準の状態から変更点を特定
機能設定の確認手順
複数の項目を同時に変更すると、問題の原因を特定しにくくなります。まず再現可能な基準を作り、ルール、DNS、オンデマンド条件を一つずつ追加してください。変更内容とテスト結果を各段階で記録すると、設定を何度もすべて消去するより効率的に確認できます。
- サーバー情報を確認。Homeで選択中の項目を確認し、手元の情報に不足がないかを確かめます。Connectivity Testを実行し、実際にサイトへアクセスできることも確認してください。
- Global Routingを確認。現在のモードを記録します。比較が必要な場合はProxyまたはDirectに一時的に切り替え、同じ対象にリクエストを再送します。
- Configを確認。有効な設定ファイル、ルールの順序、ポリシーの指定先、FINALを確認し、無効なファイルを編集していないか確かめます。
- DNSを確認。名前解決に関するオプションと設定内容を確認します。変更するのは一度に1項目だけにし、対象ドメインへの新しいリクエストで結果を確認してください。
- 最後にOn Demandを元に戻す。手動接続が安定してから自動接続の条件を有効にし、ネットワークを切り替えてテストします。DataとDiagnosticsも使って結果を確認してください。
変更後に問題が起きた場合は、まず直前に記録した元の値に戻してください。サブスクリプションのインポートと項目の管理手順はサーバー管理を、インポートから初回確認までの流れはセットアップガイドをご覧ください。