システムプロキシ、グローバルモード、中国本土バイパスモードは、同じクライアント画面に表示されることが多いものの、同じ階層の機能ではありません。システムプロキシは、アプリが接続をローカルプロキシポートへ渡すかどうかを決めます。一方、後者2つは、接続が V2Ray または Xray のコアに入った後、どのアウトバウンドから送信するかを主に決めるものです。「通信の入口」と「コアのルーティング」を分けて考えることが、Webページが開けない、中国本土のサイトが遅い、一部のプログラムだけプロキシを経由しないといった問題を切り分ける基本になります。

この記事の概要

この記事は、v2rayN や v2rayNG を使い始めたばかりで、トレイメニューとルーティングプリセットの違いに迷いやすい方を対象にしています。読み終える頃には、アプリの通信がコアに入っているか、グローバルと中国本土バイパスの実際の範囲、ブラウジング・開発・ダウンロード・モバイル通信に適したモードを判断できるようになります。

まず2つの制御層を区別する:入口はシステムプロキシ、出口はルーティングモード

デスクトップ環境では、v2rayN がコアを起動するとローカルポートで待ち受けます。一般的な構成では、SOCKS の入口は 127.0.0.1:10808、HTTP の入口は 127.0.0.1:10809 です。実際のポートは v2rayN の「設定」→「パラメータ設定」で確認してください。古い設定の移行、ポートの競合、ユーザーによる変更などで値が変わる場合があります。

システムプロキシを有効にすると、クライアントはOSのプロキシアドレスをこれらのローカルポートへ向けます。ブラウザやシステムプロキシ設定に従うデスクトップアプリは、以後リクエストを v2rayN に渡します。システムプロキシを無効にしても、OS上の入口の指定が解除されるだけで、コアが停止するわけではなく、確立済みの接続が必ず終了するわけでもありません。SOCKSアドレスを手動指定したアプリは、引き続きローカルプロキシを利用できます。

システムプロキシのみ有効

OSの設定に従うアプリをローカルプロキシポートへ接続します。最終的な経路は、現在のルーティングルールとアウトバウンド設定で決まります。

適した用途:ブラウザ、一般的なデスクトップアプリ、必要なときだけ行う日常の接続

グローバルルーティングモード

コアに入った通常のリクエストを優先的にプロキシアウトバウンドへ送るため、複雑なルールによる接続判定の影響を抑えられます。

適した用途:短時間のトラブル対応、ルールの誤判定、出口の統一テスト

中国本土バイパスモード

おすすめ

中国本土のドメインと中国本土のIPは通常ダイレクト接続し、それ以外の該当トラフィックをプロキシアウトバウンドへ送ります。アクセス経路と日常の使いやすさを両立できる設定です。

適した用途:長時間のブラウジング、仕事、中国本土と海外のサービスを併用する場合

つまり、「システムプロキシを有効にして中国本土バイパスを使う」ことは、2つの独立した機能を組み合わせた状態であり、互いに排他的な選択肢ではありません。前者がシステムプロキシに対応する通信をコアへ送り、後者がドメイン、IP、ポート、またはインバウンドタグに応じて directproxyblock などのアウトバウンドを選択します。

  • アプリケーション層:プログラムがシステムプロキシを読み取るか、127.0.0.1 のプロキシポートを手動で指定しているか。
  • インバウンド層:HTTP、SOCKS、透過プロキシの入口が正常に待ち受けているか、ポートを別のプログラムが使用していないか。
  • ルーティング層:ドメイン、IP、プロトコル、ポートのルールをどの順序で照合するか。
  • アウトバウンド層:ルールに一致した後、プロキシノードを使うか、直接接続するか、接続を遮断するか。

システムプロキシの適用範囲:一部のプログラムが直接接続する理由

システムプロキシは、デスクトップ環境全体の通信を自動的に引き受ける仕組みではありません。多くのブラウザはシステム設定を読み取りますが、一部のダウンローダー、コマンドラインツール、ゲームランチャー、独自のネットワーク処理を実装したプログラムは設定を無視することがあります。そのため、v2rayN のトレイアイコンでシステムプロキシが有効になっていても、そのプログラムだけが対象アドレスへ直接接続する場合があります。

10808
一般的なローカル SOCKS ポート
10809
一般的なローカル HTTP ポート
127.0.0.1
本機からのみアクセスできる待受アドレス
4項目
入口・ルーティング・アウトバウンド・DNSの確認ポイント

