Androidクライアント/Xrayコア/オープンソース

v2rayNG Android版をダウンロード Android版V2Rayクライアントの設定ガイド

まずサブスクリプションを取り込み、ルーティングとDNSを設定します。Androidではv2rayNG、デスクトップではv2rayNを使用します。

プロトコルとセキュリティの仕組み

  • VMess
  • VLESS
  • Trojan
  • Shadowsocks
  • REALITY

OSに合ったダウンロード先を選ぶ

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

v2rayNG・v2rayNの対応プラットフォーム

まずOSを確認し、次にプロセッサのアーキテクチャを選びます。クライアントは設定の管理とコアの起動を担います。接続に必要なサーバーアドレス、認証情報、サブスクリプションURLは別途用意してください。

Windowsv2rayN

デスクトップ版にはクロスプラットフォームのUIと、使い慣れたレイアウトの従来型WPF版があります。OSの要件に合うものを選んでから、サブスクリプションを取り込みます。システムプロキシとTUNは通信を取り込む方法が異なるため、両方を同時に有効にする必要はありません。

x64 · Desktop / WPFダウンロードへ →
macOSv2rayN

「このMacについて」でチップを確認します。Apple Siliconはarm64、Intelはx64です。インストール後、まずシステムプロキシでブラウザーの接続を確認し、アプリがシステムプロキシに従うかどうかに応じてTUNを設定します。

arm64 / x64 · dmgダウンロードへ →
Androidv2rayNG / v2flyNG

基本はXrayコアを使うv2rayNGを選び、V2Flyコアが必要な場合にv2flyNGを選びます。比較的新しいスマートフォンなら通常arm64、アーキテクチャがわからない場合はユニバーサル版を選択します。初回接続時はAndroidのVPN接続許可が必要です。

arm64 / universalダウンロードへ →
Linuxv2rayN

ディストリビューションに合ったdebまたはrpmを選び、x64とarm64も確認します。GUIが起動しても、すべてのアプリがプロキシを使うとは限りません。ターミナル、ブラウザー、デスクトップ環境で参照するプロキシ設定は異なる場合があります。

x64 / arm64 · deb / rpmダウンロードへ →

インストールパッケージのアーキテクチャが合わないと、インストールや起動に失敗します。サブスクリプションの形式が合わない場合は、通常、取り込み時にエラーになります。問題が起きた段階を見極め、該当する設定を調整しましょう。クライアントを何度も入れ替える必要はありません。

クライアント一覧を見る →

設定項目と設定例

Xray、サブスクリプション、ルーティング、DNS

各設定が影響する範囲を理解してから値を変更してください。以下の例は設定の構造を示すもので、そのまま接続に使える完全な設定ではありません。各項目が利用できるかどうかは、使用するクライアントとコアの対応状況を確認してください。

Xrayコアとトラフィックのスニッフィング

v2rayNGではGUIから設定し、実際の接続処理はXrayコアが行います。トラフィックのスニッフィングを有効にすると、コアは対応する通信からドメイン名を識別し、ドメインベースのルーティング判定に利用できます。アプリの通信内容を復号する機能ではありません。問題を調べる際は、まずプロトコル、トランスポート、セキュリティの各設定がサーバー側と一致しているか確認し、その後にSniffingを確認します。Muxは独立した多重化オプションで、すべてのプロトコル構成に適するわけではありません。まずは無効のまま接続できる状態を作り、必要に応じて調整してください。

sniffingdestOverrideMux
{
  "sniffing": {
    "enabled": true,
    "destOverride": [
      "http",
      "tls"
    ],
    "routeOnly": true
  }
}

設定パネルは設定例を示しており、すべてのインストール環境での初期値を表すものではありません。ルール全体の設定、DNSリクエストのアウトバウンド、自前の設定を組み合わせる方法は、上級者向けガイドを参照してください。

高度な設定を見る →

初回接続までの手順

インストール、インポート、動作確認

まず、設定内容が明確で再現可能な接続を一つ作ります。初回設定では、ルーティング、DNS、多重化、対象アプリの範囲を同時に変更しないでください。問題が起きたときに原因を特定しにくくなります。

  1. クライアントをインストールして接続情報を準備

    OSとプロセッサのアーキテクチャに合ったインストールパッケージを選びます。Androidではv2rayNGをインストールした後、設定を開いてVPNモード、ルーティング、DNSの項目を確認します。デスクトップではv2rayNをインストールし、まず画面が正常に起動することを確認してください。システムから権限を求められた場合は、用途を確認してから許可するか決めます。該当する通信の取り込み方式を使う場合にのみ、対応する権限が必要です。

    クライアントをインストールしただけでは、接続可能なサーバーは用意されません。次に進む前に、利用可能なサブスクリプションURL、共有リンク、またはサーバーの完全な設定情報を準備してください。サブスクリプションURLには認証情報が含まれる場合があるため、公開の掲示板に投稿しないでください。他の人に相談する際は、認証情報を削除したエラーの説明と設定画面のスクリーンショットのみを共有してください。

  2. 設定をインポートして接続先を選択

    単一ノードのリンクは「クリップボードからインポート」またはQRコードの読み取りで取り込みます。サブスクリプションURLの場合は「サブスクリプショングループ設定」を開き、保存後に該当グループを更新してください。両者を混同しないようにします。取り込み後、サーバーアドレス、ポート、プロトコル、トランスポート方式、TLSまたはREALITYの設定がそろっているか確認し、接続先として使う項目を一つ選びます。

    まずはクライアントに用意されている標準的なルーティングを使い、複雑なルールは追加しないでください。Androidでは接続をタップしてVPN接続を許可します。デスクトップではコアを起動した後、必要なシステムプロキシ方式を選びます。サブスクリプションの更新結果が空の場合は、応答がサブスクリプションではなくログインページになっていないか確認してください。インポートの失敗だけでサーバーがオフラインだと判断しないでください。

  3. 実際のリクエストを確認してから振り分けを調整

    ブラウザーで普段使うサイトにアクセスし、クライアントのログも見てリクエストがコアに届いているか確認します。TCPingでわかるのは接続先ポートの状態です。実接続の遅延はプロキシ経由のリクエストに近い指標ですが、どちらも単独ではすべてのアプリで使えることを示しません。DNSの名前解決、ページの読み込み、対象アプリの動作も確認してください。

    接続に問題がある場合は、「クライアントが動作しているか」「通信が取り込まれているか」「サーバーに到達できるか」「ドメインを解決できるか」「ルールが一致しているか」の順に確認します。動作確認済みの基本設定を保存し、一度に一項目だけ変更して再テストしてください。基本の接続が正常になってから、アプリごとのプロキシ、カスタムルーティング、TUNを設定すれば、いつでも元に戻せます。

