ShadowrocketのGlobal Routingの選び方:Config・Proxy・Directの違い

Global Routingの3つの選択肢とルールの適用方法を解説。普段はConfigを使う理由や、Proxy・Directに一時的に切り替える場面も紹介します。

この記事の要点

利用可能なサービスと設定があり、宛先ごとに通信を振り分けたい場合は、まずConfigを使います。Ruleの判定を一時的に通さず、プロキシ経由の経路を確認するにはProxyを、ローカルネットワークから直接接続した結果を比較するにはDirectを選びます。この記事では、各モードがリクエストに与える影響と、切り替え方、ルールの確認方法、トラブルシューティングの手順を説明します。Shadowrocketの購入と接続サービスの利用は別のものです。以下の操作は、利用者自身がサービス事業者とサブスクリプションを用意していることを前提としています。

1. Global Routingは通信の処理方法を決める設定で、接続のオン・オフとは別

HomeでGlobal Routingを開き、現在選択されている項目を確認してから、リクエストの処理方法を判断します。Configでは、現在有効な設定のRuleに基づいてポリシーを選択します。Proxyでは、クライアントが処理する通信をプロキシ経由にします。Directでは、クライアントが処理する通信を直接送信します。ここでいう「すべて」はクライアントが実際に処理する通信を指し、デバイス上のあらゆるシステム通信が必ず同じ経路を通るという意味ではありません。

接続スイッチはクライアントの接続を開始・停止し、Global Routingは接続中に使用するルーティング方式を選びます。Proxyを選んでも接続が確立したことにはなりません。Directを選んでも接続スイッチがオフになるわけではありません。トラブルシューティングでは、この2つを個別に確認し、接続状態とルーティング方式を混同しないようにしましょう。

3項目
この記事で扱う選択肢:Config / Proxy / Direct
2ステップ
切り替え手順:Home → Global Routing
4種類
後半で使う例:DOMAIN-SUFFIX / IP-CIDR / GEOIP / FINAL

Global RoutingにはSceneが表示される場合もあります。Sceneはシーンに応じたルーティング設定に関係する項目で、名前だけを見てConfig・Proxy・Direct以外の固定された送信経路と判断することはできません。この記事では3つの直接的な選択肢のみを扱います。Sceneを使用中の場合は、テスト前に設定内容を記録してから、比較したい選択肢に明示的に切り替え、シーン条件が判定に影響しないようにしてください。

2. Config・Proxy・Directの使い分け

Config

おすすめ

現在の設定にあるRuleの順序に従ってポリシーを選びます。DIRECTに一致したリクエストは直接接続し、PROXYに一致したリクエストはプロキシを使用します。ルールでは、設定内にあるほかの有効なポリシーも指定できます。どのルールにも一致しないリクエストは、末尾のFINALなどのフォールバック設定で処理されます。自動的にすべて直接接続されるわけではありません。

適した場面:設定が正しく、普段から宛先ごとに通信を振り分けたい場合。

Proxy

宛先ごとにRuleで直接接続かプロキシかを選ぶのではなく、クライアントが処理する通信をプロキシ経由にします。ルールの影響を一時的に除外してテストするのに適していますが、選択したサービスのアドレス、認証情報、プロトコルパラメーター、利用可否には左右されます。

適した場面:一時的にプロキシ経由に統一する場合や、Configのルール適用結果と比較する場合。

Direct

ローカルネットワークから宛先へ直接アクセスし、選択したプロキシサーバーを経由しません。直接接続の経路を確認するために使います。アクセスできるかどうかは、現在のネットワーク、名前解決、宛先サービスの状態によって異なります。

適した場面:ローカルネットワークからのアクセスを確認する場合や、同じ宛先へのプロキシ経由の接続と比較する場合。

Configをおすすめできるのは、設定が利用目的に合っている場合です。ほかの2つより本質的に速いという意味ではありません。FINALがPROXYに設定されていれば、先行するルールに一致しない多くのリクエストもプロキシ経由になります。FINALがDIRECTなら、一致しないリクエストは直接接続します。「このサイトがなぜこの経路を通るのか」を判断するには、モード、ルール、最終ポリシーをあわせて確認してください。

ProxyとDirectは用途が限られたテスト手段であり、接続を保証するものではありません。Proxyに切り替えても失敗する場合は、サービスのパラメーター、名前解決、通信経路、または宛先自体に問題がある可能性があります。Directに切り替えて失敗した場合も、それだけで設定の破損とは判断できません。

3. ConfigでRuleに基づいてポリシーを選ぶ仕組み

