仕組みを理解してから設定
Shadowrocket
の主な機能
サーバー情報、設定ルール、接続ポリシーは、それぞれ役割が異なります。サーバーの追加は接続パラメータを登録する作業、Configはリクエストの振り分け方法、Global Routingは現在の処理方法を決める設定です。変更する前に、どの層を調整するのか確認し、サーバーの問題とルールの問題を混同しないようにしましょう。
右側の目次では、実際の利用順に主な機能をまとめています。画面上の項目名は英語表記のまま、ルール例は構文の説明のみで、接続に使える情報ではありません。設定を始める前に、ご自身のサブスクリプションまたはサーバー情報をご用意ください。
機能と設定を見る →
Rule:リクエストを上から順に照合
Configで現在有効な設定を確認し、Global RoutingをConfigにすると、ルールに従ってリクエストのポリシーが選択されます。ルールは上から順に照合されるため、通常は条件が具体的なものを先に置き、最後にFINALで受け止めます。PROXYはプロキシポリシー、DIRECTは直接接続、REJECTは一致したリクエストの拒否を意味します。例はドメインとポリシーの対応を示すものです。使用前にポリシー名が有効か確認し、誤判定に備えて元の設定を保存してください。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
DOMAIN,ads.example.net,REJECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
On Demand:接続条件を明確にする
SettingsでOn Demandを開き、現在の画面で選べるネットワーク条件に応じて接続を設定します。On Demandが決めるのは接続を開始するタイミングであり、リクエストの行き先を判定するRuleの代わりにはなりません。初回は手動接続が正常に動作することを確認してから、再現しやすい条件を一つ追加し、条件を満たす場合と満たさない場合の両方で動作を確認しましょう。手動で切断した後に再接続される場合は、サーバーのパスワードを何度も変更するのではなく、On Demandが有効になっていないか確認してください。設定できる条件は、デバイスに表示される内容をご確認ください。
Settings → On Demand
Global Routing → Config
Type:サーバー側の設定に合わせる
Add Serverで、サービス提供元の情報に従ってTypeを選択します。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardでは必要な項目が異なるため、プロトコル名だけを変更して他のパラメータをそのまま使うことはできません。アドレス、ポート、認証方式に加え、プロトコルで必要となるTLSや鍵の情報を一つずつ対応させてください。共有リンクから追加した場合も、各項目が正しく入力されているか確認しましょう。プロトコル名だけで接続品質は判断できません。クライアント側のパラメータとサーバー側の設定が一致し、現在のネットワークから到達できることが必要です。
Add Server → Type
Host / Port
WireGuard: PrivateKey / PublicKey / Endpoint
Subscribe:既存のサブスクリプションを追加
サブスクリプションURLは、ご利用のサービス提供元から入手してください。Add ServerでSubscribeを選び、URLを入力して保存・更新した後、Homeに戻って追加された項目を確認します。更新されるのは主にサーバー一覧であり、現在のConfigが切り替わるわけではなく、すべての項目の接続が保証されるわけでもありません。更新に失敗した場合は、URLが正しくコピーされているか、有効期限内か、ネットワークからアクセスできるかを確認してください。URLには個人の認証情報が含まれることがあるため、公開しないでください。問い合わせ時は、認証情報を取り除いたエラー情報のみを共有してください。
Add Server → Type → Subscribe
Home → SERVER
Config:保存と有効化を区別する
Configではルールや関連設定を管理します。ファイルを読み込んだり保存したりしても、それが現在有効な設定になったとは限りません。変更後は有効状態を確認し、Global RoutingでConfigが選択されていることも確かめてください。DNSや振り分けの問題を調べるときは、正常に動作する設定のコピーを保存し、一度に一項目だけ変更して同じ接続先で再テストします。iCloud同期はご自身のデバイス間で情報を管理するのに役立ちますが、同期状態は接続状態を示すものではありません。デバイスを切り替えた後は、ファイルの内容、サーバーの選択、本体の認証状態を確認してください。
Config → General / Rule / Hosts
Global Routing → Config
診断:テスト結果と実際の通信を区別する
HomeのConnectivity Testは、サーバーへの到達性を確認するための補助機能です。結果はSettingsのTest Methodやネットワーク環境によって変わります。Dataでは通信量の記録を確認できますが、サービス提供元の利用明細の代わりにはなりません。接続できない場合は、まず現在のネットワークで再テストし、次にサーバーパラメータを確認してから、Diagnosticsとログを使って原因を調べます。テストに応答があるのにWebページを開けない場合は、DNS、適用されたルール、接続先サービスの状態も確認してください。ログを外部に共有する前に、サブスクリプションURL、認証情報、個人のアクセス履歴を削除してください。
Home → Connectivity Test
Settings → Test Method / Diagnostics
Data