PCではまずv2rayN、Androidではノードの要件に応じてv2rayNGまたはv2flyNGを選びましょう。クライアント・コア・プロトコルの違いを整理し、サブスクリプションのインポート、システムプロキシ、アプリ別プロキシ、ルーティング設定を比較。PCとAndroidそれぞれの設定手順と接続確認方法も紹介します。サブスクリプションはあるものの、どのクライアントを入れるべきか迷っている場合は、まず端末のOSを確認し、ノードのプロトコル・トランスポート・セキュリティ設定をチェックしてください。
まずOSで絞り、次にコアを確認
名前は似ていますが、同じインストーラーの表記違いではありません。v2rayNはデスクトップ向け、v2rayNGとv2flyNGはAndroid向けのクライアントです。クライアントはノード一覧やサブスクリプション管理、設定画面を提供し、コアが実際の接続や設定の解析、ルーティングルールの適用を担います。クライアントをインストールしただけでは接続先サーバーは用意されないため、有効なサブスクリプションかノードの設定情報が必要です。
v2rayN:デスクトップならまず検討
おすすめWindows、macOS、Linuxに対応しています。デスクトップ画面でノード一覧やサブスクリプショングループを管理しやすく、ログの確認にも便利です。Windowsでは必要に応じて通常版とWPF版を選べます。利用できるコアや機能は、インストーラーと現行バージョンの画面で確認してください。
おすすめの用途:PCでの常用、サブスクリプションの管理、ルーティングルールの調整。
v2rayNG:AndroidでXray設定を使う場合
Xray系のコアを採用しています。設定がXrayを前提としている場合、とくにVLESSやREALITYのパラメーターを使う場合は、まずv2rayNGの現行バージョンが対応しているか確認し、サーバー側の設定に合わせてインポートしてください。
おすすめの用途:メインのAndroid端末、Xrayノードの利用、アプリ別プロキシの設定。
v2flyNG:Androidでv2fly設定を使う場合
v2fly系のコアを採用しています。v2flyの機能や設定形式を前提に運用している場合に適しています。ノードとの互換性はプロトコル、トランスポート、セキュリティ層、コアのバージョンを確認して判断しましょう。リンクをインポートできるかどうかだけでは判断できません。
おすすめの用途:v2fly設定を使っているAndroid端末、対応するコアの動作を維持したい場合。
選び方のポイント:ノード要件でさらに絞る
まず対応していないOS向けのクライアントを除外し、プロバイダーが指定するクライアントとコアの最低要件を確認しましょう。設定にREALITYが含まれている場合、Androidではまずv2rayNGの対応状況を確認してください。プロトコル名だけを変更してv2flyNGにインポートするのは避けましょう。
プロトコル・トランスポート・画面の違いと選び方
V2RayとXrayは関連しつつも独立して開発されているコアプロジェクトです。v2flyはV2Rayのコミュニティによるメンテナンス系統です。VMessやVLESSはプロトコル名、WebSocketはトランスポート方式、TLSとREALITYは接続のセキュリティ設定に関わるものです。これらは同じ階層の選択肢ではありません。どちらのクライアントにもVMessと表示されていても、トランスポート方式、TLS、パス、サーバー側の要件まで確認してください。
| 比較項目 | v2rayN | v2rayNG | v2flyNG |
|---|---|---|---|
| 主な対応OS | Windows、macOS、Linux | Android | Android |
| コアの確認方法 | 選択したコアとインストーラーを確認 | Xray系 | v2fly系 |
| 画面の主な機能 | ノード一覧、グループ、ログ、デスクトップのプロキシ設定 | モバイル向け設定一覧、接続スイッチ、アプリ別設定 | モバイル向け設定一覧、接続スイッチ、対応コアの設定 |
| サブスクリプションの使い方 | グループを管理し、更新後に接続するノードを選択 | サブスクリプショングループを管理し、更新後にインポート結果を確認 | 形式とコアの対応状況を確認してからノードを更新 |
| 通信を取り込む方法 | システムプロキシ、またはバージョンに応じてTUNを設定 | 通常はAndroid VPNインターフェース経由で端末の通信を取り込む | 通常はAndroid VPNインターフェース経由で端末の通信を取り込む |
デスクトップ版は表形式の画面で複数のノードを比較しやすい一方、表示列が多くても接続が速くなるわけではありません。Android版は接続スイッチがまとまっていても、すべてのアプリが同じ方法で通信するとは限りません。接続できるかどうかは設定の一致で決まり、どの通信がプロキシを通るかは、通信の取り込み方法、アプリ別の選択、ルーティングルールによって決まります。
- VMessを使う場合:アドレス、ポート、ユーザーID、暗号化設定に加え、トランスポートとTLSを確認してください。拡張パラメーターが3つのクライアントすべてで同じように扱われるとは限りません。
- VLESSを使う場合:flow、トランスポート、セキュリティ設定も確認してください。プロトコル名が同じでも、どの組み合わせでも相互接続できるとは限りません。
- REALITYを使う場合:serverName、公開鍵、shortIdなど、サーバー側で指定されている項目を確認し、使用中のクライアントとコアが対応していることも確認してください。
サブスクリプションのインポート:更新できても設定の完全互換とは限らない
サブスクリプションURLは設定を配布するための入口であり、クライアントのアカウントでも特定ソフト専用の通信経路でもありません。同じサブスクリプションに、複数のプロトコルや異なる形式の設定が含まれる場合があります。インポート後にノード数が正常に表示されても、設定の一部を認識できたことを示すにすぎず、実際の接続テストの代わりにはなりません。
- まずグループを作成します。v2rayNで「サブスクリプショングループ」→「サブスクリプショングループ設定」を開き、名前とサブスクリプションURLを追加します。画面のバージョンによってメニュー名が多少異なる場合があるため、現在のメニューを確認してください。
- 次にサブスクリプションを更新します。「サブスクリプショングループ」メニューから更新を実行し、メッセージと追加されたノード数を確認します。Androidではメニューの「サブスクリプショングループ設定」からURLを追加し、サブスクリプションを更新してください。
- ノードの詳細設定を1つ確認します。プロバイダーの説明と照らし合わせ、プロトコル、ポート、トランスポート、セキュリティ設定を確認します。非対応の項目や、インポート後に空欄になっている項目にも注意してください。
- 最後に実際の通信をテストします。ノードを選択して接続し、通常アクセスできるWebサイトを開きながらログも確認します。レイテンシのテスト結果だけで、すべての通信に設定が反映されたと判断しないでください。
PCではインポートできるのにAndroidでは一部のノードしか表示されない場合は、ソフトを何度も再インストールするのではなく、表示されないノードのプロトコルとパラメーターを確認してください。両方の端末で更新に失敗する場合は、URLの有効期限、現在のネットワークからサブスクリプションURLにアクセスできるか、更新リクエストに利用可能なプロキシが必要かを確認しましょう。
システムプロキシ、Androidの通信取り込み、ルーティングの違い
v2rayNで接続するノードを選んだ後は、アプリの通信をどのようにクライアントへ送るか決める必要があります。システムプロキシは通常、OSのプロキシ設定に従うアプリが対象です。その設定を参照しないアプリは、個別にプロキシを設定するか、権限とルーティングへの影響を理解したうえでTUNを使います。TUNは仮想ネットワークアダプターと関連する権限に依存するため、どの環境でも速くなるスイッチと考えないでください。
以下はポートの役割を説明するための設定例であり、すべてのバージョンの初期値ではありません。ローカルのHTTPまたは混合リスナーが実際に127.0.0.1:10808に設定されている場合に限り、ブラウザーの手動プロキシにもこのアドレスを入力します。ノード側のリモートポートが443でも、ブラウザーのローカルプロキシポート欄には入力しないでください。v2rayNの「設定」→「パラメーター設定」でローカルリスナーの項目を確認できます。項目の分類はバージョンによって異なります。
- Androidで通信を取り込む:初回の接続時には、通常、システムのVPN接続リクエストを許可する必要があります。このVPNインターフェースは端末の通信を取り込むためのもので、ノードが特定のプロトコルを使っていることを意味しません。
- アプリ別プロキシ:設定が「選択したアプリのみプロキシを使用」なのか「選択したアプリを除外」なのか、先に確認してください。同じアプリ一覧でもモードによって意味が逆になります。保存後に再接続してテストしましょう。
- ルーティング:通信がコアに入ってから、ドメインやIPなどのルールに応じて直接接続、プロキシ経由、遮断のいずれかが選ばれます。多くのルールは上から順に判定されるため、広い範囲を対象にするルールを先に置くと、後続の詳細ルールが適用されない場合があります。
- DNS:名前解決の方法は、ルーティングの目的に合わせる必要があります。別のクライアントからルールのテキストだけをコピーしても、DNSの動作まで再現できるとは限りません。両方の設定形式と名前解決の方針を確認してください。
そのため、「グローバル」という言葉は、表示されているメニューに応じて意味を確認してください。アプリから通信を取り込む範囲を指す場合もあれば、ルーティングの出力先ポリシーを指す場合もあります。2つのクライアントを比較するときは、通信の取り込み範囲とルーティングルールを近い条件に揃えてから、実際の動作を比べましょう。
PCとAndroidを併用する設定例
よくある組み合わせは、PCでv2rayNを使い、Androidではコアの要件に応じてどちらかを選ぶ方法です。それぞれの端末からサーバーに接続できるため、先にPCのローカルネットワーク共有を有効にする必要はありません。同じサブスクリプションを使えますが、ローカルポート、アプリ別の対象一覧、ルーティングルールは端末ごとの設定です。サブスクリプションが同じでも自動的には同期されません。
設定例:サブスクリプションの配信元を共有し、通信の入口は端末ごとに管理
デスクトップ:v2rayN
- Windows、macOS、Linuxと端末のアーキテクチャに合ったインストーラーを選びます。
- サブスクリプショングループを作成し、更新後に接続するノードを選びます。
- まずシステムプロキシでブラウザーの通信を確認し、必要に応じてTUNを検討します。
- 動作する設定を記録し、ルーティングを変更するときは一度に1種類のルールだけを調整します。
Android:v2rayNGまたはv2flyNG
- Xrayまたはv2flyの設定要件に合わせてクライアントを選びます。
- 同じサブスクリプションURLを追加し、端末ごとに更新してノードを確認します。
- システム接続の許可を確認し、アプリ別プロキシのモードをチェックします。
- Wi-Fiとモバイルネットワークを切り替え、それぞれで接続を確認します。
サブスクリプションの内容が同じでも、更新のタイミング、形式のフィルタリング、ローカル設定は端末ごとに異なります。両方の端末で個別に動作確認してください。
性能を比較するときも条件を揃えましょう。同じサーバー、同じプロトコルとトランスポート、近い時間帯でテストし、もう一方のクライアントの接続は切断します。スマートフォンのWi-Fi電波、省電力設定、サーバー負荷、ネットワーク経路も結果に影響します。一度の速度測定の差を、クライアント名だけの違いに結びつけないでください。
クライアント選びでよくある4つの質問
Androidにv2rayNGをインストール済みですが、v2flyNGも必要ですか?
現在のサブスクリプションを正常にインポートして接続できるなら、名前が似ているという理由だけで両方を入れる必要は通常ありません。別のコアに依存する機能や動作が設定で明示されている場合に、切り替えを検討してください。別のクライアントを試すときは、システムVPNの取り合いを避けるため、使用中の接続を先に切断しましょう。
同じノードがPCでは使えてスマートフォンでは使えません。まず何を確認すればよいですか?
まず両方の端末でサブスクリプションが更新されているか確認し、ノードの詳細画面でプロトコル、トランスポート、TLSまたはREALITYのパラメーターを比較します。次にスマートフォンのシステム時刻、接続の許可、アプリ別の対象一覧を確認してください。Wi-Fiとモバイルネットワークで結果が異なる場合はネットワーク環境を調べ、すぐにサーバーポートを変更するのは避けましょう。
v2rayNでノードの遅延が表示されるのに、ブラウザーでページを開けないのはなぜですか?
遅延テストの結果は、ブラウザーがプロキシを使っていることを示すものではありません。まずv2rayNのシステムプロキシの状態を確認し、必要であれば「システムプロキシを自動設定」を選びます。続いてブラウザー独自のプロキシ設定がないか確認し、ローカルリスニングポート、ルーティング、DNSのログを順に調べてください。
クライアントを乗り換えるとき、以前のルーティング設定をすべてコピーすべきですか?
設定を丸ごと上書きするのは避けてください。サブスクリプションからノードを復元して基本的な接続を確認した後、移行先のクライアントが対応する形式でルールを作り直します。デスクトップアプリのパスとAndroidアプリのパッケージ名は、異なる条件で一致を判定するため、アプリ一覧をそのまま移すことはできません。
最終確認:接続アイコンだけでなく通信をテスト
クライアントを選んだら、プロキシを通すべき通信と直接接続すべき通信をそれぞれテストし、該当するログや接続履歴を確認してください。両方の通信が想定した出力先になっていることを確認してから、複雑なルールを追加します。ノードの問題とローカルのルーティング設定の問題を切り分けやすくなります。