Configを開き、使用する設定が選択されて有効になっていることを確認してから、設定内の[Rule]を確認します。ルールは記載順に照合され、最初に一致した適用可能なルールによってリクエストのポリシーが決まります。以下は構文と順序の例であり、既存の設定を置き換える完全なファイルではありません。example.comは例示用ドメインです。PROXYに必要なサービスは利用者自身で用意してください。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,DIRECT
  • DOMAIN-SUFFIX,example.com,PROXY:example.comとそのサブドメイン(例:www.example.com)に一致し、PROXYを使用します。
  • IP-CIDR,192.168.0.0/16,DIRECT,no-resolve:このIPv4アドレス範囲にはDIRECTを使用します。no-resolveは、このIPルールのために追加のドメイン名解決を実行しないという意味で、DNSを全体的に無効にする設定ではありません。
  • GEOIP,CN,DIRECT:宛先IPの地理情報に基づいてCNに一致させ、DIRECTを選択します。Webページの表示言語、ドメインの末尾、利用者の所在地で判定するものではありません。
  • FINAL,DIRECT:リストの末尾に置き、それ以前のルールに一致しなかったリクエストをDIRECTで処理します。FINAL,PROXYに変更すると、フォールバック経路も変わります。

この例では、ドメインで最初のルールに一致したリクエストはPROXYを使うことが決まり、後続のGEOIPルールによって結果が上書きされることはありません。IPルールについては、クライアントが宛先IPを取得できるか、名前解決に関する設定がどうなっているかも考慮する必要があります。ルールを確認するときは、ドメインによる照合とIPによる照合を区別し、記述位置だけを比べないようにしてください。

4. Homeで切り替え、同じ宛先で結果を比較する

テストを始める前に、現在のモード、設定、選択中のサービスを記録します。一度に変更する要素を1つに絞ると、結果を比較しやすくなります。以下の手順では、利用者自身にアクセス権がある同じ宛先を使います。サービスを新たに追加したり、プロトコルパラメーターを変更したりする必要はありません。

  1. Homeを開き、利用者自身が追加した有効なサービスと、現在選択されているサーバーを確認します。次にConfigを開き、有効な設定を確認してください。
  2. Home → Global Routingに戻り、Configを選択して、接続スイッチが必要な動作状態になっていることを確認します。
  3. アクセス先がわかっている宛先に接続し、アクセスが完了するかどうかと、アプリ内で確認できるリクエスト記録に表示されたポリシーまたは送信結果を記録します。
  4. 同じサービス、ネットワーク、宛先のままProxyに切り替えて、リクエストを再送信します。ブラウザーに残っている古い接続を再利用しないようにしてください。
  5. Directに切り替えて同じ宛先にリクエストを送信します。比較が終わったらConfigに戻し、接続状態を再確認してください。

Configでは失敗しProxyでは成功した場合、その宛先には現在のプロキシ経由でアクセスできることがわかります。ただし、特定のルールが必ず間違っているとは限りません。Configで一致したルール、ポリシーの指定先、DNS関連の設定を確認してください。Configが異なるポリシーグループやサーバーを使っている場合は、まずその違いを記録してから、ルールの問題かどうか判断しましょう。

3つの選択肢すべてで失敗する場合は、FINALを何度も変更するのではなく、ローカルネットワーク、宛先の稼働状況、サービスのパラメーター、名前解決の問題に範囲を絞りましょう。ページのキャッシュや維持中の接続も確認結果に影響します。切り替えるたびにリクエストを新しく開始し、必要に応じてアプリ内の案内に従って再接続してから、新たに記録された結果を比較してください。

比較手順:ルール経由とローカル経由を個別に確認

ConfigとProxyを比較
  • 同じ宛先とプロキシサービスを使います。
  • Configで実際に一致したルールを確認します。
  • ルールが別のポリシーやサーバーを指定していないか確認します。
  • 古い接続を再利用せず、新しいリクエストの結果を記録します。
DirectとProxyを比較
  • 現在のWi-Fiまたはモバイルネットワークを変更せずにテストします。
  • 直接接続とプロキシ経由で、それぞれのアクセス結果を確認します。
  • 名前解決の失敗と接続の失敗を分けて記録します。
  • テスト後は、普段使うConfigに戻します。

比較結果は問題の範囲を絞るためのものです。一度の成功や失敗だけで、すべての宛先に同じ経路が適していると判断しないでください。

5. Global RoutingとOn Demand・プロトコル・サブスクリプションの関係

