この記事の要点

Androidでプロキシを使うには、まずVPN権限を確認し、次にバックグラウンド制限を解除してから、アプリごとの対象範囲を設定します。初回接続が拒否される、画面ロック後に切断する、一部のアプリだけプロキシを使いたい場合に役立つ内容です。順に確認すれば、通信がVPNに取り込まれていない、サービスが停止している、アプリが対象外になっている、という問題を切り分けられます。ノードを何度も変更する必要はありません。

VPN権限:まずAndroidの通信をVPNに接続する

v2rayNGはXrayコアでプロキシ接続を処理します。VPNモードではAndroidのVpnServiceを使って仮想ネットワークインターフェースを作成し、対象となるアプリの通信をクライアントに渡します。システムに表示される「接続リクエスト」は、この端末の通信をVPNに取り込むための許可です。サブスクリプションへのログインではなく、接続先サーバーへの接続成功を示すものでもありません。初回起動時に許可が必要ですが、権限が有効なら通常、次回以降は確認画面が表示されません。

通常、同じユーザーまたは仕事用プロファイルで同時に有効にできるVPNは1つです。ローカルVPNを使う別の通信フィルタリングアプリが動作中にv2rayNGを起動すると、既存の接続が置き換わることがあります。反対に、別のアプリがVPNを使用するとv2rayNGの接続が切断される場合もあります。仕事用プロファイルは組織の管理ポリシーで制限されることもあるため、個人用プロファイルの接続状態だけで判断しないでください。

  1. 動作モードを確認する

    v2rayNGのサイドメニューから「設定」を開き、VPNまたは動作モードの項目でVPNモードになっているか確認します。ビルドによって設定名は異なる場合があります。プロキシのみのモードでは、ほかのアプリの通信は自動的にVPNへ取り込まれません。

  2. 設定を選択する

    メイン画面に戻り、インポート済みで必要な項目がそろったサーバー設定を選んで、右下の接続ボタンをタップします。サブスクリプションを追加しただけでは設定一覧に項目が増えるだけで、サービスは起動しません。

  3. 接続を許可する

    AndroidのVPN接続リクエストで「OK」または「許可」をタップします。誤ってキャンセルした場合は、メイン画面に戻って接続をやり直してください。権限を拒否した状態をノードのタイムアウトとして扱わないようにしましょう。

  4. システムの状態を確認する

    システムの「設定」→「ネットワークとインターネット」→「VPN」を開き、接続先がv2rayNGになっていることを確認します。メーカー独自のシステムでは「接続と共有」や「その他の接続」にある場合があります。「VPN」と検索すると見つけやすくなります。

  5. 実際に通信できるか確認する

    プロキシ対象にしたブラウザーで目的のWebページを開き、クライアントのログも確認します。VPN接続中と表示されても、確立しているのは端末側のインターフェースだけです。接続先アドレス、TLS、DNS、ルーティングの問題でアクセスに失敗することがあります。

バッテリー最適化の対象外に設定して、画面ロック後の切断を防ぐ

画面点灯中は正常なのに、ロックしてしばらくすると接続が止まる場合は、プロトコルを変更する前にサービスが動作中か確認します。Androidのバッテリー最適化、メーカー独自のバックグラウンド管理、最近使ったアプリの手動終了は、プロセスに影響することがあります。一方、ネットワークの切り替えやスリープによって既存の接続だけが中断され、サービス自体は終了していない場合もあります。それぞれ対処方法が異なります。

以下は標準Androidに近い画面を想定した手順です。メーカーによって項目名は異なりますが、バックグラウンド実行の許可、バッテリー制限の解除、必要なバックグラウンド通信の許可を探してください。最適化対象外にしても、サービスが制限される可能性を下げるだけで、常時動作が保証されるわけではありません。接続先の問題も解決しません。

確認できる現象まず確認する項目次に行うこと
ロック後にシステムのVPN接続が消えるサービス停止、バックグラウンド制限、別のVPNによる置き換えバッテリー制限を緩和し、別のVPNが自動起動していないか確認する
VPN接続は維持されるが、ネットワーク切り替え後にアクセスできない既存の接続の失効、DNS、接続先への再接続ログを記録してから接続を停止・再起動し、結果を比較する
通知は消えたが、VPNは接続中通知権限と通知カテゴリー通知設定を確認し、通知の有無だけでサービスの稼働を判断しない
画面ロック後に特定のアプリだけ失敗する対象アプリ自体のバックグラウンドデータとバッテリー制限対象アプリとv2rayNGのシステム権限をそれぞれ確認する

まとめ:まずサービスの状態を記録してから省電力設定を変更する

同じネットワークで、画面点灯中と、画面をロックして10分後の2回アクセスし、VPNが接続中か、サービスが再起動しているかを記録します。10分は再現性のある確認時間の目安であり、システム制限が発動する固定時間ではありません。原因を特定できるよう、一度に変更する設定は1つにしてください。

アプリ別プロキシ:除外モードと選択アプリのみのモード

アプリ別プロキシでは、どのアプリの通信をVPNに取り込むかを指定します。取り込んだ後にどの経路へ送るかは、コアのルーティング設定で決まります。この2つは別の設定です。アプリを選んでも、すべての接続がリモートプロキシを経由するとは限りません。コアのルールが直接接続を選べば、その通信は直接接続されます。反対に、VPNから除外されたアプリは通常、システムの通常ネットワークを使い、このVPNのコアルールでは処理されません。

