この記事の要点

PCで使うならまずv2rayNを検討しましょう。AndroidでXray関連のプロトコルや設定が必要ならv2rayNG、v2flyコア環境が必要な場合はv2flyNGが候補です。対応OS、コア、通信の振り分け、サブスクリプションの移行方法を順に解説します。初めてインストールする方や、クライアントの乗り換えを検討している方に向けた内容です。選ぶ際は、名称の類似性や一度の速度測定ではなく、現在の設定を問題なく動かせるかを基準にしてください。

対応OSを比較:PC用とAndroid用は分けて選ぶ

v2rayN、v2rayNG、v2flyNGは、それぞれ別のプロジェクトとして開発されているクライアントです。同じアプリのテーマ違いではありません。クライアントはノード一覧やサブスクリプションの更新、ルーティング、サービスの起動・停止を管理し、コアは設定の解析、接続、通信の転送を担います。名前にV2Rayが含まれていても、対応プロトコルやメニューの位置、設定ファイルをそのまま共用できるとは限りません。

比較項目 v2rayN v2rayNG v2flyNG
対応OS Windows、macOS、Linux。OSに合ったインストーラーを選択 Android Android
コアの位置づけ PC向けの管理画面。実際に使用するコアは設定、バージョン、選択したコンポーネントによって異なる Xrayコア v2flyコア
主な機能 ノード管理、サブスクリプショングループ、システムプロキシ、ルーティング、ログ サブスクリプション管理、VPNサービス、ルーティング、アプリごとの設定 サブスクリプション管理、VPNサービス、対応バージョンで利用できるルーティング設定
選ぶときのポイント OSとCPUアーキテクチャ、画面のバージョン、実際に使用するコア ノードがXray固有の機能に依存するか、Androidでバックグラウンド実行できるか 設定がv2flyに対応しているか、必要な機能が現在のバージョンで提供されているか

Windowsでは、v2rayNのデスクトップ版と従来のWPF版の違いも確認しましょう。これは画面や実行環境の違いであり、プロキシプロトコルの違いではありません。macOSではAppleシリコン搭載機とIntel搭載機を区別し、LinuxではCPUアーキテクチャに加えてdeb・rpmのパッケージ形式も確認してください。インストーラーの選択ミスによる起動失敗は、ノードのアドレスを変更しても解決しません。

コアの違い:VMessやVLESSだけでなく、プロトコルの組み合わせを確認

VMessとVLESSはプロキシプロトコル、TLSとREALITYは接続のセキュリティに関する設定、WebSocketやgRPCなどは通信方式です。互換性を判断するときは、これらを組み合わせて確認する必要があります。たとえば、VLESSのリンクをインポートできても、現在使用中のコアがリンクに含まれるセキュリティレイヤーや通信方式、拡張フィールドに対応しているとは限りません。

v2rayNGはXrayコア、v2flyNGはv2flyコアを使用します。技術的な共通点はありますが、それぞれ異なる方向に機能が進化しています。VLESSとREALITYを使う場合は、Xrayの対応条件を確認してください。同じフィールドをそのままv2flyNGに入力しても、互換性があるとは限りません。一方、既存のVMess設定を使う場合も、「どちらもVMessだから使える」と決めつけず、通信方式、TLS、サーバー名、パスを確認しましょう。

v2rayNG:AndroidでXray設定を使う場合

おすすめ

Androidで使うノードがXrayの機能を明確に必要とする場合は、v2rayNGを優先的に検討しましょう。インポート後も、サーバー名、フィンガープリント、公開鍵など、実際に必要な項目を確認してください。項目はノードの種類やバージョンによって異なります。

おすすめの用途:Androidでの日常利用、既存ノードがXrayの機能に依存する場合

v2flyNG:Androidでv2fly環境を使う場合

既存の設定や運用手順がv2flyを前提としている場合に適しています。利用できるかどうかは、該当するコアのバージョンが対応するプロトコルと通信方式の組み合わせによって決まります。クライアント名だけで判断しないでください。

おすすめの用途:既存のv2fly設定を使う場合、同系統のコアの挙動を確認したい場合

v2rayN:PCでの設定管理

PCではノードとサブスクリプションをまとめて管理できます。トラブルシューティングでは、クライアントのバージョンと実際に動作しているコアのバージョンを併せて確認してください。画面が更新されても、すべてのコアコンポーネントが同時に更新されたとは限りません。

おすすめの用途:Windows、macOS、Linuxでのデスクトップ利用

選ぶ手順:設定全体を確認してから、乗り換えを判断

ノードのプロトコル、通信方式、セキュリティレイヤーをそれぞれ確認しましょう。どれか一つでも現在のコアが対応していない場合は、まず互換性の問題を解決してください。何度も速度を測るだけでは、設定の確認にはなりません。

