Shadowrocket の長いチュートリアルです。ホームの短い手順に加え、3つの取り込み比較、遅延テスト、Global Routing、ルールの仕組み、実機でよく見た障害を足しています。
注:操作パスは App Store の説明と実機確認に基づきます。画面イメージは実操作を描き直したオリジナル(公式スクリーンショットではありません)。メニュー文言と位置はバージョンで変わります。端末の表示を優先してください。
Shadowrocket はクライアントです。ルールに従って転送します。どこへ着き、どれだけ速く感じるかは、使うサーバー(ノード)次第です。始める前に2つ確認してください。
http(s):// または sub:// で始まるリンク。自前サーバーのパネルか、契約した事業者から出ます。これがないと App は接続先を持ちません。注:Shadowrocket はノードやサブスクを提供・販売しません。入手先は自分で用意します。この記事はクライアントの設定方法だけです。
すでにストアに出ていればサインアウトは不要です。出ていなければ「設定」→ 自分の名前 →「メディアと購入」→「サインアウト」のあと、取り扱い地域の Apple ID で入ります。請求先を求められたら、出せるときは「なし」。
App Store で Shadowrocket を検索して購入します(目安 $2.99 の買い切り。画面の価格が正)。入れ終わったら App Store を普段の ID に戻せます。アプリは残ります。
初回起動で Shadowrocket は「VPN 構成」の追加を求めます。iOS のセキュリティ確認です。転送するプロキシ系アプリはすべてこの経路を使います。個人データのアップロードではありません。「許可」し、Face ID / Touch ID またはパスコードで確定してください。
取り込みは3通りです。いずれもホーム右上の + から、Type は Subscribe。違いは URL の入れ方です。
ホーム右上の + → Type で Subscribe → URL を貼る → 見分けやすい Alias(一部の iOS では英数字の方が切れにくい)→ 保存。
ここで飛ばしやすい:保存してもノード一覧は空のままです。追加は URL を記録しただけです。まだノードは取っていません。ホームに戻り、今保存した行を開き「更新」を押すと、Shadowrocket が URL にアクセスし、一覧が埋まります。
ヒント:同じ URL の末尾に #1、#2 を付けると、別名で重複追加でき、フィード比較に便利です。毎回「更新」したくなければ 設定 → Subscribe で「開くときに更新」(再起動時に更新)と「バックグラウンドで自動更新」(「設定 → 一般 → Appのバックグラウンド更新」で Shadowrocket を許可しないと裏では動きません)。
| 方法 | 向いている場面 | FAQ |
|---|---|---|
| URL を貼る | URL がメモ、チャット、メールにある | リンクが途中で切れている——開いて全選択してコピー。手でドラッグ選択しない |
| QR を読む | 事業者がサブスク QR 画像を出している | 反射で読めない——輝度最大、カメラを少し離す |
| クリップボード自動検出 | ブラウザやチャットから今コピーした | コールドスタート、またはバックグラウンドから戻ったときだけ。古い URL が残っていると誤検出するので、先に空にする |
取り込み後にノード一覧が空なら、URL 自体の失効や未開始が多いです。事業者に確認する話で、クライアントの不具合ではありません。
取り込み後、ノードはホームでグループ表示されます。テストと選択の前に、小さな変更を。Settings → 遅延テスト方法 を既定から CONNECT へ。遅延の数字が、実際の接続に近くなります。
サブスクグループ右の Test で一括測定できます。色:緑は遅延が低く使える、黄は高め、赤 / Timeout は今使えない——別を選べばよく、アプリの不具合ではありません。行をタップすると、それが現在のノードになります。
Global Routing は「特定ノードに当たらないトラフィック全体をどうするか」です。モードは4つ。
Scene はいじりたい人向けです。日常は Configuration のままで足りることが多いです。
ホームに戻り、上部のスイッチをタップ。初回接続では VPN 許可が再表示されることがあります。成功するとステータスバーに小さな VPN、スイッチが点灯し、「接続済み」と経過時間が表示されます。
| 見え方 | 意味 |
|---|---|
| ステータスバーの VPN が点いたまま | トンネル維持。システムもプロキシ有効と認識 |
| スイッチは点灯、アイコンは点滅し続ける | 接続試行中で未成功。ノードタイムアウトが多い。別ノードへ |
| つながって数秒で切れる | ノードまたはサーバー側。他ノードを試す。複数同じなら事業者へ |
| VPN 表示が消え、スイッチがオフになる | 長時間バックグラウンドだとシステムが接続を回収することがある。スイッチを入れ直す |
プロキシ接続は iOS の VPN インターフェイスをバックグラウンドで維持します。ロックやアプリ切替では通常切れません。低電力モードが長いと、システムが裏の通信を制限し、受動的に切れることがあります。省電力方針であり、アプリの不具合ではありません。安定を優先するなら、バッテリー設定で Shadowrocket の低電力制限を緩めてください。
⚠️ よくある症状:スイッチを入れたあとアイコンが点滅し続ける。今のノードのタイムアウトが多いです。一覧に戻り、遅延が普通のノードに替えてください。
スイッチ点灯は VPN インターフェイスが立ったことだけです。想定どおりプロキシを通った保証ではありません。次の順で一通り確認してください。
| 確認項目 | 手順 | 正常な見え方 |
|---|---|---|
| サイトアクセス | ブラウザで、以前開けなかったサイトを開く | ページが読み込まれる。くるくるやタイムアウトが無い |
| IP の所在 | 任意の「自分の IP」サイトを開く | 表示はノードの地域で、手元回線の実 IP ではない |
| トラフィック内訳 | Data で Direct と Proxy を見る | Proxy は利用とともに増え続ける。0 のままではない |
| 体感 | 数分普通に閲覧し、明らかなカクつきが無いか | 近くのサイトを普通に開くのに近い表示速度 |
下部の Data はバックアップとログの入口です。上は iCloud バックアップ、中央はノードのインポート/エクスポート/削除、Statistics が通信量、Logging で Proxy / DNS ログを見ます。
Statistics を開くと Direct(ノードなし)と Proxy(ノード経由)の累計が出ます。Direct が増え続け、Proxy が長く 0 なら、Global Routing かルールがすべて直通にしています。前の章に戻り、モードを Config または Proxy にし、そのサイトに当たる行が PROXY か確認してください。
Direct が 0 になることはまずありません。日本のサイト、Apple の通信、システムの要求は DIRECT のままが多いです。正常なので、Direct を 0 にする必要はありません。
Shadowrocket には初期ルール default.conf が入っており、よく使うサイトはカバーします。壊したら Config で「デフォルト設定を復元」。カスタムの例:
DOMAIN-SUFFIX,netflix.com,PROXY
DOMAIN-SUFFIX,yahoo.co.jp,DIRECT
GEOIP,JP,DIRECT
FINAL,PROXY
各行は「照合条件, 照合内容, ポリシー」。上から照合し、当たったら止まります。最終行の FINAL は、どれにも当たらないときのフォールバックです。
重要な制限:iOS に「このアプリだけプロキシ」の公式 API はありません。あるアプリをノード経由、別アプリを直通に見せるとき、Shadowrocket はそのアプリがよく使うドメイン、IP 帯、User-Agent で近似しているだけで、どのアプリからのリクエストかは見ていません。だからアプリ単位の分流は、そのアプリ/サイト向けのルールセットを取り込むことが多く、システムのアプリ一覧から選ぶのではありません。
ルールファイルもサブスク URL で取り込み、自動更新できます。Config → 右上 + → ルール用 URL を貼る → ダウンロード → 該当ファイルをタップして有効化。毎回手で編集する必要はありません。
まず URL が有効で期限切れでないか、コピーが完全か(途中切れ、余分な空白)を確認します。どちらも問題なければ、手動でサブスクを引き下げ更新してください。
Global Routing が Configuration または Proxy か、読み込み中のルールでそのサイトが PROXY を指し、DIRECT ではないかを確認してください。
今のノードが不安定か、サーバー側の問題が多いです。遅延の低い別ノードへ。すべて同じなら、事業者にサーバー状態を確認してください。
Config で「デフォルト構成を復元」し、内蔵の default.conf に戻してから、カスタムルールを少しずつ足してください。一度に大きく変えない方が切り分けやすいです。
Settings → 遅延テスト方法 を CONNECT にします。実際のハンドシェイクに近く、数字として使いやすいです。
これでも直らなければ、ホームの FAQ へ。