プログラムがプロキシ経路に入ったかどうかを判断する際、ノードの遅延だけを見るのは不十分です。コアのログ、プログラム自身のプロキシ設定、出口アドレスを同時に確認する方が確実です。たとえばコマンドラインツールでは、HTTPプロキシを明示して比較用のリクエストを1回実行できます。プロキシを指定したときだけ新しい接続がログに記録されるなら、そのツールは通常、システムプロキシを使っていないことが分かります。

curl --proxy http://127.0.0.1:10809 https://api.ipify.org
curl https://api.ipify.org

2回のリクエストで最小限の比較ができます。1回目はローカルHTTP入口を明示的に経由し、2回目はコマンドラインツールのデフォルトのネットワーク設定を使います。出口アドレスが変わるかどうかは、ノード、現在のルーティング、ローカルネットワークによって異なりますが、コアのログに該当する接続が現れるかどうかで、リクエストが v2rayN に入ったかを直接確認できます。テスト後にサブスクリプションやノードの設定を変更する必要はありません。

ポートは本機の設定を基準にする

1080810809 はよくある例であり、すべてのインストール環境で固定された値ではありません。アドレスが使用中だというログが出た場合は、ノードを何度も切り替えるのではなく、「設定」→「パラメータ設定」で待受ポートを確認してください。

Androidでは、v2rayNG と v2flyNG は通常、システムが提供するVPNサービスを通じて通信を受け取ります。これはデスクトップのシステムプロキシとは概念が異なります。v2rayNG は Xray コア、v2flyNG は v2fly コアを使用しますが、どちらも通信がコアに入った後にルーティングルールを適用できます。アプリ単位のプロキシを有効にしている場合は、対象アプリが選択範囲に含まれているかも先に確認してください。

グローバルモードの本当の意味:グローバルルーティングでも全通信を引き受けるわけではない

グローバルモードは通常、コアに入った通信の大部分をプロキシアウトバウンドへ送ることを意味します。ノードの接続性を一時的に確認するのに適しています。中国本土バイパスモードで開けなかったドメインがグローバルに切り替えると開ける場合、原因はノード本体よりも、ドメイン分類、DNSの結果、またはルールの順序にある可能性が高くなります。

おすすめの手順:まず入口を確認し、その後グローバルモードで短時間比較する

デスクトップ版 v2rayN
  • トレイメニューでシステムプロキシを有効にする
  • 「設定」→「パラメータ設定」でローカルポートを確認する
  • 一時的にグローバルルーティングへ切り替え、コアのログを確認する
Android版 v2rayNG
  • VPNサービスが確立していることを確認する
  • 「設定」→「ルーティング設定」にある定義済みルールを確認する
  • アプリ単位のプロキシに対象アプリが含まれているか確認する

グローバルモードは障害範囲を絞り込む用途に有効です。長期的に使う前に、ローカルサービスへのアクセス、帯域の経路、必要なルールを踏まえて維持するか判断してください。

グローバルモードにも適用範囲の限界がある

「グローバル」とは現在のルーティング方針を表すもので、すべてのアプリのネットワーク処理を自動的に変更するわけではありません。システムプロキシを無視するデスクトップアプリは直接接続することがあります。また、本機のHTTPまたはSOCKS入口だけで待ち受けるクライアントは、入口に入っていない接続をルーティングプリセットだけで捕捉できません。LAN内のデバイスの通信も、本機をグローバルモードに切り替えただけで自動的にプロキシを経由することはありません。

  • 本機のループバックアドレスとLANアドレスは通常、ダイレクト接続のままにしてください。プリンター、ルーターの管理画面、ローカル開発サービスへの接続を失うのを防げます。
  • ノードサーバー自身への接続を同じプロキシアウトバウンドへ再度送ると、ループが発生する可能性があるため避けてください。
  • DNSクエリはシステム、コア、アプリがそれぞれ発行する場合があります。ルーティングモードの名称だけでは、DNSの実際の出口までは判断できません。
  • 確立済みの長時間接続には新しいルールがすぐ適用されない場合があります。切り替え後は対象プログラムを開き直すか、接続を再確立してください。

グローバルモードを短時間使うのに適した場面