Settings → On Demandでは、設定した条件に基づいて接続の動作を管理します。Global Routingでは、接続中のルーティング方式を選択します。自動接続が必要な場合は、On Demandの条件とGlobal Routingの現在の選択肢をそれぞれ確認してください。On Demandを設定しただけでは、Ruleの不足は検出されず、サーバーの認証情報も補われません。

  • Home:選択中のサービス、接続状態、Global Routingを確認し、まずリクエストの基本的な処理経路を把握します。
  • Config:有効なファイル、Ruleの順序、ポリシー名を確認し、Configでリクエストがどう振り分けられるかを把握します。
  • Settings → On Demand:接続が開始される条件を確認します。手動で切断した後に再接続される場合は、まずここを確認してください。
  • プロトコルのパラメーター:Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuardは、サービスへの接続方式を表します。Proxyを選んでもプロトコルは自動で変更されず、誤ったパラメーターも修正されません。
  • サブスクリプションの更新:既存のサブスクリプションを更新したら、現在選択中のサービスが引き続き有効か、設定内のポリシー参照が利用可能な項目に対応しているかを確認します。

個別サービスの追加、サブスクリプションの更新、設定ファイルの切り替えは、それぞれ異なる操作です。通常、サブスクリプションはサービス項目の管理に使われます。一方、設定ファイルにはルールやその他の設定が含まれる場合があります。「サブスクリプションを更新した」ことを「新しい振り分けルールが適用された」ことと同じだと考えないでください。更新後は実際の内容を確認し、HomeとConfigに戻って現在の選択項目を確認します。

トラブルシューティングで、根拠なくポートを変更するのは避けてください。サーバーのポート、TLS、通信方式などのパラメーターは、利用中のサービスから提供された情報と一致している必要があります。Global Routingが変更するのはルーティングの処理方法だけです。誤ったサーバーアドレスやポートが有効になるわけではありません。

6. よくある質問:切り替えても想定どおりにならない場合

DIRECTを設定したのに、なぜプロキシ経由になるのですか?

まずHome → Global Routingを開き、ProxyではなくConfigが選択されていることを確認します。次にConfigで有効なファイルを開き、宛先が先行するルールに一致していないか確認してください。アプリ内に記録された新しいリクエストを確認し、切り替え前から維持されている接続で新しいルールを判断しないようにしましょう。

Configでは使えるのにProxyでは開けません。ルールを変更すべきですか?

まず2つのリクエストで実際に使われた送信経路を比較してください。Configでは宛先がDIRECTになっている場合や、別のポリシーに対応するサービスが選択されている場合があります。Homeで現在選択中のサービスのパラメーターと利用可否を確認しましょう。送信経路の違いがわかるまでは元のルールを維持し、複数の要素を同時に変更しないでください。

Directを選んだのに、接続中の表示が消えないのはなぜですか?

Directはルーティング方式であり、切断ボタンではありません。クライアントの接続を停止するには、Homeの接続スイッチを使います。切断後に再接続される場合は、Settings → On Demandの条件を確認し、システムとアプリ内の接続状態も確認してください。

サブスクリプションを更新した後、以前の振り分けが想定どおりに動かなくなった場合は?

まずHomeで以前選択していたサービスが引き続き表示されるか確認し、次にConfigのポリシー参照と有効なファイルを確認します。Global Routingがテスト用のProxyやDirectのままになっていないことを確認してから、同じ宛先に新しいリクエストを送り、実際に一致したルールを確認してください。

普段からProxyを選んでおくべきですか?

宛先ごとに直接接続とプロキシを使い分ける場合は、内容を確認済みのConfigを使います。すべての通信をプロキシ経由にする必要がある場合に限り、Proxyを選択してください。テスト後はHome → Global Routing → Configに戻り、FINALのフォールバックポリシーが利用目的に合っているか確認します。

最終確認の順序は、接続状態、Global Routing、有効な設定、適用ルール、実際の送信経路に固定できます。この順で確認すれば、「未接続」「モードの選択ミス」「ルールに不一致」「サービスが利用できない」を切り分けて対処できます。用語は用語集でも確認できます。

Shadowrocketの入手と初期設定

ShadowrocketはAppleプラットフォーム向けの有料クライアントで、入手先はApp Storeのみです。デベロッパ名がShadow Launch Technology Limitedであること、公式アイコン、アプリID 932747118を確認してください。クライアントの買い切り購入と接続サービスのプランは別のものです。主な対応デバイスはiPhone / iPadです。その他のAppleデバイスとの互換性とシステム要件は、App Storeの製品ページをご確認ください。当サイトではノードやサブスクリプションの提供・販売・推奨は行っていません。

App Storeで正規アプリを確認 使い方を見る
App Storeで正規アプリを確認購入と復元について