Android VPNのアプリ別設定|スプリットトンネルを使いこなす

スマホの全通信をVPNに通すのではなく、必要なアプリだけを保護する方法を紹介します。アプリの選択から接続テスト、ルールの調整、設定を初期状態へ戻す手順までまとめています。

AndroidでVPNを使うとき、端末上のすべての通信を同じトンネルへ送る必要があるとは限りません。ブラウザーや特定の業務アプリだけをVPN経由にし、動画、決済、家庭内機器の管理アプリなどは通常の回線に残したい場合は、スプリットトンネリングが役立ちます。アプリ別ルーティングを使えば、通信経路を用途ごとに分けながら、必要なアプリの接続だけを保護できます。

ただし、設定画面でアプリを選ぶだけでは十分ではありません。対象アプリが実際にVPN経由になっているか、対象外アプリが通常回線へ戻っているか、DNSやバックグラウンド通信が想定外の経路を使っていないかを確認する必要があります。この記事では、Androidでの考え方、公式クライアントや互換クライアントでの設定手順、接続テスト、トラブル時の調整、最後に初期状態へ戻す方法まで順番に説明します。

スプリットトンネリングの基本を理解する

スプリットトンネリングは、端末の通信を一つの経路へまとめず、アプリやルールによってVPN経由と通常回線に振り分ける機能です。たとえば、海外のサービスへ接続するブラウザーだけをVPNに通し、ローカルネットワーク上のプリンター管理アプリは直接接続にする、といった構成が可能です。全通信をVPNへ送る方式と比べ、不要な通信まで遠隔経路へ回さずに済むため、特定のアプリだけを対象にしたいときに向いています。

アプリ別設定には大きく二つの考え方があります。一つは「選択したアプリだけVPNを使う」方式で、許可リストに近い動作です。もう一つは「選択したアプリをVPNから除外する」方式で、除外リストに近い動作になります。同じアプリ一覧を表示していても、スイッチの意味が逆になることがあるため、設定前に画面の説明を読んでください。「VPNを使用しないアプリ」「選択したアプリのみ保護」「除外アプリ」といった表現を確認せずに保存すると、意図したルーティングと反対の結果になる場合があります。

90+

対応国

200+

回線

5

対応OS

不限

同時接続台数

QaVPNはWindows、macOS、iOS、Android、Linuxに対応しています。Androidでは公式クライアントを使えるほか、案内されているサブスクリプション形式に対応したクライアントへ設定をインポートする方法もあります。ただし、スプリットトンネリングの名称、対象アプリの指定方法、DNSの扱い、バックグラウンド動作はクライアントによって異なります。AndroidのOS設定にある常時接続VPNやVPN接続を解除する設定と、クライアント内のアプリ別ルールは別の機能として考えましょう。

基本の結論:最初はVPN経由にしたいアプリを少数だけ選び、通常回線に残すアプリとの動作差を確認してから対象を広げるのが安全です。

対象アプリとルールを選ぶ方法

最初に、どのアプリのどの通信を保護したいのかを具体化します。ブラウザーの閲覧だけなのか、メッセージアプリの接続も対象にするのか、仕事用アプリを常時VPNへ送るのかによって適切な設定は変わります。アプリをたくさん選ぶほど設定が複雑になり、問題が起きたときに原因を見つけにくくなります。目的のないアプリまで追加するより、利用目的と接続先が明確なものから始めるほうが管理しやすいでしょう。

アプリ別ルーティングは、必ずしもドメイン単位の制御ではありません。アプリが外部ブラウザーを呼び出す場合、ログイン画面だけ別アプリで開く場合、画像や動画を別の配信サービスから取得する場合は、通信の一部が対象外になることがあります。また、AndroidのシステムサービスやGoogle Play関連の通信は、一般のアプリ一覧に表示されないことがあります。アプリがVPN経由になっているかを検証するときは、画面表示だけでなく、そのアプリが実際に利用する接続先も意識してください。

仕事用と個人用のプロファイルを分けている端末では、同じ名前のアプリが複数表示されることがあります。個人プロファイル側だけを選択し、仕事用プロファイル側を選び忘れると、同じアプリに見えても通信経路が異なります。アプリのアイコン、プロファイル表示、パッケージ情報を確認し、設定後に両方の環境でテストしましょう。

Androidでアプリ別VPNを設定する手順

設定を始める前に、Androidのシステム更新、使用するVPNクライアント、サブスクリプション設定を確認します。公式クライアントを使う場合は、サービスの案内からログインして接続設定を読み込みます。Clash系クライアントやsing-box系クライアントなどを使う場合は、対応する形式を選び、取得したリンクを正しい入力欄へインポートしてください。サブスクリプションリンクには認証情報に相当する情報が含まれる場合があるため、公開チャットや第三者の検査サイトへ貼り付けないでください。

  1. VPNクライアントを開き、アカウントまたはサブスクリプション設定を確認します。
  2. 利用するプロファイルまたはノードを選択し、通常のVPN接続が成立することを先に確認します。
  3. 設定、ルーティング、アプリ別VPN、スプリットトンネルなどの項目を開きます。
  4. 「選択したアプリのみVPNを使用」または「選択したアプリをVPNから除外」のどちらのモードか確認します。
  5. 対象アプリを選び、保存または適用を実行します。
  6. VPNをいったん切断して再接続し、アプリを完全に終了してからテストします。

