PCではv2rayN、AndroidでXrayやREALITYの設定が必要ならv2rayNGを優先し、V2Flyコアが必須の設定にはv2flyNGを検討しましょう。対応OS、プロトコルの設定項目、サブスクリプション、通信の振り分け方を順に確認し、両方の端末を設定する手順も解説します。名前は似ていますが、インストーラーやコアの設定、ルーティング方法は共通ではありません。
まず端末で選ぶ:PCはv2rayN、Androidはコアも比較
先にOSを確認してから機能を比較しましょう。v2rayNはWindows、macOS、Linuxのデスクトップ環境向け、v2rayNGとv2flyNGはAndroid向けです。同じサービスを使うために、PCとAndroidへ同じアプリを入れる必要はありません。両端末でそろえるべきなのは、サーバー側が求めるプロトコルと接続パラメーターです。
v2rayN:PC向けクライアント
おすすめPCでサブスクリプションを管理し、ログの確認やルーティングの調整を行う用途に向いています。画面やコアの構成はOSや配布パッケージによって異なる場合があります。ダウンロード時はOS、CPUアーキテクチャ、UIの種類を確認してください。ここでのおすすめはPC向けであり、Android用クライアントの代わりになるという意味ではありません。
おすすめ:Windows、macOS、Linux搭載PCの日常利用
v2rayNG:Android向けXrayクライアント
Xrayコアでプロキシ接続を処理し、Android VPNサービスを通じて端末の通信を取り込みます。VLESSやREALITYなどを使う場合は、利用中のクライアントに含まれるコアのバージョンと、インポートした設定項目がそろっているか確認してください。
おすすめ:Android端末、Xray設定、アプリごとのプロキシ対象指定
v2flyNG:Android向けV2Flyクライアント
V2Flyコアを使用し、そのコアで動作確認済みの設定に適しています。名前が似ているからといって、Xray向けのトランスポートやセキュリティ設定をそのまま移さないでください。設定の互換性は項目ごとに確認が必要です。
おすすめ:Android端末、既存のV2Fly設定、関連する運用経験
インストーラーは端末のアーキテクチャにも合わせる必要があります。たとえば、デスクトップ向けのx64版とARM64版は別のファイルです。Android版もアーキテクチャごとに分かれている場合があります。起動後に問題を調べるより、先にシステム情報を確認し、ダウンロードセンターから対応するものを選びましょう。
コアとプロトコル:「VLESS対応」だけでは互換性を判断できない
クライアントは画面やサブスクリプションを管理し、コアを起動します。プロトコルのハンドシェイク、通信、名前解決、ルーティングを処理するのはコアです。v2rayNは複数のコアを管理できますが、実際に使える機能は選択中のコアとインストール状況によって異なります。v2rayNGとv2flyNGの主な違いは、XrayとV2Flyというコアの違いです。
| 確認項目 | v2rayN | v2rayNG | v2flyNG |
|---|---|---|---|
| 対応OS | Windows、macOS、Linux | Android | Android |
| コアとの関係 | 配布パッケージや設定により、Xray、sing-boxなどのコアを管理可能 | Xray | V2Fly |
| VMessを使う場合 | 選択したコアとトランスポート設定を確認 | ノードの設定項目とコアのバージョンを確認 | ノードの設定項目とコアのバージョンを確認 |
| VLESS + REALITY | 必要な組み合わせに対応するコアと設定方法を選択 | REALITYの設定項目と必要なコア機能を確認 | XrayのREALITY設定をそのまま代替することはできない |
| 主な通信の取り込み方法 | システムプロキシ、アプリごとの手動設定、またはTUN | Android VPNサービス | Android VPNサービス |
ノード設定には、少なくともプロトコル、アドレス、ポート、認証情報が含まれます。さらにトランスポート方式、TLS、セキュリティ拡張、フロー制御の設定が必要な場合もあります。どちらのクライアントもVLESSを認識していても、サーバー側のすべての組み合わせに対応するとは限りません。REALITYは通常のTLSとは異なります。TLSに変更したり、認識できない項目を削除したりしても、通常は接続の問題を解決できません。
- VMess:UUID、トランスポート方式、TLS、端末の時刻を確認します。端末の時刻がずれていると、認証に影響する場合があります。
- VLESS + TLS:サーバー名、証明書の検証、トランスポートのパス、サーバー側で指定されたflowを確認します。
- VLESS + REALITY:公開鍵、short ID、サーバー名、フィンガープリント、flowを確認します。具体的な項目はサーバー設定に従ってください。
選び方の結論:ノードの設定を確認してからAndroidクライアントを選ぶ
サービス提供元がXrayを指定している場合やREALITYの設定を提示している場合、Androidではまずv2rayNGを選びましょう。設定がV2Fly向けであることを確認できた場合に限り、v2flyNGを候補にします。非対応の項目があるときは、削除して試すのではなく、対応するクライアントや設定に切り替えてください。
サブスクリプションのインポート:URLは共用できても、設定ファイルはそのまま移せない
3つのクライアントはいずれもサブスクリプションを管理できますが、「サブスクリプション」の形式は一種類ではありません。一般的なノードサブスクリプションは共有リンクの一覧を返し、Base64でエンコードされている場合もあります。一方、ネイティブJSONは、インバウンド、アウトバウンド、DNS、ルーティングなどを含むコアの設定一式であることがあります。サブスクリプションの更新機能とカスタム設定のインポート機能は、用途が異なります。
- PC:v2rayNの「サブスクリプショングループ」→「サブスクリプショングループ設定」でURLを追加して保存し、「現在のサブスクリプションを更新(プロキシを経由しない)」を実行します。URLへのアクセスにプロキシが必要な場合は、接続可能な状態で「プロキシ経由で更新」を選んでください。
- Android:v2rayNGまたはv2flyNGの「サブスクリプション設定」でURLを追加して保存し、メイン画面に戻って「サブスクリプションを更新」を実行します。メニューの位置や表記は、バージョンによって多少異なる場合があります。
- 更新後:ノード一覧に項目が表示されるか確認し、ノードの詳細を開いてプロトコル、トランスポート、セキュリティ設定を確認します。一覧に表示されたことはノードを解析できたことを示すだけで、サーバーに接続できるとは限りません。
- 移行時:まずサービス提供元が案内する互換性のあるサブスクリプションを追加してください。ネイティブJSONしかない場合は、対象のコアとインポート方法を確認し、クライアント全体の設定をそのまま上書きしないでください。
PCでは更新できるのにAndroidではできない場合、まず両端末のネットワーク、サブスクリプションURLが完全かどうか、更新リクエストがプロキシ経由かを比べてください。サービス提供元がクライアントごとに異なる形式を出力する場合は、ノード名を何度も変更するのではなく、形式に合ったサブスクリプションの追加方法を選びます。
システムプロキシとVPN:ノード接続だけではアプリの通信がプロキシ経由になるとは限らない
PCでは、まず通信がローカルプロキシに届いているか確認します。v2rayNのシステムプロキシ設定が影響するのは、システムプロキシに従うアプリです。独自のネットワーク設定を使うアプリでは、プロキシを手動で指定するか、別途TUNを設定する必要があります。Androidクライアントは起動時にVPN権限を要求し、仮想ネットワークインターフェースを使って通信を取り込みます。これはPCのシステムプロキシのオン・オフとは異なる仕組みです。
これらはトラブルシューティングでよく見かけるポートであり、すべてのバージョンが両方を同時に待ち受けるわけではありません。新しい設定では、混合インバウンドを1つだけ使う場合もあります。v2rayNの「設定」→「パラメーター設定」で実際のローカル待ち受け設定を確認し、起動ログも併せて確認してください。アプリにプロキシを手動設定する場合、アドレスには通常127.0.0.1を指定します。ポートとプロキシ種別は、実際のインバウンド設定に合わせてください。
- PCのブラウザーからアクセスできない:ノードがアクティブサーバーに設定されていることを確認し、タスクトレイのメニューでシステムプロキシが「システムプロキシを自動設定」になっているか確認します。
- 特定のPCアプリだけ使えない:システムプロキシを無視していないか、古いポートが手動設定されたままではないか確認します。サブスクリプションの変更は後にしてください。
- Androidで起動済みなのにアプリが直接接続する:アプリごとのプロキシ設定が有効か、対象アプリが対象に含まれているか、または除外されているかを確認します。
- Androidの接続が繰り返し切れる:バックグラウンド動作がシステムに制限されていないか、VPNサービスを使用する別のアプリが起動していないか確認します。
ルーティング:通信を取り込む範囲を決めてから、アウトバウンドを選ぶ
アプリごとの設定で決めるのは「どのアプリをプロキシ経由にするか」です。コアのルーティングで決めるのは「取り込まれた接続をどのアウトバウンドへ送るか」です。この2つを混同しないでください。Androidで対象外にしたアプリの通信は、クライアントのコアにあるドメインルールでは処理されません。PCでも、プロキシに取り込まれていない通信は、ルーティングルールを追加しただけでは自動的に対象になりません。
PCとAndroidの設定例:ノードの取得元は共通にし、通信対象は個別に設定
PC:v2rayN
- 互換性のあるサブスクリプションを追加し、利用可能なノードを選択します。
- まずシステムプロキシを使って、ブラウザーの接続を確認します。
- ドメインルールとIPルールの適用順を確認します。
- 端末全体の通信を取り込む必要がある場合に、TUNを設定します。
Android:v2rayNGまたはv2flyNG
- 使用するコアに対応したノードをインポートします。
- 接続を開始し、VPN権限を許可します。
- 必要に応じてアプリごとのプロキシ対象を設定します。
- 直接接続する宛先とプロキシ経由の宛先を、それぞれ確認します。
両端末で同じサブスクリプションを利用できますが、ルーティング、DNS、対象アプリの設定は端末ごとに保存し、個別に検証する必要があります。
ルールを調べるときは、広い条件のルールが具体的なルールより先に適用されていないか、アウトバウンドのタグが存在するかを確認します。ドメインルールはDNSの処理、宛先の形式、スニッフィング設定にも左右されます。同じサイトへの接続結果が端末間で異なっても、ノードが違うとは限りません。一方はドメイン名で照合し、もう一方はIPアドレスしか取得できていない可能性があります。
- ノードは変えず、一時的に全通信をプロキシ経由にして基本接続を確認します。テスト後は必要な振り分け設定に戻してください。
- 基本接続を確認できたら、ドメインとIPのルールを戻し、一度に変更する設定は一種類に絞ります。
- ログで対象接続のアウトバウンドを確認します。ルーティングの詳細が出ない場合は、一時的にログレベルを上げ、確認が終わったら元に戻してください。
よくある選び方の疑問:サブスクリプション、速度、複数端末での利用
v2rayNGとv2flyNGの間でノードをインポートできますか?
両方が対応する共有リンクならインポートできる場合がありますが、ノードの詳細を開き、トランスポートとセキュリティの設定を確認してください。ネイティブJSONはコア固有の構文も関係するため、ファイル名を変えるだけでは使えません。REALITYを含む設定は、汎用的なVLESS設定として扱わず、まずXrayへの対応を確認してください。
別のクライアントに変えるとダウンロード速度は上がりますか?
クライアント名だけでは判断できません。同じノード、同じネットワーク、同じテスト先を使い、時間帯もそろえて接続の安定性を比べてください。まずログで名前解決の失敗、接続タイムアウト、再試行を確認します。これらの条件がそろっていない速度の数値は、クライアント選びの根拠になりません。
PCとAndroidで同じサブスクリプションを使えますか?
まず両端末でサブスクリプションを解析できることを確認し、サービス提供元の端末数、同時接続数、通信量の制限を確認してください。同じURLを使えても、同時接続が無制限とは限りません。各端末で更新した時点の内容がノード一覧に反映されるだけで、端末内の変更が自動的にリアルタイム同期されるわけではありません。
サブスクリプションの更新に成功したのに、接続を開始できないのはなぜですか?
ログを開き、最初に表示された明確なエラーを確認してください。PCでアドレスが使用中と表示された場合は、実際の待ち受けポートを調べます。設定項目やプロトコルが非対応と表示された場合は、選択中のコアを確認してください。AndroidではVPN権限とノードの詳細も確認し、更新の成功を接続の成功と混同しないでください。
最終チェック:OS、プロトコル、通信の取り込み方法を順に確認
PCではv2rayNを選び、インストーラーとシステムアーキテクチャ、使用するコア、システムプロキシ設定を確認します。Androidでは、まずサーバーがXrayの機能を必要とするか確認してください。REALITYが必要ならv2rayNGを優先し、V2Fly向けの設定が明確に必要な場合はv2flyNGを選びます。特別なコア要件がなければ、名前が似ているという理由だけでAndroidクライアントを両方インストールする必要はありません。
- ステップ1:端末のOSがWindows、macOS、Android、Linuxのどれかを確認し、対応するインストーラーを選びます。
- ステップ2:プロトコル、トランスポート、セキュリティ設定、コアの互換性を確認し、インポート時にノードの設定項目が欠落していないことを確かめます。
- ステップ3:まず単一ノードで接続を確認し、その後にアプリごとの設定、DNS、ルーティングルールを追加します。
- ステップ4:動作確認済みの設定を記録します。後で問題が起きた場合は、コア、ノード、ルーティングを同時に切り替えず、一度に一つの条件だけ変更してください。
初回の設定は入門ガイドを参考に、サブスクリプションのインポートと接続確認を行えます。通信対象をさらに調整する場合は、初心者から始める応用設定ガイドをご覧ください。「ノードが使えるか」と「アプリの通信がプロキシに取り込まれているか」を分けて確認すると、再インストールを繰り返すより原因を見つけやすくなります。