画面とプロキシモード:サービスを起動しても、すべてのアプリがプロキシを使うとは限らない

PCでは、システムプロキシとTUNの2つが主な接続方法です。システムプロキシはOSにプロキシアドレスを登録しますが、設定が反映されるかどうかはアプリがその設定を参照するかによります。TUNは仮想ネットワークインターフェースを介して対象の通信を取り込みますが、権限やルーティング、DNSの設定も必要です。v2rayNを初めて使う場合は、まずシステムプロキシ経由でブラウザーに接続できることを確認してから、必要に応じてTUNを検討しましょう。複数の設定を同時に変えると、問題の切り分けが難しくなります。

  1. v2rayN:有効な設定を選んでアクティブサーバーにし、画面下部またはトレイメニューでシステムプロキシの状態を確認します。一般的な操作メニューは「システムプロキシ」→「システムプロキシを自動設定」です。表示はインストールしたバージョンによって異なります。
  2. PCアプリに個別でプロキシを設定する場合:クライアントのローカル待ち受け設定を開き、アドレス、ポート、プロトコルの種類を確認してから、対象のアプリに入力します。HTTPプロキシとSOCKSプロキシのポートは、番号が近いからといって使い回せるわけではありません。
  3. v2rayNG・v2flyNG:サービスを起動するときに、AndroidのVPN接続を許可します。その後、アプリごとのプロキシ設定で対象アプリが除外されていないか確認してください。システムにVPNアイコンが表示されても、サービスが確立したことを示すだけで、接続先ノードに接続できたとは限りません。
  4. 変更後に再テスト:まずプロキシが必要なページをテストし、次に直接接続するページをテストします。ログも確認して、ルーティングが想定どおりか確かめましょう。

以下の2つのポートは手動設定の例であり、3つのクライアントに共通するデフォルト値ではありません。ローカルの待ち受けアドレスが127.0.0.1で、2つのインバウンドをそれぞれ有効にしている場合、入力が必要なプロキシの種類を見分ける目安になります。現在のバージョンで混合ポートが使える場合は、そのポートの実際の機能に従ってください。

10808
SOCKSインバウンドのポート例。クライアントで待ち受け状態を確認してください
10809
HTTPインバウンドのポート例。クライアントで待ち受け状態を確認してください

サブスクリプション対応:ノードの同期とルーティング・権限の設定は別々に

3つのクライアントはいずれもサブスクリプション管理に使えますが、「サブスクリプション対応」は「どんな形式でも読み込める」という意味ではありません。一般的なサブスクリプションでは複数の共有リンクが提供され、クライアントがリンクをノードとして読み込みます。配信元が別の設定形式やログインページ、エラーメッセージを返す場合、アドレスを登録できても有効なノードは取得できません。インポート前に配信元の信頼性とアカウントの有効性を確認し、提供元の案内に従って現在のクライアントに対応する形式を選んでください。

  1. サブスクリプションを追加:サブスクリプショングループまたは設定画面から項目を追加し、判別しやすい名前と完全なサブスクリプションURLを入力します。アカウントのログインページをサブスクリプションURLとして登録しないよう注意してください。
  2. 更新を実行:v2rayNでは通常、「サブスクリプショングループ」メニューから更新します。v2rayNGでは通常、右上のメニューからサブスクリプション設定を開いて更新します。v2flyNGはインストールしたバージョンのサブスクリプションメニューから操作してください。他のクライアントの画面例をそのまま当てはめないでください。
  3. 結果を確認:ノードが追加されたか、プロトコルの種類が想定どおりか、更新ログにエラーがないか確認します。一覧に表示されたら、実際に接続して通信できることも確かめてください。
  4. 更新方法を選ぶ:サブスクリプションURLに直接接続できる場合は、まず直接更新します。直接接続できないことが確認でき、利用可能なプロキシがある場合に限り、プロキシ経由での更新を試してください。初回インストール時に使えるノードがなければ、この設定だけで接続できるようにはなりません。

設定例:PCとAndroidで同じサブスクリプションを使う

PC:v2rayN
  • 現在のクライアントに対応するサブスクリプションURLをインポートし、手動で更新してノードを1つ確認します。
  • PCアプリに合わせてシステムプロキシまたはTUNを選びます。
  • ルーティングルール、ローカルポート、DNSの設定は個別に保存します。
Android:v2rayNGまたはv2flyNG
  • サブスクリプションに含まれるプロトコルの組み合わせが、選択したコアに対応しているか確認します。
  • VPNサービスを許可し、必要に応じてアプリごとのプロキシを設定します。
  • Wi-Fi、モバイル通信、バックグラウンド実行の条件をそれぞれ確認します。

