クライアント選び・PCとAndroidの設定比較

V2Rayレビューv2rayNとAndroidクライアント

まずプラットフォーム別の選び方を確認し、システムプロキシとVPNモードを比較。その後、サブスクリプション、ルーティング、コアを設定します。

  • オープンソース
  • GUIで設定
  • 日本語ドキュメント
CORE FAMILIES
XrayV2Fly

設定はGUIで管理し、接続はコアが処理します。対応機能を確認してからプロトコルを選びましょう。

OPEN SOURCE GPL / MPL

クライアントとコアには、それぞれ異なるオープンソースライセンスが適用されます。

ROUTING ルール → アウトバウンド

システム側の通信取り込みと、コア側のルーティングは別々に設定します。

PROTOCOL / SECURITY
  • VMess
  • VLESS
  • Trojan
  • REALITY

プロトコル、トランスポート、セキュリティ層は別の項目です。名前だけで速度を判断しないでください。

01 / プラットフォーム別

V2Rayクライアントのダウンロード

まずOSに合ったクライアントを選び、次にCPUアーキテクチャに合うインストーラーを選択します。ダウンロードページではファイル形式、対応環境、インストール時の注意点をまとめています。トップページでは選び方を案内し、異なるプラットフォームのファイルを混在させません。

Windows

v2rayNを推奨

初めてインストールする場合は、まずv2rayNのデスクトップ版を確認しましょう。従来の画面に慣れている方は、クラシックなWPF版も選べます。画面やメニューの配置は異なりますが、サブスクリプション、システムプロキシ、ルーティングの基本的な役割は共通です。インストール前に対応環境を確認し、設定を書き込める場所を確保してください。

接続を開始しても、ブラウザーでプロキシを使えるかどうかは、システムプロキシとブラウザー側の設定にも左右されます。サーバーを選んだだけでは、アプリの通信がコアに取り込まれるとは限りません。クライアントを移行する際は、サブスクリプショングループとカスタムルールをバックアップし、新しい画面で一つずつ確認しましょう。

v2rayN / Desktop · WPF

デスクトップではv2rayNを選び、Apple SiliconとIntelに合ったインストーラーを使います。「このMacについて」でチップやプロセッサを確認してから、対応するアーキテクチャを選択してください。購入年だけで判断しないようにしましょう。初回起動時の案内とシステムプロキシの許可は、それぞれ個別に確認してください。

別のデスクトップ環境から移行する場合も、サブスクリプションURLは引き続き使えます。ただし、完全な設定に含まれるローカルパス、待ち受けアドレス、ルーティング用リソースが移行先で使えるとは限りません。まずクライアント対応の方法でサブスクリプションを読み込み、基本接続を確認してから、必要なルーティング設定を戻すと差分を特定しやすくなります。

v2rayN / Apple Silicon · Intel

Android

v2rayNGを推奨

まずXrayコアを使うv2rayNGを確認しましょう。V2Flyの機能や設定に慣れている場合は、v2flyNGも選択肢です。比較的新しいスマートフォンの多くはarm64版に対応しています。アーキテクチャが分からない場合は、端末情報とダウンロードページの説明を確認してください。汎用版はより多くのアーキテクチャをカバーします。

AndroidではVpnServiceを使ってローカルの仮想ネットワークインターフェースを作成するため、システムの許可が必要です。画面ロック後に接続が切れやすい場合は、省電力設定やバックグラウンド制限を確認しましょう。一部のアプリだけに問題がある場合は、アプリごとのプロキシで対象アプリの選択や除外設定を確認し、通信の取り込み範囲の問題をサーバー障害と混同しないようにしてください。

v2rayNG / Xray → v2flyNG / V2Fly

LinuxのGUIクライアントにはv2rayNを選び、ディストリビューションのパッケージ管理方式に合わせてdebまたはrpmを選択し、さらにx64とarm64を区別します。パッケージ形式とCPUアーキテクチャは別々の条件です。同じLinuxでも、インストーラーをそのまま使い回せるとは限りません。

システムプロキシの扱いはデスクトップ環境によって異なり、ターミナルアプリが独自のプロキシ環境変数を参照することもあります。問題を調べる際は、まずプロキシ対応が明確なアプリでローカルの接続先を確認し、その後ほかのアプリの接続方法を確認しましょう。より広範囲の通信を取り込む場合は、必要な権限やルーティング条件を別途確認してください。

v2rayN / deb · rpm / x64 · arm64

02 / 設定を比較

システム通信の取り込み・サブスクリプション・ルーティング

画面上の名前が似ていても、同じ機能とは限りません。まず通信がクライアントに入っているかを確認し、次にコアが接続をどのアウトバウンドへ振り分けるかを確認します。実際の設定順に沿って、5つの項目を見ていきましょう。

