システムプロキシとルーティングの違い|v2rayNの全プロキシ・中国本土バイパス・直接接続を解説

システムプロキシとルーティングの違いを解説。全プロキシ・中国本土バイパス・直接接続の通信経路を比較し、用途別の設定例を紹介します。

この記事の要点

システムプロキシは、設定に従うアプリのリクエストをローカルプロキシへ送るかどうかを決めます。ルーティングモードは、リクエストがコアに届いた後の接続先を決めます。普段は「システムプロキシを設定+中国本土バイパス」から始め、ログで適用ルールを確認しましょう。全プロキシは出口を統一したい場合や切り分けに、直接接続はローカルネットワークの確認に使えます。ポート確認、コマンドによるテスト、設定変更後の検証方法も紹介します。

システムプロキシとルーティング:入口と出口を切り分ける

v2rayNは、ノードの管理やプロキシコアの起動、各種設定を行うデスクトップクライアントです。システムプロキシはノードでもルーティングルールでもありません。システムプロキシに従うアプリに、リクエストをどのローカルアドレスへ送るかを指定します。リクエストをコアが受け取ってから、ルーティング設定に応じてプロキシ経由、直接接続、またはブロックのいずれかが選ばれます。

そのため、「全プロキシを選んだのに、特定のアプリは直接接続する」という状況は矛盾ではありません。アプリがシステムプロキシを無視し、ローカルプロキシも手動設定せず、ほかの通信取り込み機能も使っていなければ、接続はコアに届きません。プロキシに入っていないリクエストには、ルーティングルールを適用できません。

  1. アプリ側:ブラウザー、コマンドラインツールなどのアプリがシステムプロキシを使うかどうかを決めます。アプリ独自のプロキシ設定を使う場合もあります。
  2. ローカルの入口:リクエストがローカルのHTTP、SOCKS、または混合ポートに届き、コアに受け渡されます。
  3. ルーティング判定:ドメイン、宛先IP、ポートなどの条件に基づいて、ルールを順に照合します。
  4. 外部への接続:選択したノードを経由して宛先へ接続するか、ローカルネットワークから直接接続します。

全プロキシ・中国本土バイパス・直接接続:ルーティングの選び方

モード名が示すのはルーティングルールの構成であり、通信結果が常に固定されるわけではありません。v2rayNの画面やカスタムルールセットによって名称が異なる場合があります。実際の動作は、現在のルール順、照合条件、デフォルトの接続先で確認してください。特に「中国本土バイパス」は、すべてのサイトの所在地をリアルタイムで判定する設定ではありません。

中国本土バイパス

おすすめ

一般的なルールでは、中国本土向けのドメイン、中国本土のIPアドレス、LAN内アドレスは直接接続し、それ以外はプロキシ経由にします。ドメインやIPの分類はルールデータに基づきます。CDNの利用、未登録ドメイン、DNS応答の変化などがある場合は、ログで実際の接続先を確認してください。

おすすめ:日本国内と海外のサイトを併用する普段のデスクトップ利用

全プロキシ

通常、先行する例外ルールに該当しないリクエストをプロキシノードへ送ります。ルーティングの誤判定を比較する際に便利ですが、すべてのアプリがプロキシに接続されるとは限りません。LANやDNSなどの通信が必ず同じ経路を使うわけでもありません。

おすすめ:プロキシの出口を統一したい場合や、ルーティングルールを一時的に検証する場合

直接接続

コアに届いたリクエストは、通常、リモートノードを経由せず直接接続します。ローカルの待ち受けは引き続き動作するため、アプリのプロキシ設定を変えずに、ローカルネットワークから宛先へ接続できるか確認できます。

おすすめ:ローカルネットワークの比較テストや、宛先へ直接接続する場合

確認の順序:まず通信の取り込みを確認し、次にルーティングを比較

まず同じリクエストがローカルの待ち受けポートに届くことを確認してから、中国本土バイパスと全プロキシをそれぞれ試します。前者では失敗し、後者では成功し、さらにログで接続先が変わったことを確認できた場合に、ルーティングルールを優先して調べます。ノード、ポート、DNSを同時に変更しないでください。

