AndroidでVPNを常時有効にすると、海外サービスへの接続や公開ネットワーク利用時の保護には役立ちます。一方で、決済アプリ、銀行アプリ、社内システム、スマートホーム機器などは、VPN経由のアクセスを想定していない場合があります。接続元の地域やIPアドレスが変わることで、ログイン確認が繰り返されたり、通信そのものが拒否されたりすることもあります。
そこで役立つのがスプリットトンネルです。Android端末上のアプリごとに、VPNを通す通信と通常回線を使う通信を分けられます。動画や海外向けウェブサービスだけをVPN経由にし、決済や社内ツールは通常回線に残す、といった構成が可能です。ただし、クライアントによって設定名、対象アプリの指定方法、DNSの扱いが異なるため、単にスイッチを切り替えるだけでは十分ではありません。
Android版VPNのスプリットトンネル設定ガイド|アプリ別ルール
スプリットトンネルの仕組みと注意点
Androidの一般的なVPNクライアントは、システムのVPNServiceを利用して端末の通信経路を作ります。通常は端末内の複数アプリの通信が同じVPNインターフェースへ送られますが、アプリ単位のルールを設定すると、パッケージ名を基準に経路を分岐できます。クライアントによっては、VPNに含めるアプリを指定する「許可リスト方式」と、VPNから外すアプリを指定する「除外リスト方式」の両方に対応しています。
重要なのは、ブラウザのタブ単位ではなく、Androidにインストールされたアプリ単位で判定される点です。動画アプリ本体をVPN対象にしても、ログインや広告、決済、DRM確認を別の補助アプリが担当している場合、期待した結果にならないことがあります。また、同じサービスでも、通常版アプリ、軽量版、仕事用プロファイル版は別のパッケージとして扱われます。
90+
対応国の目安
200+
提供回線
不限
同時接続端末数
YJVPNではWindows、macOS、iOS、Android、Linuxに対応し、Androidでは公式クライアントのほか、互換性のある汎用クライアントへサブスクリプションを導入する構成も検討できます。対応プロトコルはクライアントごとに異なり、Shadowsocks、VMess、Trojan、Hysteria2、WireGuardなどの設定をすべて同じように読み込めるとは限りません。サブスクリプションが取得できても、対象プロトコルを解析できなければ、アプリ別ルールは正しく動作しません。
Androidクライアントを選ぶ基準
設定を簡単に済ませたい場合は、サービス提供元の公式Androidクライアントが適しています。ログイン、サーバー選択、接続許可、アプリ別ルールが一つの画面にまとまっていることが多く、初心者でも状態を確認しやすいからです。まず公式クライアントで試し、必要なルール項目が見つからない場合に汎用クライアントを検討する流れが安全です。
高度なルーティングを使いたい場合は、Android対応のsing-box系クライアントや、サービスが案内している互換クライアントを選びます。Clash Vergeは主にWindowsやmacOS向けのクライアントであり、Android端末の設定画面としてそのまま使うものではありません。ShadowrocketもiOS向けのクライアントなので、Androidでは代替となる対応アプリを確認してください。名称が似ている非公式アプリを、配布元を確認せずに選ぶのは避けましょう。
| 方式 | 向いている利用者 | 確認する項目 |
|---|---|---|
| 公式Androidクライアント | 導入と基本設定を簡単にしたい | アプリ別ルール、接続状態、更新方法 |
| sing-box系クライアント | ルーティングやDNSを細かく確認したい | 設定形式、プロトコル、ルールの優先順位 |
| その他の互換クライアント | 既存の設定形式を継続して使いたい | Android対応、提供元、サブスクリプション互換性 |
- ✅ Google Playまたはサービス提供元が案内する正式な配布元を確認する
- ✅ クライアントがAndroidのアプリ別VPNルールに対応しているか確認する
- ✅ サブスクリプションURLは自分のサービスパネルから取得する
- ❌ URLをオンライン変換サイトへ貼り付けたり、第三者へ共有したりしない
- ❌ Android端末でClash VergeやShadowrocketを無理に代用しない
アプリ別ルールを設定する手順
ここでは、VPN対象にしたいアプリだけを指定する構成を基本例として説明します。クライアントのバージョンやAndroidのメーカーによって表示は変わりますが、考え方は共通しています。最初から多くのアプリを登録すると原因を切り分けにくくなるため、テスト対象を少数に絞ってから広げるのがポイントです。
- Androidクライアントを開き、サービスパネルからサブスクリプションを追加します。URLを手入力する場合は、前後に空白が入っていないか確認し、同期後に利用可能なノードが表示されることを確認します。
- ノードを一つ選び、接続ボタンを押します。Androidが表示するVPN接続許可で、接続先アプリの名称と権限の内容を確認して許可します。
- クライアントの設定から「アプリ別プロキシ」「アプリルール」「VPN対象アプリ」などの項目を開きます。最初はVPN経由にしたいアプリだけを選ぶ許可リスト方式が分かりやすいでしょう。
- 動画、AIツール、ブラウザなど、VPN経由にしたいアプリを登録します。仕事用プロファイルや複製アプリを使っている場合は、同名のアプリが複数表示されないか確認します。
- ルールを保存してVPNを一度切断し、再接続します。設定変更後に再接続が必要なクライアントもあるため、一覧を変更しただけで適用済みと判断しないでください。
- VPN対象アプリと除外アプリをそれぞれ開き、通信結果を比較します。対象アプリだけが想定した経路を使い、決済や社内ツールが通常どおり動くかを確認します。
反対に、ほとんどのアプリをVPN経由にし、一部だけを通常回線へ戻したい場合は除外リスト方式が便利です。ただし、除外欄に登録したアプリがVPNを使わなくなるとは限りません。Androidの「常時接続VPN」や「VPNなしの接続をブロック」が有効だと、除外アプリの通信まで止まる場合があります。常時接続を使う場合は、ルール変更後にこのシステム設定も確認してください。
用途別のルール設計例
動画や地域によって表示内容が変わるサービスは、アプリ本体をVPN対象にします。ログイン画面だけが表示されない場合は、同じサービスに関連する認証アプリやブラウザの扱いも確認します。ただし、すべての関連アプリを一律にVPNへ送ると、決済処理や本人確認が失敗する可能性があります。視聴、ログイン、購入を同じ経路にする必要があるかを分けて考えましょう。
AIツールや開発用アプリでは、アプリ本体だけでなく、バックグラウンド同期、WebView、ブラウザログインが関係することがあります。最初にアプリ本体を対象にし、ログイン時だけブラウザを一時的に追加する方法が現実的です。企業の管理アプリや社内VPNが別に動いている端末では、二つのVPN接続を同時に有効にできないことがあります。Androidでは通常、システムが扱えるVPN接続は一つなので、社内ルールに従ってください。
決済、銀行、行政、配車、スマートホームのアプリは、通常回線へ残す候補です。これは常に除外すべきという意味ではなく、サービスの規約やセキュリティ方針に従って判断するという意味です。通常回線へ戻したアプリは、公共Wi-Fi上で通信する可能性もあるため、信頼できないネットワークでは利用しない、またはモバイルデータ通信へ切り替えるなど、経路そのものを意識してください。
- ✅ VPN対象は、目的のサービスに必要なアプリから少しずつ追加する
- ✅ 決済や社内ツールは、経路変更後にログインと主要操作を確認する
- ✅ 仕事用プロファイル、複製アプリ、WebViewの有無を確認する
- ❌ アプリ名だけを見て、同名の別パッケージを登録しない
- ❌ VPN接続中に別のVPNアプリを同時起動しない
DNS、省電力、接続結果を確認する
アプリ別ルールを設定した後は、VPNアイコンが表示されるかだけでなく、実際の通信結果を確認します。VPN対象アプリでは目的のサービスへ接続できるか、除外アプリでは通常回線で必要なログインや社内ページが使えるかを調べます。接続先の表示地域、アプリ内のエラー、認証メールの到着など、日常操作に近い方法で検証すると判断しやすくなります。
DNSの扱いも見落としやすい部分です。名前解決をVPN側で行う設定では、除外したアプリでもドメイン解決だけがVPN経由になることがあります。逆に、通常回線のDNSを使う構成では、アクセス先によって名前解決の結果が変わる場合があります。クライアントに「DNSをVPN経由にする」「システムDNSを使用する」といった設定がある場合は、ルールと合わせて確認してください。
Androidの省電力機能がクライアントを停止すると、アプリ別ルール以前にVPN接続が切れます。クライアントをバッテリー最適化の対象外にする設定は、端末メーカーによって「自動起動」「バックグラウンド活動」「電池の最適化」など名称が異なります。設定変更後も接続が途切れる場合は、通知の制限、バックグラウンドデータ、データセーバーも確認し、必要最小限の範囲で許可してください。
動作しないときの切り分け
対象アプリが接続できない場合は、まずアプリ別ルールを一時的に解除し、同じノードで全通信をVPN経由にして比較します。全通信で動くなら、パッケージ指定、ルール方式、DNS、除外設定のいずれかが原因です。全通信でも動かないなら、ノード、プロトコル、サブスクリプションの更新状態、端末の日時、現在のネットワークを順番に確認します。
除外アプリだけが動かない場合は、「VPNなしの接続をブロック」が有効になっていないかを確認します。常時接続VPN、キルスイッチ、プライベートDNS、別のセキュリティアプリも通信に影響します。複数の設定を同時に変更すると原因が分からなくなるため、一項目ずつ変更し、変更前後の状態をメモしておくと復旧しやすくなります。
サブスクリプションを汎用クライアントへ導入した場合は、更新後にルールが初期化されていないかも確認してください。設定ファイルの再生成によって、アプリ一覧やルーティング設定が置き換わることがあります。解決しない場合は、クライアント名、Androidのバージョン、利用中のプロトコル、発生したアプリ、接続ログの該当箇所を整理してサポートへ問い合わせます。サブスクリプションURLそのものは送らず、必要な情報だけを共有してください。
Androidのアプリ別VPN設定は、最初から複雑なルールを作るより、VPNを使うアプリを限定し、通常回線に残すアプリを明確にするほうが管理しやすくなります。公式クライアントで基本動作を確認し、必要に応じて互換クライアント、プロトコル、DNS、常時接続の設定を調整してください。クライアントの導入手順は使用方法を見るから確認できます。