同じサブスクリプションを使えばノードの管理を効率化できますが、更新は各端末で必要です。ルーティング、権限、ローカルポート、独自設定はサブスクリプションから自動同期されません。

サブスクリプションURLは機密情報として扱ってください。スクリーンショットを共有する前に、URL全体とアカウント情報を隠しましょう。クライアントを乗り換えるときも、設定一式を他人に送る必要はありません。更新後にノードが消えた場合は、元のクライアントでまだ使える設定をすぐ削除せず、まずサブスクリプションの応答と解析エラーを確認してください。

速度と安定性:クライアント名だけで通信速度は決まらない

同じノードでも、端末ごとの通信状況はWi-Fiなどの無線環境、サーバーの負荷、回線の混雑、ルーティングルール、DNS、端末の省電力設定に左右されます。v2rayNGからv2flyNGに替えたらたまたま速くなったとしても、特定のコアが常に速いとは言えません。ソフトを変えたことでノードの選択、接続の再利用設定、アクセス経路が同時に変わった可能性もあります。

ログにローカルポートの使用中と表示されたら、重複して起動しているプロセスを終了するか、待ち受けポートを変更します。ドメイン名の解決に失敗している場合は、DNSの経路を確認してください。ハンドシェイクエラーの場合は、システム時刻と該当するセキュリティレイヤーの項目を確認します。原因によって対処方法は異なるため、むやみにクライアントを切り替えるとトラブルの手がかりを失いかねません。詳しく調べる場合は、トラブル対処の完全ガイドを参照してください。

クライアント選びのよくある質問:インポート・接続・移行

PCにv2rayNをインストール済みです。Androidにも同じアプリを入れればいいですか?

名前だけで選んでそのまま使うのは避けましょう。PCではv2rayNを使い、Androidではプロトコルの要件に応じてv2rayNGまたはv2flyNGを選びます。ダウンロードページでOSを確認して、対応するサブスクリプションをインポートしてください。PCのシステムプロキシ設定をAndroidにコピーする必要はありません。

サブスクリプションをインポートできたのに、接続できないノードがあるのはなぜですか?

該当ノードの編集画面を開き、プロトコル、通信方式、セキュリティレイヤー、必須項目を確認してから、使用中のコアのバージョンを確認してください。一覧にノードが表示されるのは、インポート時に項目が作成されたことを示すだけです。実行時に設定全体がサポートされているとは限りません。

AndroidでVPN接続済みと表示されるのに、ブラウザーを開けない場合はどうすればよいですか?

まず現在のノードが有効か確認し、アプリごとの設定でブラウザーが除外されていないか調べます。次に、ログに名前解決やハンドシェイクのエラーがないか確認してください。システムのVPN経路を使用する可能性があるほかのサービスを一時停止し、設定を一度に変更せず、一項目ずつ再テストします。

v2rayNGからv2flyNGに乗り換える場合、バックアップをそのままインポートできますか?

アプリのバックアップ形式が共通だとは限りません。元のアプリの設定は残し、まず対応するサブスクリプションまたは共有リンクを再インポートしてください。独自のJSON、ルーティング、DNS設定は、移行先のコアに合わせて確認し直します。接続と普段使うアプリが正常に動くことを確かめてから、古い設定を整理しましょう。

サブスクリプションにREALITYが含まれています。Androidではどのクライアントを選べばよいですか?

Xrayの設定要件に従ってv2rayNGを優先的に検討し、ノードに必要な公開鍵やサーバー名などの項目を確認してください。VLESSのアドレスとユーザーIDだけで設定が完成したと判断しないでください。また、Xray固有の項目をそのままv2fly環境に適用しないでください。

選ぶ順序:OS、プロトコル、プロキシモード、サブスクリプション形式

初めてインストールするときは、高度な設定をすべて有効にするより、まず1つの設定で接続を確認するほうが効果的です。PCではv2rayNから始め、AndroidではXrayまたはv2flyの実際の要件に合わせて選びます。現在の設定が安定している場合は、乗り換えによって解決したい具体的な問題を確認してから移行を検討しましょう。

  1. OSを確認:PCではOSとアーキテクチャ、Androidではインストールパッケージが端末に対応しているか確認します。
  2. プロトコルを確認:プロトコル、通信方式、セキュリティレイヤーをまとめて確認し、必要に応じてコアのバージョンも調べます。
  3. 通信を取り込む範囲を決める:PCではまずシステムプロキシ、AndroidではVPNの許可とアプリごとのルールを確認します。
  4. サブスクリプションを確認:更新後に実際にアクセスできるか確かめ、ルーティングとDNSの設定は端末ごとに保存します。

3つのクライアントに、利用条件を問わない一律の順位はありません。OSに合ったものを選び、コアを設定に合わせ、通信が想定したプロキシ経路を通っていることを確認する。それがクライアント選びで大切なポイントです。