v2rayNの設定手順:入口とルーティングを分けて調整

クライアントを起動して、利用可能な既存ノードを選び、ローカルの待ち受けを確認します。Windowsでは、タスクトレイのアイコンを右クリックして表示されるメニューに「システムプロキシ」や「ルーティング」があるのが一般的です。デスクトップ画面に同様の選択項目が表示される場合もあります。macOSではメニューの場所やシステムの許可ダイアログが異なることがあるため、Windowsのタスクトレイと同じ操作を前提にしないでください。

  1. 待ち受けを確認:「設定」→「パラメーター設定」を開き、ローカルの待ち受けポートやインバウンド関連の項目を探します。現在のポート番号とプロトコルを控えてください。画面によって項目の場所が異なる場合があるため、表示中の画面を確認してください。
  2. 入口を設定:「システムプロキシ」メニューから「システムプロキシを自動設定」または同等の項目を選び、システムプロキシに従うアプリがローカルの待ち受けを使うようにします。
  3. ルーティングを選択:「ルーティング」の選択画面で、中国本土バイパスのルールセットを選びます。インポートしたルールセットを使う場合は、デフォルトの接続先とプライベートアドレスのルールを先に確認してください。
  4. 新しい接続を作成:設定を適用してから宛先へ再アクセスします。必要に応じて、開いているページを閉じるかテスト対象のアプリを再起動し、既存接続の再利用による影響を避けてください。
  5. ログを確認:コアが起動し、待ち受けが成功していることを確認してから、宛先へのリクエストに選ばれた接続先を調べます。現在のログレベルでアクセス記録が表示されない場合は、一時的に該当するアクセスログを有効にし、テスト後に元に戻してください。

「システムプロキシを解除」は、システムレベルのプロキシ設定を解除する操作です。ブラウザー拡張のプロキシ設定やターミナルの環境変数は自動で削除されず、TUNも停止しません。「システムプロキシを変更しない」は、通常、クライアントが現在の設定に手を加えないことを意味します。プロキシが無効になっている証拠として扱わないでください。

設定の組み合わせシステムプロキシに従うアプリの動作確認が必要な点
システムプロキシを設定+中国本土バイパスコアに入り、ルールに従って振り分けルールデータやDNSの結果が照合に影響する場合がある
システムプロキシを設定+全プロキシコアに入った後、通常はプロキシノードを経由先行する例外ルールにより直接接続またはブロックされる場合がある
システムプロキシを設定+直接接続コアに入った後、ローカルから直接接続ローカルのプロキシサービスを停止する設定ではない
システムプロキシを解除+任意のルーティングこのシステム設定を通じて通信が取り込まれることはなくなる手動プロキシ、環境変数、TUNは別途確認

ローカルポートとコマンドで確認:リクエストがコアに届くか検証

以下では例として、HTTP待ち受けを 127.0.0.1:10809、SOCKS待ち受けを 127.0.0.1:10808 とします。これらはすべてのバージョンでの既定値ではありません。混合ポートを1つだけ使う設定もあります。コマンドを実行する前に、パラメーター設定で実際に有効になっているポートへ置き換えてください。HTTPリクエストをSOCKS専用ポートへ送らないよう注意してください。

10809
この記事で使用するHTTP待ち受けポートの例
10808
この記事で使用するSOCKS待ち受けポートの例
15秒
テストコマンドの最大実行時間

Windowsでは、ターミナルから curl.exe を実行すると、PowerShell環境によって同名の別名が引数の解釈に影響する問題を避けられます。以下の2つのコマンドはプロキシを明示的に指定するため、システムプロキシの設定状態には依存しません。例の宛先はHTTPレスポンスの確認用です。一度成功しただけで、すべてのサイトやプロトコルが正常だとは判断できません。

curl.exe --proxy http://127.0.0.1:10809 --connect-timeout 5 --max-time 15 -I https://example.com/
curl.exe --proxy socks5h://127.0.0.1:10808 --connect-timeout 5 --max-time 15 -I https://example.com/