サブスクリプション更新後に一部のサイトだけ異常がある場合、カスタムルールの誤マッチが疑われる場合、または VMess、VLESS ノード自体が接続を確立できるか確認したい場合、グローバルモードを比較用に使えます。ルール分岐は減らせますが、ノードパラメータ、システム時刻、トランスポート設定、ポート競合を修正するものではありません。グローバルモードでも失敗するなら、ログにあるハンドシェイク、DNS、接続タイムアウトの情報を確認してください。

  1. 状態が正常なノードを1つ選び、コアが起動していることを確認する。
  2. システムプロキシを有効にするか、対象アプリがローカルプロキシを手動指定していることを確認する。
  3. グローバルルーティングへ切り替え、対象ページを閉じてから開き直す。
  4. ログに記録された対象ドメイン、適用されたアウトバウンド、エラーの種類を記録する。
  5. 元のルーティングモードに戻し、同じリクエストをもう一度実行して比較する。

中国本土バイパスモードの仕組み:ドメインルール、IPルール、照合順序

中国本土バイパスモードは通常、ドメイン分類とIPの地理情報を使って通信を振り分けます。中国本土でよく使われるドメイン、中国本土のネットワーク帯域に解決されるアドレス、プライベートネットワークのアドレスはダイレクト接続へ、それ以外の通信はプロキシアウトバウンドへ送られます。クライアントのバージョン、ルーティングデータのバージョン、サブスクリプションに付属する設定によって差があるため、モード名が同じでもルールの内容が一つひとつ同じとは限りません。

  1. まず対象情報を取得:コアは接続からドメイン、対象IP、ポート、ネットワーク種別、インバウンドタグを取得します。
  2. 配列の順序で確認:ルーティングルールは通常、上から順に照合されます。一致すると指定されたアウトバウンドを使い、後続の通常ルールは確認しません。
  3. ドメインと解決結果を処理:ドメイン分類だけで判定するポリシーもあれば、名前解決で得たIPから地域を判定するルールもあります。
  4. フォールバックのアウトバウンドへ:先行ルールに一致しなかった接続は、デフォルトルールに従ってプロキシまたはダイレクト接続へ送られます。

フィールドの記述順よりルールの順序が重要

JSONオブジェクト内のフィールド順は通常、解析結果を変えません。しかし、ルーティングルール配列の順序は最初に一致するルールに影響します。カスタムのドメイン直結ルールは広範なプロキシルールより前に置き、ブロックルールも先にあるワイルドカードルールに覆われないようにしてください。

たとえば、中国本土のサービスが海外CDNを使っている場合や、海外サービスの静的リソースが中国本土のノードに配置されている場合、IPの地域情報だけではユーザーの想定と異なる出口になることがあります。ドメインルールは「このサービスをどの経路に通すか」を表すのに適しており、IPルールはドメインのない接続や名前解決結果を補う用途に向いています。誤った振り分けが起きたら、まずログでコアがドメインを認識しているのか、純粋なIPとして認識しているのかを確認してください。

DNSも判定に影響します。アプリが独自に暗号化DNSを使う場合、コアがドメイン解決を引き受ける場合、システムDNSが異なるアドレスを返す場合では、同じドメインでも別のIPルールに一致する可能性があります。切り分け中にDNS、ノード、ルーティングを同時に大きく変更すると、どの変更が結果を生んだのか分からなくなります。毎回1つの変数だけを変更し、接続を再確立する方法が安全です。

用途別の選び方:日常利用、開発、ダウンロード、モバイル通信

多くのデスクトップで日常的に使うなら、システムプロキシを有効にして中国本土バイパスモードを選ぶのがよい出発点です。中国本土のサービスは短いダイレクト経路を維持し、それ以外の通信はルールに従ってプロキシへ送られます。ルールの誤判定、出口の統一、障害比較が必要なときだけ、グローバルモードへ短時間切り替えてください。

ブラウザは開けるのに、コマンドラインのダウンロードだけタイムアウトする場合、グローバルへ切り替えるべきですか?

まずルーティングを切り替えないでください。「設定」→「パラメータ設定」でHTTPポートを確認し、コマンドラインツールに http://127.0.0.1:10809 を明示的に設定します。その後コアのログにリクエストが現れれば、元の問題はプログラムがシステムプロキシを使っていなかったことです。

中国本土バイパスモードでサイトが開けず、グローバルにすると開ける場合はどうすればよいですか?

コアのログにあるドメインとアウトバウンドタグを確認し、ダイレクト接続に分類されていないか調べます。そのドメイン用のプロキシルールを追加し、広範な中国本土ドメインまたは中国本土IPルールより前に置いてから、接続を再確立してテストしてください。