通信の取り込みデスクトップ ↔ Android

システムプロキシは、システム設定を利用するアプリにローカルのプロキシ接続先を提供しますが、すべての通信が取り込まれるわけではありません。v2rayNでは有効な設定で接続を開始してから、必要に応じてシステムプロキシを設定します。終了前に元の設定へ戻すことも忘れないでください。v2rayNGのVPNモードはAndroidのVpnServiceで通信を受け取り、アプリごとのプロキシで対象範囲をさらに限定できます。両者を比べるときは、スイッチの名前ではなく通信の入口を確認しましょう。ブラウザーは使えるのにほかのアプリで問題がある場合は、まずそのアプリが同じ入口を使っているかを確認し、次にルーティングを調べます。サーバーを変えても、アプリがプロキシを回避している問題は解決しません。

v2rayN
システムプロキシ
  → システムプロキシを自動設定
  → システムプロキシを解除
  → システムプロキシを変更しない

v2rayNG
設定 → VPNモード
設定 → アプリごとのプロキシ

03 / 初期設定

インポート・通信の取り込み・確認の3ステップ

初回接続では、まず最小限の設定で動作を確認しましょう。ルーティング、DNS、コアを同時に変更しないでください。各ステップで確認結果を一つ残しておけば、問題が起きたときに戻る場所が分かります。

  1. サブスクリプションを読み込み、設定項目を確認

    クライアントでサブスクリプショングループを作成し、正規に取得したURLを入力して更新します。単一の共有リンクを受け取った場合は、クリップボードからのインポートなど対応する方法を使ってください。設定が一覧に表示されたら、サーバーアドレス、ポート、プロトコル、トランスポートがそろっているかを確認し、使う項目を選択します。共有リンクとサブスクリプションURLは別のものです。同じ入力欄に入れないでください。

    サブスクリプションの更新で確認できるのは、クライアントが設定を取得したことだけです。サーバーに現在接続できる証明にはなりません。一覧が空の場合は更新結果とURLの内容を確認し、設定を認識できない場合は形式とコアの対応範囲を調べましょう。スクリーンショットや問い合わせ文にサブスクリプションURL、ユーザー識別情報、その他の認証情報を載せないでください。

  2. 接続を開始し、通信の入口を選ぶ

    デスクトップでは選択した設定で接続を開始してから、アプリの用途に応じてシステムプロキシを設定します。Androidでは接続時にシステムのVPN許可を承認し、アプリごとのプロキシでテスト対象のアプリが除外されていないことを確認してください。ルーティングモードはコアに入った後の接続処理を決め、システムプロキシやVPNモードは通信をコアに入れる方法を決めます。2つの手順を別々に確認しましょう。

    ほかの通信取り込みツールを使っている場合は、入口が競合しないよう、まず動作状況と対象範囲を確認してください。接続が確立してからカスタムルールを一つずつ追加すると、複雑なルールを読み込んで同時に問題を調べるより原因を特定しやすくなります。デスクトップのプロキシを一時停止する場合は、システムプロキシを元に戻してからクライアントを終了してください。停止済みのローカルポートへアプリが接続し続けるのを防げます。

  3. 実際にアクセスして、異常箇所を切り分ける

    実際に使うアプリからリクエストを送り、クライアントのログで通信がコアに入ったか、どのルールに一致したか、ハンドシェイクや名前解決のエラーが起きたかを確認します。遅延テストは数ある確認方法の一つです。リストに数値が表示されても、すべてのアプリ、プロトコル、接続先にアクセスできるとは限らず、ダウンロード速度を示すものでもありません。

    まったくアクセスできない場合は、システム時刻、設定の有効性、通信の取り込み方法から確認します。一部のドメインだけで問題がある場合は、ルーティングとDNSを調べます。画面ロック後に切断する場合は、Androidのバックグラウンド動作と省電力制限を確認してください。一度に変更する設定を一つに絞り、同じテストを繰り返しましょう。こうすれば、原因がローカル設定、サーバー、回線のどこにあるかを切り分けられ、何度も再インストールする必要がありません。

04 / オープンソースのエコシステム

Project V、V2Fly、Xray

クライアント名をプロトコル名と混同せず、プロジェクト同士の関係を理解することが大切です。GUIクライアント、接続を処理するコア、サーバー設定はそれぞれ役割が異なるため、選ぶ際は段階ごとに確認しましょう。

エコシステムの背景:設定画面はプロトコルそのものではない

Project Vはモジュール型プロキシツールのプロジェクトとして始まり、V2Rayはこのエコシステムで広く使われている名称です。一般に「V2Rayクライアント」と呼ばれるものは、多くの場合GUIの管理ツールを指し、単一のプロトコルを意味するわけではありません。クライアントはサーバー情報の保存、サブスクリプショングループの管理、設定画面の表示、コアの呼び出しを担当します。コアは設定の解析、ルーティング、接続の確立を担います。画面上で設定をインポートできても、すべての項目に対応しているとは限りません。

