AndroidでVPNを使う手順は、5つのステップに集約できます。クライアントの導入、サブスクリプションのインポート、システムVPN権限の許可、省電力ホワイトリストへの追加、そして有効になっているかの確認です。Androidとデスクトップの最大の違いは真ん中の3ステップにあります。接続はOSが一括して管理するため、どのクライアントでも最初に一度だけ許可を得る必要があります。許可の拒否、バックグラウンドの停止、省電力ポリシーの介入は、最終的にどれも「接続をタップしたのに繋がらない」という形で現れます。以下では5つのステップを順に分解し、各ステップでどこをタップし、何が表示され、次に何をするのかを説明します。最後にメーカー別の設定パスと、切り分けの順序をまとめました。
AndroidではVPN接続をOSが管理する仕組み
Androidは4.0以降、VpnServiceというインターフェースを提供しています。クライアントアプリはこれを使って仮想ネットワークインターフェースを作成し、端末の通信をルールに従って自分のトンネルに取り込み、リモートノードへ転送します。これはOSが公開している機能なので、VPNの設定にrootもファームウェアの書き換えも必要ありません。その代わり、許可はアプリ内ではなくOSのレイヤーで行われます。
ここから3つの決まった挙動が生まれます。先に覚えておくと、切り分けの時間が半分で済みます。
- 接続時に表示されるのはOSのダイアログで、アプリ独自のポップアップではありません。ダイアログにはこれが「接続リクエスト」であることと、通信を引き継ぐアプリの一覧が表示され、手動で許可する必要があります。
- 同時に有効になるVPNは1つだけです。以前に別のクライアントやOS標準のVPNを有効にしていると、新しい接続がそれを上書きするか、そのまま失敗します。
- ステータスバーに鍵または盾のアイコンが表示されて初めて、トンネルが確立したことになります。アプリ内が「接続済み」なのにステータスバーにアイコンがない場合は、権限がまだ渡っていない可能性が高いです。
まずレイヤーを分ける:Androidの接続トラブルは、まずアプリ層かシステム層かを見極めます。ノードの選択ミスやプロトコルの不一致はアプリ層、鍵アイコンが出ない、画面ロックで切断される、ネットワークを切り替えても復帰しない、といった症状はシステム層です。2つの層では対処法がまったく違うため、混ぜて調べると余計に混乱します。
また、Androidはアプリが独自にプロトコルを実装できるため、同じサブスクリプションリンクを別のクライアントにインポートできます。一方iOSはNetworkExtensionを使うため、設定項目に互換性はありません。クロスプラットフォームで使う場合、サブスクリプションリンクは使い回せますが、クライアントはそれぞれインストールする必要があります。
ステップ1:クライアントの導入とサブスクリプションリンクの取得
まずはじめかたガイドかダウンロードページでAndroidクライアントを入手し、そのあとアカウントに戻ってサブスクリプションリンクをコピーします。順番は逆にしないでください。サブスクリプションリンクはアカウントに紐づくため、先にログインしてからコピーすれば、リセット済みの古いリンクをつかむ事故を防げます。
- ダウンロードページを開き、Androidを選んでインストーラーを取得し、インストールします。「提供元不明のアプリ」と表示された場合は、ブラウザかファイルマネージャーに一度インストール権限を与える必要があります。
- ユーザー名とパスワードでアカウントにログインします。当サービスはメールアドレスなしで登録できます。ユーザー名とパスワードだけで完結する反面、メールでの再発行ができないため、アカウント情報はパスワードマネージャーに保存しておくことをおすすめします。
- アカウントページでサブスクリプションリンクをコピーします。httpsで始まる文字列で、アカウントの資格情報と同じ扱いです。公開グループに貼ったり、スクリーンショットを送ったりしないでください。
- ついでにプランの容量も控えておくと、後で通信量を確認するときの基準になります。月額プランは¥9.9で60GB、¥18で250GB、¥28で500GBで、通信量は開通日ごとに毎月リセットされます。
サブスクリプションリンクはパスワードと同じ
リンクを入手した人はノード一覧を取得して、あなたの通信量を使えます。漏えいが疑われる場合は、まずアカウントページでリセットし、新しいリンクをクライアントに再インポートしてください。古いリンクはその時点で無効になります。
ステップ2:サブスクリプションのインポートとノード選択
サブスクリプションリンクはノードそのものではなく、アドレスです。クライアントがそのアドレスにリクエストを送ると、ノード一覧(Base64でエンコードされたリストや、YAML / JSON形式の設定)が返ってきます。そのため、ノードを変えるのにリンクをコピーし直す必要はなく、クライアントで「サブスクリプションを更新」を一度実行すれば、サーバー側が配信している最新の回線を取得できます。
インポートの一般的な流れは、クライアントのトップ画面で「サブスクリプション」または「設定」を開く → リンクを貼り付ける → 保存 → 更新、です。更新に成功すると、ノード一覧が空の状態から数十〜100件以上に増え、地域ごとにグループ分けされて表示されます。自動更新の間隔は12時間ほどが適切です。リクエストが頻繁になりすぎず、古い一覧を使い続けることもありません。
プロトコルは通信の載せ方にすぎないので、全部を覚える必要はありません
サブスクリプションの各回線にはプロトコルが記載されています。よく見かけるのは次の6種類です。違いは主にトランスポート層とハンドシェイク方式にあり、日常的な使い勝手への影響は回線そのものの品質よりずっと小さいです。
| プロトコル | トランスポート層 | 特徴 | 注意点 |
|---|---|---|---|
| Shadowsocks | TCP / UDP | 構造がシンプルで設定項目が少なく、オーバーヘッドが小さい | UDP転送が使えるかどうかはサーバー側の実装次第 |
| VMess | TCP / WebSocket / gRPC | V2Ray系のネイティブプロトコルで、調整できる項目が多い | タイムスタンプに依存するため、端末の時刻が大きくずれていると認証に失敗する |
| VLESS | TCP / WebSocket / gRPC | それ自体は暗号化を持たず、TLSで保護する前提のためヘッダーのオーバーヘッドが小さい | TLSと組み合わせて使う必要があり、単体では機能しない |
| Trojan | TLS、通常は443番ポートを使用 | 通信の見た目が通常のHTTPSに近い | 証明書に依存するため、証明書に異常があると接続できない |
| Hysteria2 | QUIC(UDP) | UDPベースで、パケットロスが多い回線では安定しやすい | ネットワークがUDPを制限していると接続できない |
| TUIC | QUIC(UDP) | 同じくQUIC系で、ハンドシェイクがより高速 | 同上。まず現在のネットワークでUDPが通るか確認する |
つながらないときは、ノードを変えるよりプロトコルを変えるほうが早く効くことが多いです。QUIC系の回線はUDPを制限するネットワークでは必ず失敗するので、TCP系に戻せば解決します。
ノードは回線タイプを先に見て、遅延はその後
クライアントには通常レイテンシ計測ボタンがあり、数値の小さい順に並びます。ただしレイテンシは1回のハンドシェイクの往復時間を反映するだけで、夜のピーク時間帯の混雑や帯域幅までは示しません。より確実な判断順序は、回線タイプ → 地域 → 最後にレイテンシ、です。
- 直結:クライアントが海外ノードに直接接続します。経路は最短ですが、公共の国際出口を通るため、ピーク時間帯は不安定になりやすいです。
- 中継:まず国内の中継サーバーに接続し、そこから海外へ出ます。ホップは1つ増えますが、混雑する区間を避けられるため、一般に安定性は高まります。
- IEPL専用線:端から端まで専有の回線で、公共出口の混雑点を通りません。レイテンシが最小とは限りませんが、変動が最も小さく、長時間の接続に向いています。
地域は用途で選びます。海外サイトやよく使うサービスへのアクセスなら、日本・香港・シンガポールなど距離の近いところを。特定地域のサービスが必要なら、その国のノードに切り替えます。「速そうに見えるから」と頻繁に国を変えるのは避けてください。ログインIPが頻繁に変わると、一部のサービスで追加の本人確認が走ることがあります。全リストはグローバルノードページにあります。
ついでにサービス側の固定パラメータも整理しておきます。後で通信量や返金を照らし合わせるときに使えます。
ステップ3:システム権限を許可する
ノードを選んだら接続をタップします。初回は必ずOSのダイアログが表示され、タイトルは「接続リクエスト」のような文言で、本文にそのアプリがネットワーク通信を引き継ぐことが書かれています。信頼するオプションにチェックを入れて確定すると、ダイアログが消えてステータスバーに鍵アイコンが表示されます。
- 接続をタップするとOSのダイアログが出るので、一覧に表示されるアプリ名が正しいか確認します。
- 「このアプリを信頼する」または同等の項目にチェックを入れ、「OK」をタップします。
- クライアントに戻るとステータスが接続済みになり、ステータスバーに鍵または盾のアイコンが表示されます。
- ブラウザで海外サイトを開き、正常に表示できるか確認します。
誤ってキャンセルした場合や、ダイアログが表示されなくなった場合は、手動で許可を追加できます。設定 → ネットワークとインターネット → VPN → 該当アプリ → 許可をオン。または該当アプリのデータを消去して再接続すると、ダイアログが再び表示されます。
「常時接続VPN」は有効にすべきか
システムのVPN設定には2つの詳細スイッチがあります。「常時接続VPN」と、「VPN未使用時の接続をブロックする」(「VPNを常に使用」と表記するOSもあります)です。前者は端末の起動時やネットワーク切り替え後に自動で再接続します。後者はより厳格で、接続できていない間はすべての通信を遮断します。
長く使うなら常時接続をオンにしておくと、手動での再接続が不要になります。ただし切り分けの段階ではオフにすることをおすすめします。オンにしたままだと、「ネットにつながらない」の原因が回線障害ではなくポリシーによる遮断かもしれないからです。5つのステップをすべて確認できてから、有効にするか決めましょう。
ステップ4:省電力のホワイトリスト登録でバックグラウンド停止を防ぐ
Androidの省電力ポリシーは、画面ロック後にバックグラウンドの動作を制限します。VPNクライアントはバックグラウンドで長い接続を維持する必要があるため、OSに凍結されると、数分後に切断される、通知バーのアイコンが消える、画面を点けても数秒待たないと復帰しない、といった症状になります。対処は再接続の繰り返しではなく、クライアントをホワイトリストに入れることです。
有効にする項目は通常4つで、メーカーによって呼び方が違うだけで意味は同じです。
- 自動起動:端末の起動時やバックグラウンドからの復帰時にアプリを起動できるようにします。
- バックグラウンド動作:アプリがバックグラウンドで動き続けられるようにし、凍結されないようにします。
- バッテリー最適化:アプリを「最適化しない」または「無制限」に設定します。
- 最近使ったアプリのロック:マルチタスク画面でアプリカードを下にドラッグするか長押ししてロックすると、一括クリアで消えなくなります。
メーカー別・設定場所の違い
以下の表は一般的なOSごとに整理したものです。OSのバージョンによってメニュー名や階層は多少異なります。見つからないときは、設定アプリ内で「自動起動」「バッテリー最適化」の2語を検索すると、たいてい直接たどり着けます。
| OS / メーカー | 自動起動とバックグラウンド | バッテリーと省電力 | 補足 |
|---|---|---|---|
| Xiaomi HyperOS / MIUI | 設定 → アプリ → アプリを管理 → 該当アプリ → 自動起動 | 設定 → バッテリー → アプリの省電力設定 → 無制限 | マルチタスク画面でアプリカードを下にドラッグしてロックする必要もあり |
| Huawei HarmonyOS | 設定 → アプリとサービス → アプリ起動管理 → 手動で管理に変更 | 設定 → バッテリー → その他のバッテリー設定 → スリープ時にネットワーク接続を維持 | 手動管理の中の「自動起動」「関連起動」「バックグラウンド動作」の3項目をすべてオンにする |
| HONOR MagicOS | パスはHuaweiに近く、アプリ起動管理で手動に変更 | 設定 → バッテリー → その他のバッテリー設定 | 同様にスリープ時のネットワーク接続維持をオンにする |
| OPPO ColorOS / OnePlus | 設定 → アプリ → アプリ管理 → 自動起動と関連起動 | 設定 → バッテリー → アプリの消費電力管理 → バックグラウンド実行を許可 | 一部のバージョンでは「アプリの急速冷凍」で別途制限されるため、除外が必要 |
| vivo OriginOS | 設定 → アプリと権限 → 権限管理 → 自動起動 | 設定 → バッテリー → バックグラウンド消費電力管理 → バックグラウンドでの高消費電力を許可 | iQOOモデルも同じパス |
| Samsung One UI | 設定 → バッテリーとデバイスケア → バッテリー → バックグラウンド使用の制限 | 同じ画面 → スリープしないアプリ → 追加 | そのアプリに対する「アダプティブバッテリー」の制限をオフにする |
| 素のAndroid / Pixel | 設定 → アプリ → アプリ情報 → バッテリー | 「制限なし」を選択 | 開発者向けオプションの「アクティビティを保持しない」はオンにしない |
表は一般的なパスをまとめたものです。OSのバージョンによって異なる場合があるため、端末の実際のメニューを優先してください。
ステップ5:接続確認で有効かどうかを確かめる
「接続済みと表示されている」ことと「通信が本当にノード経由になっている」ことは別問題で、分けて確認する必要があります。手間がかからないのは、IP・DNS・分割の3つを順に確認する方法です。
- IPを確認:任意のIP確認ページを開き、表示される国・地域とプロバイダーが選択したノードと一致するか見ます。一致していれば出口は切り替わっています。
- DNSを確認:DNSリークテストのページを開き、名前解決サーバーもノードの地域にあるか確認します。解決がローカルのプロバイダーのままだと、DNSリクエストがトンネルに入っていません。
- 分割を確認:国内サイトと海外サイトをそれぞれ開きます。両方正常ならルールモードは機能しています。海外サイトが開けない場合は、まずグローバルに切り替えて試してください。
DNSリークは別枠で説明する価値があります。Android 9以降、OSは「プライベートDNS」(DNS over TLS)を提供しており、これはアプリ内のDNS設定より優先されます。プライベートDNSが有効だと、トンネルが確立していても名前解決がトンネルを迂回することがあり、その結果IPは海外を示すのに一部のサイトがローカルで解決されたり、開けなくなったりします。切り分けのときは、まずプライベートDNSを「自動」にするかオフにしてから再テストしてください。
確認が通った状態
ステータスバーに鍵アイコンがあり、IP確認ではノードの地域が表示され、DNSテストでは同じ地域のリゾルバーが表示され、国内サイトも海外サイトも正常に開ける。4つが同時に満たされて初めて、設定完了です。
分割ルール:3つのモードの選び方
クライアントは通常3つのモードを用意しています。グローバル、ルール(自動)、ダイレクトです。違いはただ1つ、通信がすべてトンネルに入るかどうかです。
- グローバル:すべての通信がノード経由になります。切り分けや一時的なアクセスに向いていますが、日常使いでは余分に通信量を消費し、国内サービスも出口が海外になることで遅くなったり、リスク判定に引っかかったりすることがあります。
- ルール / 自動:ドメインとIPで振り分け、国内は直接、海外はノード経由にします。日常使いはこの設定がおすすめです。前提として、ルールセットが最新である必要があります。
- ダイレクト:すべてノードを経由しません。接続を切らずに一時的にプロキシをオフにしたいときに使います。
実践的な原則は2つです。1つは、よく使う国内サービスは直接接続のままにしておくこと。とくに決済、銀行、本人確認が必要なアプリは、出口IPの変化で異常と判定されるのを避けられます。もう1つは、ログイン状態を保ちたいサービスでは同じノードに固定し、接続のたびに国を変えないことです。
分割が効かないときは、まずルールの取得元を確認する
ルールモードは分割ルールセットに依存しています。ルールセットが古いと、新しいドメインが誤判定されます。直接接続すべきものがノード経由になり、ノード経由にすべきものが直接接続になるわけです。サブスクリプションを更新するときにルールセットも更新する、あるいはルールの取得元をサブスクリプションに追従させる設定にしておけば、「昨日は動いていたのに今日は開けない」というケースの大半は防げます。
つながらないときは、この順番で切り分ける
外側から内側へ順に確認するほうが、接続ボタンを連打するより効果的です。以下のチェックリストを1項目ずつ照らし合わせてください。
- ✅ ステータスバーに鍵アイコンがあり、システムのVPN設定でも接続済みと表示される —— 権限とトンネルは正常です。
- ✅ IP確認の地域が選択したノードと一致する —— 出口は切り替わっています。
- ✅ DNSテストで名前解決サーバーがノードの地域にある —— 解決はトンネルを迂回していません。
- ❌ アプリ内は接続済みなのにステータスバーにアイコンがない —— 権限が拒否されたかOSに回収されています。システムのVPN設定で許可を追加してください。
- ❌ 画面ロックから数分で切断される —— 省電力ホワイトリストが不十分です。バックグラウンド動作とバッテリー最適化を重点的に確認してください。
- ❌ Wi-Fiに変えると切れ、モバイルデータに戻すと正常 —— そのWi-FiがUDPを制限しているかポートを遮断している可能性があります。別の回線で試してください。
チェックリストに1つでも通らない項目があれば、次の順で対処します。
- 別のノードに変える。できれば回線タイプの違うもの(直結→中継、中継→専用線)を選びます。
- プロトコルまたはトランスポート方式を変える。QUIC系の回線はUDPを制限するネットワークではつながらないため、TCP系に戻します。
- グローバルモードに切り替えて、分割ルールの影響を排除する。
- システムの時刻が自動同期になっているか確認する。VMessはタイムスタンプに依存するため、大きくずれていると認証に失敗します。
- プライベートDNSをオフにする、または「自動」に変更する。
- 別のVPN(OS標準や企業設定のものを含む)が同時に有効になっていないか確認する。
- ネットワークを切り替える(Wi-Fiとモバイルデータを入れ替える)ことで、回線側の問題かローカルネットワークの問題かを見分ける。
この7ステップを終えてもつながらない場合は、クライアントのログを見ます。ログには通常、ハンドシェイクのタイムアウト、認証失敗、DNS解決失敗のどれかが書かれており、3つは対処法がまったく異なります。ハンドシェイクのタイムアウトは回線を変更、認証失敗はアカウントと時刻を確認、解決失敗はDNS設定を確認します。
よくある質問
AndroidでVPNを設定するのにrootは必要ですか?
不要です。VpnServiceはOSが公開しているインターフェースで、通常のアプリから申請でき、許可はユーザーがOSのダイアログで確認します。rootの有無は接続に影響しませんし、「より安定させるため」にファームウェアを書き換えたりシステムを改造したりすることもおすすめしません。
1つのサブスクリプションを何台まで同時に使えますか?
当サービスは台数を制限していません。スマートフォン、タブレット、パソコンを同時にオンラインにできます。ただし同じアカウントの通信量は共有なので、台数が多いときは合計の使用量に注意してください。
通信量パックに有効期限はありますか?
ありません。通信量パックは使い切るまで有効で、期限はありません。使用量が変動する使い方に向いています。月額プランの通信量は開通日ごとに毎月リセットされ、途中でプランをアップグレードした場合は、差額を残り日数で按分します。
アンインストールして再インストールすると、なぜまた許可が必要になるのですか?
VPNの許可記録はアプリのデータに紐づきます。アンインストールやデータ消去のあとは、OSが新しいアプリとして扱うため、ダイアログが再び表示されます。サブスクリプションリンクは無効にならないので、再インポートすれば使えます。
接続後に国内アプリが遅くなるのは正常ですか?
グローバルモードを使っている場合、国内の通信も海外まで回り込んで戻ってくるので、遅くなるのは当然です。ルールモードに戻して、国内サービスを直接接続にすれば解決します。
まとめ:AndroidでVPNを使ううえでの難所は、クライアントの操作ではなく、OSレイヤーの3つ——権限、常駐維持、確認——にあります。権限はつながるかどうか、常駐維持は長くつながるかどうか、確認は通信が本当に正しい経路を通っているかどうかを決めます。5ステップを終えてから「常時接続VPN」をオンにしてください。順番を逆にすると、切り分けが余計に乱れます。