v2rayNGのサイドメニューから「アプリ別プロキシ」を開き、アプリ別設定を有効にしてから「除外モード」を確認し、アプリを選択します。ビルドによっては「設定」の中に項目があるなど、画面の表示が異なる場合があります。スイッチの説明を確認してください。除外モードが有効なら、チェックを付けたアプリが除外対象です。無効なら、チェックしたアプリがVPNの対象です。

選択したアプリだけをプロキシ経由にする

おすすめ

アプリ別設定を有効にし、「除外モード」をオフにして、VPNに取り込みたいアプリだけにチェックを付けます。まずはブラウザー1つで試しましょう。対象を絞ると、通信の入口とルーティングが想定どおりか確認しやすくなります。この方法はアプリ別設定を初めて確認するときの推奨手順であり、すべての利用状況に適しているという意味ではありません。

向いているケース:プロキシを使うアプリが少ない場合や、特定のアプリの通信問題を調べる場合。

選択したアプリをVPNから除外する

アプリ別設定を有効にし、「除外モード」をオンにして、VPNに取り込みたくないアプリにチェックを付けます。それ以外のアプリはこのVPNの対象になります。新しくインストールしたアプリも通常は対象に含まれるため、実際の設定を確認してください。

向いているケース:ほとんどのアプリをVPNに接続し、一部のローカルサービス用アプリだけ通常のネットワークを使う場合。

アプリ別設定とルーティング:通信の入口から接続先まで確認する

「ブラウザーは使えるのに、別のアプリが開かない」場合は、通信の入口、アプリ一覧、ルーティング、接続先の4段階で確認します。DNS、サブスクリプション、アプリ別モードを同時に変更しないでください。復旧しても原因を特定できなくなります。比較する2つのアプリでは、できるだけ同じような接続先にアクセスしてください。サービスごとの接続可否の違いだけでは、ルーティングの異常とは判断できません。

処理段階確認する内容よくある誤判定
システムのVPN接続権限が付与されているか、サービスが動作中か、別のVPNに置き換えられていないか設定をインポートしただけで接続も開始したと思い込む
アプリ別の対象一覧スイッチ、除外モード、対象アプリにチェックが付いているか除外対象の一覧をプロキシ対象の一覧と取り違える
コアのルーティングドメインまたはIPに一致したルールと、対応するアウトバウンドタグVPNに取り込まれれば必ずプロキシ経由になると思い込む
接続先と名前解決接続タイムアウト、TLSエラー、DNSの名前解決結果サーバーへの接続失敗をAndroidの権限の問題だと思い込む

たとえば「選択したアプリのみをプロキシ」に設定し、ブラウザーだけを選んだ場合は、まずブラウザーが新しい接続を確立できるか確認します。次にログで接続先アドレスとアウトバウンド情報を確認してください。ログの詳細はログレベルやコアの出力内容によって異なります。接続先の記録が見当たらないだけでは、そのアプリがVPNに取り込まれていないとは断定できません。アプリがキャッシュを使っている、以前の接続を維持している、または新たな通信を行っていない可能性があります。

よくある質問:権限・バックグラウンド動作・アプリ一覧

接続をタップしても権限の確認画面が表示されない場合は?

まずシステムの「設定」→「ネットワークとインターネット」→「VPN」を開き、v2rayNGがすでに接続中か確認します。権限が有効なら、確認画面は再表示されません。接続されていない場合は、クライアントがプロキシのみのモードになっていないか確認します。次に、別のVPNが常時接続に設定されていないか確認し、最後にクライアントの起動ログを確認してください。

「制限なし」に設定したのに、ときどき切断されるのはなぜ?

バッテリー設定で解除できるのは、バックグラウンド制限の一部です。まず、VPNの接続自体が消えるのか、VPNは接続中なのにWebページがタイムアウトするのかを区別し、それぞれメーカー独自のバックグラウンド管理とネットワーク切り替えを確認してください。テスト中はv2rayNGを手動で終了したり、アプリ情報から「強制停止」をタップしたりしないでください。強制停止するとサービスが停止します。

アプリにチェックを付けたのに、プロキシを経由しないのはなぜ?

まず「アプリ別プロキシ」を開き、「除外モード」を確認します。有効なら、チェックを付けたアプリは除外対象です。そのアプリだけをVPNに接続するには、除外モードをオフにし、対象アプリのチェックを残してください。その後、接続を停止して再接続し、対象アプリも開き直します。それでも解決しない場合は、コアのルーティングで直接接続になっていないか確認してください。

銀行アプリをVPNから除外してもネットに接続できない場合は?

まずシステムのVPN詳細を開き、「VPN未接続時の通信をブロック」が有効になっていないか確認します。次に、対象アプリ自体にモバイルデータの使用権限があるか確認してください。VPNが端末に存在することを検出して制限するアプリもあります。アプリ別設定でVPNから除外しても、その検出結果が変わるとは限りません。VPNを停止した状態でもテストし、VPNが問題に関係しているか確認してください。

v2flyNGに切り替えたら、すべての設定をそのまま使えますか?

v2rayNGはXrayコア、v2flyNGはV2Flyコアを使用しており、対応するプロトコルや設定項目は完全には一致しません。バックグラウンド動作の問題を解決する目的でクライアントを変更するのは避けてください。切り替える前にノードとの互換性を確認し、新しいクライアントでシステム権限、バッテリー制限、アプリ別の対象一覧を確認してください。

確認が終わったら、システムのバージョン、動作モード、アプリ別設定の状態、除外モードの状態、切断時にシステムのVPNが接続中だったかを簡潔に記録しておきます。ログを共有する前に、サブスクリプションURL、認証情報、個人の利用状況が特定される情報を削除してください。「接続できない」とだけ伝えるより、問題の切り分けが容易になります。