同じサブスクリプションを複数の端末で使えても、システムによる通信の取り込み方や対象アプリの範囲を個別に設定する必要があるのはそのためです。サーバー情報の取得元が同じでも、ローカルの待ち受け、システム権限、設定の保存場所、バックグラウンド動作はプラットフォームごとに異なります。比較する際は画面の見た目だけでなく、実際の操作手順と必要な機能を確認しましょう。

コアの系統:共通のルーツと独自の進化

V2FlyはV2Rayコミュニティのエコシステムを引き継ぎ、Xrayは関連するコードを基盤に分岐して発展しました。設定の概念には共通点がありますが、それぞれ独自の機能と実装を持っています。従来の設定の一部は対応関係を確認できますが、新機能、項目の初期値、トランスポートの対応状況、リソース形式は異なる場合があります。REALITYなどの機能は、使用するコアごとに確認してください。同じエコシステムに属するからといって、完全に互換性があるとは限りません。

デスクトップでは、まずv2rayNで使用中のコアを確認してから、該当するエラーを調べます。Androidでは、必要な機能に応じてv2rayNGとv2flyNGを選びましょう。コアの変更が常に速度向上につながるわけではありません。ボトルネックがサーバー負荷や回線品質にあるなら、クライアント名を変えても解決しないことがほとんどです。設定項目の互換性が問題なら、速度測定よりログの具体的なエラーが参考になります。

オープンソースライセンス:クライアントと依存コンポーネントを個別に確認

3つのクライアントはいずれもオープンソースで公開されています。v2rayNとv2rayNGはGPL系ライセンス、v2flyNGもGPL系ライセンスを採用しています。V2FlyとXrayのコアにはMPL 2.0が適用されます。ライセンスの対象はそれぞれ異なるため、クライアントがオープンソースであっても、依存コンポーネントの利用条件が置き換わるわけではありません。改変、再配布、組み込みを行う場合は、各プロジェクトと同梱依存ソフトウェアのライセンス条文を確認してください。

オープンソースであれば、実装の確認や問題の追跡、改善への参加ができます。ただし、現在の端末に適しているかどうかは、OSとの互換性、設定要件、実際の動作結果で判断する必要があります。ここでは対応プラットフォーム、コア、設定の役割を基準に比較し、ダウンロード数や評価、十分なテスト条件のない性能ランキングを結論の根拠にはしません。

更新の考え方:アプリ・コア・サブスクリプションを個別に管理

アプリの更新は画面や設定生成の仕組みを変え、コアの更新は接続機能や実装を変えます。サブスクリプションの更新はサーバー設定の取得元を変え、ルーティング用リソースの更新は一部ルールの照合条件に影響します。これらは別々の操作です。サブスクリプションに新しいプロトコル項目が含まれていても、古いコアでは使えない場合があります。反対に、クライアントを更新しても、期限切れのサブスクリプションや無効になったサーバー設定が自動で修正されるわけではありません。

更新前に復元できる設定とカスタムルールを保存し、更新後は起動、サブスクリプション、通信の取り込み、実際のアクセスの順に確認しましょう。明確な互換性の問題がある場合や新機能が必要な場合にだけ該当するコンポーネントを更新すると、問題の切り分けがしやすくなります。用語を確認する場合は用語集を、インポートや権限、接続の問題を調べる場合はFAQのカテゴリから症状に合う項目を参照してください。

05 / 技術ノート

接続トラブルとサブスクリプションの仕組み

再現可能なテストと、対象を明確にした設定から確認しましょう。遅延の数値はスループットではなく、共有リンクはサブスクリプションではありません。タイムアウトも必ずしもサーバー障害を意味しません。問題に合った記事を読み、クライアントの設定を一つずつ確認してください。

応用

V2Rayの遅延テストを解説:ping・実接続の遅延・ダウンロード速度の違い

ICMP ping、TCPハンドシェイク、実接続の遅延、ダウンロード速度の測定対象と違いを解説します。数値が一致しない理由と、目的に応じて見るべき指標が分かります。テスト項目を選ぶ前に、ホストへの到達性、プロキシのハンドシェイク、継続的なデータ転送のどれを確認したいのか整理しましょう。

トラブル対処

V2Rayノードがタイムアウトして接続できないときの確認チェックリスト

システム時刻、サブスクリプションの更新、ポートやトランスポートの設定、コアのログまで、決まった順序でノードのタイムアウトや接続不能を調べます。各ステップで確認する条件を一つに絞り、結果を記録することで、ローカル設定とリモート接続のどちらに問題があるかを切り分けます。