macOSのターミナルでは、コマンド名を curl に変更できます。2つ目のコマンドの socks5h は、宛先ドメインの名前解決をプロキシ側で行う指定です。curlがローカルで名前解決してIPアドレスに変換する方式とは異なります。この違いはコアが受け取る宛先情報やドメインルールの照合結果に影響する場合があります。テスト時は使用したプロキシプロトコルを記録し、2種類の名前解決経路を混同しないでください。

中国本土バイパスのルール範囲:ドメイン、IP、DNS

一般的なV2RayやXrayのルーティングでは、ドメインの分類条件に geosite:cn、IPアドレスの分類条件に geoip:cn を使います。これらは対応するルールデータに依存しており、コアが地理的位置を独自に判定するわけではありません。ドメインが中国本土の分類に含まれていても、名前解決のたびに同じ地域のサーバーへ接続するとは限りません。宛先IPが特定地域に属していても、サイトのすべてのサービスに同じ接続先を使うべきとは限りません。

以下はルールの照合関係を示す部分的な設定であり、そのまま実行できる完全なクライアント設定ではありません。direct は、実際に存在する直接接続用アウトバウンドのタグと一致させる必要があります。どのルールにも一致しないリクエストがプロキシへ進むかどうかは、ほかのルールとデフォルトの接続先にも左右されます。v2rayNが自動生成した実行設定を直接上書きせず、クライアントのルーティング管理画面で該当ルールを調整してください。

{
  "routing": {
    "domainStrategy": "AsIs",
    "rules": [
      {
        "type": "field",
        "ip": ["geoip:private"],
        "outboundTag": "direct"
      },
      {
        "type": "field",
        "domain": ["geosite:cn"],
        "outboundTag": "direct"
      },
      {
        "type": "field",
        "ip": ["geoip:cn"],
        "outboundTag": "direct"
      }
    ]
  }
}

プロキシモードのよくある質問:症状から原因を絞り込む

全プロキシを選んだのに、ターミナルがプロキシを使わないのはなぜ?

システムプロキシを参照しないコマンドラインツールもあります。まず、上記の --proxy を使うコマンドで、実際の待ち受けポートを明示して試してください。成功したら、ツールの説明に従ってプロキシ引数や環境変数を設定します。クライアントに「全プロキシ」と表示されているだけで、ターミナルの接続先を判断しないでください。

中国本土バイパスでは開けず、全プロキシなら開ける場合、すぐにノードを変更すべき?

ノードはそのままにして、同じ宛先に対する2つのモードの接続先記録を比較します。中国本土バイパスでは直接接続、全プロキシではプロキシ経由になっている場合は、ドメイン分類、IP分類、先行するカスタムルールを確認してください。必要に応じて対象宛ての明示的なルールを追加し、範囲の広いルールより前に配置します。

システムプロキシを解除したのに、ブラウザーがプロキシを使うのはなぜ?

ブラウザー拡張、独自のプロキシ設定、TUNの有効状態を確認してから、ブラウザーを終了し、再起動して新しい接続を作成してください。システムプロキシを解除しても、これらの独立した設定は自動で解除されず、確立済みの接続も終了しません。

全プロキシを有効にした後、ルーターの管理画面や社内ネットワークに接続できない場合は?

まず、LAN内アドレスや社内ドメインに直接接続するルールがあるか、ルールの優先順位に問題がないかを確認します。次に、システムプロキシの除外リストと社内DNSを確認してください。IPルールの調整だけでは、社内ドメインの名前解決に関する問題をすべて解決できません。テスト後は、元の業務ネットワーク設定に戻してください。

再現できるテスト条件を記録する

設定を変更するたびに1項目だけ変え、宛先ドメイン、ローカルポート、ルーティングモード、ログに表示される接続先タグを記録します。調査が終わったら、一時的な全プロキシを普段使うルールに戻し、中国本土のサイト、海外の宛先、LAN内サービスについて、それぞれ新しい接続でテストしてください。

v2rayN をダウンロードOSに合ったクライアントを選択