設定手順をすべて見る →

オープンソースプロジェクトと保守の範囲

Project V、V2Fly、Xray

コアはネットワーク接続を処理し、クライアントは設定とシステム連携を担います。この二つの役割を理解すると、パラメーターの変更、クライアントの更新、システム権限の調整のどれで問題を解決すべきか判断しやすくなります。

プロトコルの機能からGUIまで

Project Vは、V2Rayを代表例とするネットワークプロキシツールのエコシステムです。インバウンド、アウトバウンド、ルーティング、DNS、トランスポートを個別に設定でき、ネットワーク環境に応じて組み合わせられます。V2FlyはV2Rayを引き継ぐコミュニティ主導のプロジェクトで、Xrayは関連エコシステム内で独自に開発が進むコアプロジェクトです。共通する設定概念もありますが、対応機能やパラメーターの詳細が常に同じとは限りません。

VMess、VLESS、Trojan、Shadowsocksは接続プロトコルです。TCP、WebSocket、gRPCなどはトランスポート方式、TLSとREALITYは接続のセキュリティ機構にあたります。それぞれ役割の階層が異なるため、互いに置き換えられるものではありません。VLESSの共有リンクを取り込んだ後も、トランスポート方式とセキュリティ設定を確認してください。プロトコル名だけでは互換性を判断できません。

Project VエコシステムV2FlyコアXrayコアGUIクライアント

3つのクライアントの役割

v2rayNはデスクトップ向けのオープンソースGUIクライアントで、サーバー管理、サブスクリプショングループ、ルーティング、プロキシ方式の設定に使います。v2rayNGはAndroid向けで、Xrayコアを使用し、AndroidのVPNインターフェースと連携します。v2flyNGもAndroid向けでV2Flyコアを使用し、特定のコアが必要な場合の選択肢になります。いずれもユーザーの操作を低レベルのネットワーク設定に反映するクライアントであり、サーバーサービスを提供するものではありません。

オープンソースライセンスと利用料金

3つのクライアントはいずれも無料で利用できるオープンソースソフトウェアです。クライアントと組み込まれているコアは、それぞれ異なるライセンスに従う場合があります。改変や再配布を行う際は、ソフトウェアに付属するライセンスを確認してください。一つのコンポーネントの条件を、すべての依存ソフトウェアにそのまま適用することはできません。クライアントが無料であることと、サーバーの利用料金は別の話です。サブスクリプションの有効期限、通信量、接続品質もクライアントによって決まりません。

クライアントの更新とサブスクリプションの更新

クライアントを更新すると、画面、機能、同梱コアが変わる場合があります。サブスクリプションの更新ではサーバー設定が再取得されるため、両者は別の操作です。サーバーの認証情報やトランスポート設定が変わった場合は、該当するサブスクリプションを先に更新してください。新機能を認識しない場合は、クライアントとコアが対応しているか確認します。更新前に必要なカスタムルールを保存し、更新後はログと既存の接続を確認してください。プログラムが起動することだけで判断しないようにしましょう。

ローカル設定とリモートサービスの切り分け

ルーティングルール、DNSアドレス、アプリごとのリストは、主にこの端末で通信をどう処理するかに影響します。一方、リモートサーバーへの到達性、証明書、認証はサーバー側の設定に左右されます。クライアントが起動中と表示されても、ローカルのサービスが動作していることしかわからず、リモート接続の成功を保証するものではありません。タイムアウト、認証失敗、名前解決エラーが起きた場合は、エラーの種類と発生タイミングを記録し、該当する経路を順に確認してください。あらゆる問題をプロキシモードのせいにしないことが大切です。

技術ノート

遅延テスト、初回のトラブルシューティング、画面の解説

知りたい内容に合わせて記事を選べます。測定値の違い、初回設定でつまずきやすい点、デスクトップクライアントの主な画面の使い方を解説します。

V2Ray初心者のよくある質問10選:インポート失敗、接続できない、プロキシモードの選び方

初心者がつまずきやすい10の疑問をまとめました。サブスクリプションの取り込み失敗、接続中なのにページが開かない問題、グローバルモードとルールモードの選び方、起動時の自動実行などを取り上げ、原因を素早く見分ける方法を紹介します。

トラブルシューティング手順を読む →

すぐに設定を始める場合は、まず入門ガイドをご覧ください。接続できるようになったら、ルーティングとDNSの応用設定に進みましょう。

記事一覧を見る →