クライアントによっては、AndroidのVPN許可ダイアログが表示されます。許可後に別のVPNアプリを起動すると、Androidの仕様上、同時に複数のVPN接続を維持できず、先に接続していたクライアントが切断されることがあります。Clash Vergeは主にデスクトップ向け、ShadowrocketはiOS向けとして使われることが多いため、Androidでは端末とクライアントの対応状況を確認し、無理に別OS向けの手順を適用しないでください。

プロトコルもルーティング設定とは別に確認します。Shadowsocks、VMess、Trojan、Hysteria2、WireGuardなどは接続方式を定めるもので、アプリ別の振り分けそのものではありません。Hysteria2のようにUDPを利用する方式は、現在のネットワークでUDPが制限されると接続できないことがあります。WireGuardを使う場合も、クライアント側のAllowedIPsやDNS設定によって全通信型になるか、特定経路だけになるかが変わります。配布された設定を手作業で変更する場合は、変更前の状態を保存しておきましょう。

接続後にアプリ別ルーティングを検証する

接続済みという表示だけでは、アプリ別設定が正しく動いているか分かりません。対象アプリと対象外アプリを一つずつ開き、出口地域、接続先、ログイン状態、読み込みの成否を比較します。対象アプリではVPN経由の出口を確認し、対象外アプリでは通常回線の出口が維持されているかを確認します。IP検査ページをブラウザーで開く場合も、そのブラウザーがVPN対象になっているかを先に把握してください。

テスト時は、以前のセッションやキャッシュを結果と混同しないようにします。アプリを最近使った状態では、DNS結果、ログインセッション、接続済みのソケットが残っていることがあります。VPNを切り替えた後にアプリを完全終了し、必要なら機内モードのオン・オフやネットワークの再接続を行ってから再試行します。Androidの省電力機能がバックグラウンド通信を止めていないか、VPNクライアントのバッテリー最適化が接続を中断していないかも確認しましょう。

確認対象 見るポイント 結果が違う場合の確認
VPN対象アプリ 想定した出口、サイト表示、ログイン、継続通信 アプリが一覧に含まれているか、プロファイルが有効か確認する
VPN対象外アプリ 通常回線での表示、ローカル機器への接続、通知 除外モードの意味とAndroid側の常時接続設定を確認する
DNSを使うアプリ 名前解決、接続先の地域、読み込みの一貫性 クライアントのDNS方式とプライベートDNSの設定を確認する
バックグラウンド通信 通知、同期、再接続、画面オフ後の動作 省電力設定、バックグラウンド制限、VPNの常時接続を確認する

接続が不安定な場合は、まずアプリ別設定を一時的に無効にして全通信型でテストします。全通信型では動くのにアプリ別設定で失敗するなら、対象アプリの選択、DNS、除外モード、関連アプリの不足が原因かもしれません。逆に全通信型でも接続できない場合は、ノード、プロトコル、ネットワーク、認証情報を先に切り分けます。複数の条件を同時に変更すると原因が分からなくなるため、一度に一つだけ調整してください。

うまく動かないときの調整と初期化

特定のアプリだけ接続できない場合、対象アプリがVPN一覧に入っているかだけでなく、別のアプリを経由して通信していないか確認します。ブラウザーを呼び出す認証画面、外部プレーヤー、ファイル選択画面などは、別のパッケージとして扱われることがあります。必要な関連アプリを追加して改善する場合もありますが、対象範囲を広げすぎると、どの通信がVPNを通っているのか管理しにくくなります。

通常回線に残したアプリが接続できない場合は、除外設定が実際に有効か、Androidの「VPNなしで接続を許可」に相当する設定が選ばれているかを確認します。Always-on VPNや「VPN接続なしでは通信を遮断」の設定が有効だと、クライアント内で除外したアプリも通信できないことがあります。公共Wi-Fiなどでログインページが必要な環境では、VPNを接続する前に認証を完了させると切り分けやすくなります。

設定を初期状態へ戻すときは、先に現在のサブスクリプション名、選択ノード、アプリ別ルールを記録します。その後、アプリ別ルールを「すべてのアプリをVPN経由」またはクライアントの標準モードへ戻し、保存します。不要なプロファイルを削除し、VPN接続を切断してからAndroidのVPN設定に残った登録を確認します。最後にクライアントを再起動し、通常回線、全通信VPN、アプリ別VPNの順で再テストしてください。アプリを削除して再インストールする場合は、サブスクリプションリンクを先に安全な場所で取得し直せる状態にしておきます。

最終確認:アプリ別VPNは「対象アプリを選ぶ」機能ではなく、選択、DNS、AndroidのVPN制御、バックグラウンド動作を組み合わせた通信ルールです。対象アプリと対象外アプリを対で検証し、問題があれば全通信モードへ戻してから一項目ずつ調整してください。
無料で始める