Android端末の通信をすべてプロキシへ送るのではなく、動画アプリ、ブラウザー、仕事用アプリなど必要なものだけを v2rayNG 経由にしたい場合は、アプリ別プロキシを使います。これはアプリごとの通信をVPNトンネルへ入れるか、端末から除外するかを v2rayNG 側で振り分ける機能です。通常の「プロキシ接続」とは異なり、ノードが接続できていても対象アプリの選択や除外モードを間違えると、通信が直接接続になったり、逆に想定外のアプリまでプロキシ経由になったりします。
本記事では、v2rayNGでアプリ別プロキシを有効にする前の確認、選択したアプリだけを通す設定、特定アプリを除外する設定、接続後の確認方法を順番に説明します。v2rayNGのビルドや日本語化状態によってメニュー名が少し異なる場合がありますが、「設定」「アプリ別プロキシ」「対象アプリ」「除外または選択モード」に相当する項目を探せば対応できます。
v2rayNGのアプリ別プロキシは、VPN接続を維持したままアプリ単位で通信経路を分ける機能です。動画やブラウザーだけをプロキシに通す方法と、ほとんどのアプリを通しながら一部だけ除外する方法を、設定手順と確認ポイント付きで整理します。
アプリ別プロキシの仕組みと通常接続との違い
v2rayNGがVPNモードで動作すると、AndroidのVPNサービスが端末の通信を仮想ネットワークインターフェースへ取り込みます。v2rayNGはアプリのUID、つまりAndroidが各アプリに割り当てる識別単位を使って、通信をトンネルへ入れるアプリと入れないアプリを分けます。選択されたアプリはXrayコアのローカル処理へ渡され、アクティブなVMess、VLESSなどの設定に従ってプロキシまたはダイレクトのアウトバウンドへ進みます。
ここで注意したいのは、アプリ別プロキシが「アプリ内のすべての通信を必ず同じ方法で処理する」機能ではないことです。アプリが別プロセスを使う場合、対象アプリとは別の補助サービスを起動する場合、Androidのシステム通信や常時接続サービスを使う場合は、一覧上の選択だけでは期待した結果にならないことがあります。また、アプリが独自のDNS処理、QUIC、独自VPN、暗号化DNSを使う場合も、通常のWebアクセスとは異なる挙動になります。
アプリ別プロキシでは、端末上の別のVPNアプリと同時利用できない点も重要です。広告ブロッカー、セキュリティアプリ、別の通信監視ツールなどがVPNを使用していると、v2rayNGがVPNサービスを開始できない、または先に動いていたVPNが停止することがあります。設定を始める前に、Androidの「設定」→「ネットワークとインターネット」→「VPN」で現在のVPN状態を確認してください。メーカー独自UIでは項目名が「接続と共有」などに変わることがあります。
選択モードと除外モードを使い分ける
v2rayNGのアプリ別プロキシには、概念上2つの使い方があります。1つ目は「選択したアプリだけをプロキシに通す」方式です。ブラウザーや動画アプリなど少数のアプリだけを対象にする場合に適しています。2つ目は「基本的にプロキシへ通し、指定したアプリを除外する」方式です。多くのアプリでプロキシを使い、銀行、社内ツール、LAN操作アプリなど一部だけを直接接続したい場合に向いています。
登録したアプリだけをVPN経由にします。対象が少ないときは通信範囲を明確に管理できます。
適している場面:動画、ブラウザー、特定のテストアプリ
VPN対象を広く保ち、一覧に入れたアプリだけを直接接続へ回します。
適している場面:大半をプロキシ、社内・金融アプリだけ直通
アプリ単位の振り分けを使わず、Androidの通常のVPN経路として扱います。
適している場面:原因切り分け、全端末通信の検証
「除外」は、選択したアプリをプロキシに追加する操作ではありません。除外一覧に入ったアプリの通信をVPNトンネルの対象から外し、端末の通常ネットワークへ戻す操作です。したがって、プロキシ経由では接続できるサービスを除外すると、アクセス元の地域やDNS経路が変わり、結果が悪化することがあります。反対に、LAN上の管理画面や地域制限のある業務サービスは、除外したほうが安定する場合があります。
- 動画アプリと海外向けブラウザーだけを通したい場合は、選択モードから始める。
- 通常はほとんどのアプリを通し、一部の業務アプリだけ直通にしたい場合は除外モードを使う。
- 対象アプリが少ない場合は、最初から全アプリ対象にせず、1つずつ追加する。
- 同じサービスの本体アプリと補助アプリが別々に表示される場合は、通信する関連アプリも確認する。
結論:最初は選択モードが安全
目的が「必要なアプリだけを通す」ことであれば、最初はブラウザーなど1〜2個だけを選び、通信経路を確認してから対象を増やす方法が最も戻しやすく、意図しないVPN経由も防げます。
v2rayNGでアプリ別プロキシを設定する手順
設定前に、v2rayNGで通常のノード接続が成立することを確認します。メイン画面で利用する設定を選び、接続を開始して、VPN接続の許可ダイアログが表示されたら内容を確認して許可します。アプリ別プロキシはノードの不具合を修正する機能ではないため、全アプリ対象でも接続できない状態でアプリ一覧を変更しても、原因の切り分けにはなりません。
ノードを確認
v2rayNGのメイン画面で使用するVMessまたはVLESS設定を選び、接続を開始します。ステータスが接続済みになり、通常のブラウザーで1ページ開けることを確認してください。
設定を開く
メイン画面のメニューから「設定」を開き、「アプリ別プロキシ」「アプリごとのプロキシ」などの項目へ進みます。バージョンによっては「VPN設定」付近に配置されています。
モードを選ぶ
「選択したアプリのみプロキシ」または「選択したアプリを除外」に相当するモードを選択します。目的が特定アプリだけの利用なら、選択モードを指定します。
対象を登録
アプリ一覧で対象アプリのチェックを有効にします。動画アプリだけなら動画アプリを1つ、ブラウザーだけなら使用するブラウザーを1つ登録し、複数の関連アプリを最初から一括選択しないでください。
再接続する
設定を保存した後、v2rayNGをいったん切断して再接続します。AndroidのVPN許可を再確認し、対象アプリを終了してから起動し直すと、古いソケットやキャッシュの影響を減らせます。
一覧のチェック状態だけでは、設定が実際に適用されたとは判断できません。設定変更後にVPNアイコンが表示されているか、v2rayNGの接続状態が継続しているか、対象アプリと対象外アプリの両方で通信結果が変わるかを確認します。なお、Androidの「常時接続VPN」や「VPN以外の接続をブロック」が有効な場合、除外したアプリの挙動が端末メーカーやAndroidのバージョンによって変わることがあります。
対象アプリだけ通っているか確認する
確認は、対象アプリ、対象外アプリ、DNSまたは接続ログの3方向から行います。まず対象アプリでWebページ、動画一覧、画像など複数の通信を発生させます。次に対象外アプリで通常のサービスへアクセスします。対象外アプリが動くことだけでは直通を証明できないため、経路確認サイトやサービス側の接続地域表示を使い、想定した出口になっているかを確認してください。
| 確認対象 | 見るポイント | 判断 |
|---|---|---|
| v2rayNG | 接続済み、VPNアイコン、エラーの有無 | VPNサービスとコアが動作しているか |
| 選択したアプリ | プロキシ側の出口やアクセス地域 | VPN経由になっているか |
| 選択していないアプリ | 通常回線の出口、LAN接続、名前解決 | 意図せずVPNへ入っていないか |
| Android VPN設定 | 別VPN、常時接続、接続をブロックする設定 | アプリ別設定と競合していないか |
Androidの設定画面に表示されるVPNアイコンは、どのアプリがプロキシを使ったかまでは示しません。通信が発生した時刻にv2rayNGのログを確認し、対象アプリを開いた直後に新しい接続記録が増えるかを見ます。ただし、ログにアプリ名が表示されるとは限らず、IPアドレスやドメイン名だけが記録される場合もあります。アプリのバックグラウンド通信とテスト操作を混同しないよう、対象アプリを強制停止してから再起動すると確認しやすくなります。
AndroidアプリがSOCKSやHTTPの手動プロキシ設定を持っている場合は、v2rayNGのVPN方式と二重に設定しないでください。v2rayNGの代表的なローカルSOCKS待受ポートは10808、HTTP待受ポートは10809ですが、端末の設定やコア構成によって異なります。VPNモードではアプリの手動プロキシ欄にこれらのポートを入力する必要は通常ありません。手動プロキシとVPNを重ねると、ループ、認証失敗、接続遅延が発生することがあります。
接続できないときの確認ポイント
設定後に対象アプリだけ接続できない場合、まずアプリ別プロキシを一時的に解除し、全アプリ対象または通常のVPN状態で同じアプリを試します。全アプリ対象でも接続できないなら、ノード、DNS、コア、ネットワークの問題です。全アプリ対象では接続でき、選択モードだけ失敗するなら、アプリのチェック状態、関連プロセス、除外モードの向きが主な確認箇所になります。
VPN方式
- 接続
- v2rayNGを接続済みにする
- 確認
- AndroidにVPNアイコン
- 競合
- 別VPNを停止
他のVPNサービスが先に動作していると、アプリ別設定の検証ができません。
ローカルプロキシ
- SOCKS例
- 127.0.0.1:10808
- HTTP例
- 127.0.0.1:10809
- 注意
- VPNと二重設定しない
手動プロキシを使うアプリでは、設定方式を1つに統一します。
「選択したはずのアプリが直通になる」場合は、選択モードではなく除外モードになっていないかを確認します。また、アプリ一覧で似た名前の別アプリを選んでいないか、仕事用プロファイル側のアプリを見落としていないかも確認します。Androidでは同じサービスが個人用と仕事用に別パッケージとして表示されることがあります。対象アプリを更新した後にパッケージ構成が変わった場合は、一覧から一度外して再登録します。
「除外したアプリまで接続できない」場合は、AndroidのVPN設定で「VPN以外の接続をブロック」が有効になっていないかを確認します。この機能はVPNトンネル外の通信を止めるため、v2rayNGの除外対象も通常回線へ出られないことがあります。さらに、Androidの省電力設定がv2rayNGや対象アプリを停止していないか、バックグラウンドデータ制限が有効でないかも確認してください。
VPN service is already running
原因と対処:別のVPNサービスまたはv2rayNGの古い接続が残っています。AndroidのVPN設定で利用中のVPNを停止し、v2rayNGを切断してから再接続します。
failed to start tunnel
原因と対処:VPN許可、ローカルポート、コア起動のいずれかに問題があります。VPN許可を再承認し、全アプリ対象で接続してからアプリ別設定へ戻ります。
connection timeout
原因と対処:対象アプリの問題とは限らず、ノードやネットワークが応答していない可能性があります。アプリ別設定を解除してブラウザーで同じノードを検証します。
アプリは接続するが一部機能だけ失敗
原因と対処:別プロセス、UDP、独自DNS、バックグラウンドサービスが対象外になっている可能性があります。関連アプリを追加し、必要なら全アプリ対象で差分を確認します。
動画アプリで再生だけ失敗し、一覧やログインは成功する場合は、動画配信のCDNドメイン、別の認証サービス、UDPまたはQUIC通信が関係していることがあります。アプリ別プロキシの問題と決めつけず、同じノードをブラウザーで試し、対象アプリの通信方式を比較してください。逆に、対象外アプリのLAN機器へ接続できない場合は、ローカルアドレスの通信までVPNへ送られていないか、ルーティングの直通規則が適切かを確認します。
安定運用のための見直し方
アプリ別プロキシは、一度設定したら終わりではありません。AndroidのOS更新、アプリ更新、v2rayNGの設定変更で、パッケージ名、通信方式、VPN権限の状態が変わることがあります。月に一度、または大きな更新後に、対象アプリが本当に想定した出口を使っているか、対象外アプリが通常回線へ戻っているかを確認してください。特に動画アプリは本体、ログイン、再生、通知で異なる通信先を使うことがあります。
- 対象アプリを必要最小限に保ち、目的が終わったアプリは一覧から外す。
- 除外対象には社内サービス、ルーター管理画面、LANストレージなどを登録する。
- 手動のSOCKS・HTTP設定とVPN方式を重ねず、どちらを使うか決める。
- ノードを変更した後は、対象アプリと対象外アプリを1回ずつ確認する。
- VPN接続を切断する必要があるアプリでは、利用後に必ずv2rayNGの状態を戻す。
目的が「動画とブラウザーだけをプロキシへ通す」ことであれば、選択モード、対象アプリを2つ、全アプリ対象のブロック設定を無効、という小さな構成から始めると管理しやすくなります。一方、端末上の多くの通信をプロキシへ送りたい場合は除外モードが便利ですが、VPN外通信をブロックする設定との組み合わせを必ず確認してください。v2rayNGの接続表示だけで判断せず、アプリごとの出口、ログ、AndroidのVPN状態を合わせて確認することが、安定したアプリ別プロキシ運用につながります。