モードを切り替えても、なぜページの出口が変わらないのですか?

ブラウザが既存の長時間接続を再利用している可能性があります。該当タブを閉じて接続が解放されるまで待ち、必要であれば対象アプリを再起動してから、出口確認ページにもう一度アクセスしてください。古いページを更新するだけでルールの反映を判断しないでください。

グローバルモードを有効にした後、ローカル開発用アドレスにアクセスできない場合はどうすればよいですか?

localhost127.0.0.0/8、実際に使用するLANのネットワーク帯域にはダイレクト接続ルールを残し、グローバルプロキシのフォールバックルールより前に配置してください。ローカルポートのサービスをリモートノードへ送るべきではありません。

v2rayNG は接続済みなのに、Androidアプリの通信記録がない

アプリ単位のプロキシ設定を開き、現在の方式が包含方式か除外方式かを確認し、対象アプリが該当リストに入っているか調べます。その後VPNサービスを切断して再接続し、アプリ範囲の設定を反映させてください。

開発環境では、パッケージマネージャー、コンテナ、仮想マシン、ローカルのコールバックアドレスに追加対応が必要になることがあります。ブラウザがシステムプロキシを使っていても、ターミナル、コンテナ内部、仮想マシンが同じ設定を自動的に継承するとは限りません。各環境のHTTP、HTTPS、SOCKSプロキシ変数を個別に確認し、社内リポジトリ、ローカルAPI、ループバックネットワークはダイレクト接続に設定してください。

  • 日常のブラウジング:システムプロキシを有効にし、中国本土バイパスを通常のルーティングとして使います。特定サイトだけ問題がある場合は、正確なドメインルールを追加します。
  • ルールのトラブル対応:一時的にグローバルモードで比較し、ログを保存してから元のルーティングに戻します。
  • ダウンロードツール:まずツール自体のプロキシメニューを確認し、システムプロキシのアイコンだけで判断しないでください。
  • ローカル開発:localhost、ループバックアドレス、実際のLANネットワーク帯域を明示的にダイレクト接続へ設定し、コールバックの経路が遠回りにならないようにします。
  • Androidデバイス:デスクトップのシステムプロキシの考え方をそのまま当てはめず、VPN接続、ルーティングプリセット、アプリ単位の範囲を確認します。

モード切り替え前後の標準チェック手順

安定した切り分けでは、まず入口、次にルーティング、最後にノードを確認します。複数のノード、DNS設定、モードを次々に切り替えると、ログの比較価値が失われます。以下の手順は v2rayN に適用でき、v2rayNG のVPN、ルーティング、コアログ画面にも対応します。

  1. コアの状態を確認:クライアント起動後にログを確認し、ローカル待受が成功していること、address already in use のようなポート使用中エラーがないことを確認します。
  2. 通信の入口を確認:デスクトップではシステムプロキシまたはアプリ内プロキシを確認し、AndroidではVPNサービスとアプリ単位の範囲を確認します。
  3. テストノードを固定:比較中は1つのノードだけを使い、ノードの違いが結論に影響しないようにします。
  4. 2種類のルーティングを個別にテスト:まず中国本土バイパスを使い、次にグローバルへ切り替え、毎回対象接続を再確立します。
  5. 一致結果を確認:画面上の遅延だけでなく、対象ドメイン、対象IP、アウトバウンドタグ、エラーの種類を記録します。
  6. 変更は最小限に:誤った振り分けが原因なら正確なルールを1つだけ追加し、入口の問題ならアプリのプロキシ設定だけを調整します。

選び方の結論

システムプロキシは、デスクトップアプリをローカルプロキシへ入れるための入口スイッチです。グローバルモードは、出口を統一したりルールを切り分けたりするためのルーティング戦略です。中国本土バイパスモードは、さまざまな接続先を併用する場面で、多くのユーザーにとって長期利用の出発点になります。3つは入口とルーティングという異なる層で組み合わせるもので、同じグループの排他的なボタンとして捉えるべきではありません。

特定のプログラムがモード切り替えの影響をまったく受けないなら、まずコアに入っているか確認します。同じプログラムがグローバルでは正常で中国本土バイパスでは異常になるなら、ルール分類とDNSを確認します。両方のモードで失敗する場合は、ノードパラメータ、ネットワークの到達性、システム時刻、コアのログに戻って調べてください。この順序で判断すれば、入口の問題をルーティングの問題と取り違えずに済みます。