オープンソースのGUIクライアントサブスクリプション追加 · ルーティング

V2Ray GUIクライアントv2rayN・v2rayNG

サブスクリプションの追加からルーティングまで、端末に合ったクライアントを選び、日本語の設定ガイドを参考に接続しましょう。

  • VMess
  • VLESS
  • Trojan
  • Shadowsocks
  • REALITY
共有リンクをインポート vmess:// · vless:// · trojan:// · ss://

CONFIGURATION

サブスクリプション・ルーティング・プロキシの設定

設定を始める前に、クライアント、コア、サブスクリプションの役割を整理しましょう。クライアントは操作画面、コアは接続処理、サブスクリプションはサーバー情報を提供します。インポートに成功しても設定が読み込まれただけです。使用するサーバーを選び、通信の入口を設定し、ルーティングを確認してください。以下の画面は設定例です。メニュー名はクライアントの画面変更に伴い異なる場合があるため、インストール済みのバージョンに合わせて操作してください。

v2rayNでサブスクリプションを追加

サブスクリプションURLから複数のサーバー設定を取得・更新できます。一方、共有リンクは通常、1つの設定に対応します。デスクトップではサブスクリプショングループにURLを登録してから更新します。Androidではサブスクリプション設定からURLを追加できるほか、クリップボードから共有リンクをインポートできます。更新エラーを調べやすいよう、グループ名は提供元や用途ごとに分けるのがおすすめです。設定を1件ずつ手入力する手間は省けますが、ローカルのルーティング設定まで自動で同期されるわけではありません。更新後はプロトコルの種類と使用中のサーバーを確認し、一覧の更新を接続成功と取り違えないようにしましょう。

サブスクリプションの追加手順を見る →

サブスクリプショングループの設定

名前提供元に合わせて設定
サブスクリプションURL提供元のURLを入力
自動更新を有効にする
サブスクリプションを更新サーバー設定を取得

サブスクリプションと個別の共有リンクは、別々のインポート方法です。元のサブスクリプションURLを保存しておけば、同じグループから継続して更新できます。サーバー設定を手動で変更した場合、更新時に上書きされることがあるため、重要なカスタム設定は別途保存してください。

ドメイン・IPアドレスによるルーティング

ルーティングでは、コアに届いた通信を直接接続、プロキシ経由、ブロックのいずれにするか決めます。普段使いでは適切なプリセットを選び、必要に応じて対象を絞ったドメインルールを追加しましょう。ルールは通常、上から順に照合されるため、個別のサービス向けルールは大まかな分類より前に配置します。geositeはドメインの分類、geoipはIPアドレスの分類に使うもので、相互に置き換えることはできません。システムプロキシの変更と異なり、ルーティングはコア内部の通信経路を選択します。ルールを追加したら再読み込みし、ログで想定した経路が選ばれたか確認してください。

ルーティングガイドを読む →

ルーティングルール · 上から順に照合

geosite:private→ direct
geoip:private→ direct
geosite:cn→ direct
geosite:geolocation-!cn→ proxy

ルール構文の例です。分類データファイルと出力先のタグは、実際の設定に合わせる必要があります。テキストをコピーしただけでルールが有効になるとは限りません。

システムプロキシの3つの設定

システムプロキシの設定は、その設定に従うアプリがクライアントに接続する方法を決めます。v2rayNでは「システムプロキシを解除」「システムプロキシを自動設定」「システムプロキシを変更しない」がよく使われます。使い始めるときはサーバーを選んでから自動設定を有効にし、終了時には必要に応じて設定を解除してください。「変更しない」は現在のシステム設定を維持するという意味で、プロキシを無効にする設定ではありません。グローバルルーティングとは異なり、システムプロキシですべてのプログラムが強制的に接続されるわけではありません。ブラウザー、ターミナル、開発ツールが個別のプロキシ設定を使っている場合もあります。

システムプロキシとルーティングモードの違い →

システムプロキシ

システムプロキシを解除システムのプロキシ設定を削除
システムプロキシを自動設定ローカルのクライアントに接続
システムプロキシを変更しない現在の設定を維持
ルーティングモード通信の出口を別途設定

まず通信がクライアントに届いているか確認し、その後に出口ルールを調べましょう。ルーティングモードを切り替えるだけでは、アプリがプロキシの入口を使っていない問題は解決できません。

TUNモードとコアの選択

TUNモードは仮想ネットワークインターフェースを通じて通信を取り込みます。システムプロキシ設定を参照しないアプリに適していますが、権限、ルーティング、DNSの確認が必要です。まずはシステムプロキシで基本の接続を確認し、必要に応じてTUNを有効にしましょう。変更を一度に増やさないことが大切です。コアの選択はプロトコルや通信パラメーターの互換性に影響するため、切り替える前に現在の設定とクライアントの対応状況を確認してください。TUNは通信を取り込む方法であり、別のノードプロトコルではありません。また、遅延が短くなるとは限りません。問題が起きたら、動作を確認できている基本設定に戻して切り分けましょう。

TUNの設定と確認手順を見る →

TUN・コア設定の例

TUNモードを有効にする
自動ルーティング
コアの種類
XrayV2Fly
DNS設定ルーティング設定と合わせて確認

選択できるコアやTUNの実装は、クライアントによって異なります。図の設定項目は設定の考え方を示すもので、3つのクライアントに同じメニューがあることを示すものではありません。

CLIENT SELECTION

OSに合わせてV2Rayクライアントを選ぶ

デスクトップにはv2rayN、Androidにはv2rayNGが適しています。V2Flyのコアを使いたい場合は、v2flyNGも検討できます。まずOSとCPUアーキテクチャを確認してからインストールパッケージを選びましょう。利用できるプロトコルは、クライアントに含まれるコアとサーバー側の設定にも左右されます。クライアントは設定を管理するソフトウェアであり、サブスクリプションURLやリモートサーバーを提供するものではありません。

Windows

v2rayN:デスクトップ版と従来のWPF版。デスクトップ版はクロスプラットフォームのUIを採用し、WPF版は従来の操作画面を維持しています。初めてインストールする場合は、それぞれの画面とシステム要件を確認し、使い慣れた方を選びましょう。

設定をインポートしたら、使用するサーバーを選び、システムプロキシを自動設定します。ブラウザーでは接続できても開発ツールで接続できない場合は、開発ツール側のプロキシ設定を確認してください。UI版を切り替える前に設定をバックアップしましょう。2つのインスタンスを同時に起動してポートが競合しても、サーバー障害とは限りません。

ダウンロードページへ →

macOS

v2rayN:チップに合ったインストーラーを選択。Apple SiliconとIntelでは、対応するアーキテクチャのインストーラーが異なります。「このMacについて」でチップまたはプロセッサ情報を確認してください。Macの外観や購入年だけで判断しないようにしましょう。

初めてアプリを開くときは、システムの案内に従ってアプリの入手元と権限を確認してください。まず通常のプロキシ方式でサブスクリプションとサーバー設定が正しいことを確かめ、その後、追加の権限が必要な機能を設定します。デスクトップ版の画面構成は他のOSと似ていますが、システムプロキシとネットワーク権限は使用中のOSが管理します。

ダウンロードページへ →

Android

まずはv2rayNG、v2flyNGは代替候補。v2rayNGはXrayコアを採用し、v2flyNGはV2Flyコアのエコシステムに対応します。比較的新しいスマートフォンの多くはarm64を選べます。端末のアーキテクチャがわからない場合は、ダウンロードページの説明を確認してから汎用パッケージを検討してください。

接続時には、システムのVPN接続許可が必要です。他のVPNアプリを同時に使うと、接続が競合する場合があります。バックグラウンド接続が頻繁に切れる場合は、バッテリー最適化とバックグラウンド実行の権限を確認してください。デスクトップとスマートフォンで同じサブスクリプションを使えますが、アプリごとのプロキシ、ルーティング、DNSの設定はそれぞれ確認が必要です。

ダウンロードページへ →

Linux

v2rayN:ディストリビューションに応じてdebまたはrpmを選択。まずディストリビューションに合ったパッケージ形式を確認し、次にx64またはarm64を選びます。パッケージ形式で決まるのはインストール方法であり、対応プロトコルや接続性能ではありません。

システムプロキシの扱いはデスクトップ環境によって異なり、ターミナルのプログラムも独自の環境設定に依存することがあります。TUNを使う場合は、関連する権限とルーティングの変更も確認してください。「アプリは起動したのに通信が取り込まれない」ときは、クライアントをすぐ再インストールするのではなく、ローカルの入口とアプリ側の設定から確認しましょう。

ダウンロードページへ →

すべてのクライアントを見る →システム要件、アーキテクチャの選び方、インストール方法はダウンロードページにまとめています。

PROJECT V / V2FLY / XRAY

オープンソースクライアントとコアのエコシステム

「V2Ray」は複数のクライアントやプロトコルを指す総称として使われることがありますが、UI、コア、プロトコル、サーバーサービスはそれぞれ別のものです。違いを理解すると、どのコンポーネントを更新すべきか、どの設定を確認すべきか、クライアントの変更では解決できない問題は何かを判断しやすくなります。

Project V:設定モデルのルーツ

Project Vは、モジュール構成のプロキシツールを中心に発展してきました。V2Rayはその中でも広く使われている実装です。設定を理解する基本となるのが、インバウンド、アウトバウンド、ルーティングです。インバウンドはローカルアプリからのリクエストを受け取り、アウトバウンドは接続先への通信方法を決め、ルーティングはその経路を選択します。GUIクライアントは設定項目をメニューや一覧、スイッチに整理しているため、普段の操作で設定ファイル全体を扱う必要はありません。

この仕組みを理解すると、「サブスクリプションをインポートできた」ことと「Webページにアクセスできる」ことが別の確認ポイントだとわかります。サブスクリプションに含まれるのは接続パラメーターです。アプリがローカルの入口を使っているか、コアが起動しているか、リモートサーバーに到達できるかは、それぞれ個別に確認する必要があります。設定ガイドでは、すべての問題を同じ接続ボタンの不具合とみなさず、この順序で解説します。

V2FlyとXray:共通点と違い

V2FlyコミュニティはV2Rayの開発とメンテナンスを引き継いでいます。Xrayは関連するコードベースから派生し、独自のプロトコルや通信機能を発展させてきました。基本概念には共通点が多い一方、設定の詳細や新機能への対応状況は完全には一致しません。見慣れたプロトコル名でも、通信方式、セキュリティ機能、コアの対応状況を確認してください。ファイルの拡張子だけで互換性を判断することはできません。

たとえばREALITYはTLSハンドシェイクに関連するセキュリティ機能で、自由に置き換えられるプロトコル名ではありません。利用するには、サーバーから提供されたパラメーターとクライアントのコアが対応している必要があります。ハンドシェイクエラーが出た場合は、画面上の表示名を変えるのではなく、アドレス、ポート、サーバー名、認証に関するパラメーターを確認しましょう。

3つのクライアント:UIとオープンソースライセンス

v2rayNはデスクトップ向けで、サーバー一覧、サブスクリプショングループ、プロキシモードなどを管理します。v2rayNGはAndroid向けで、Xrayコアを使ったモバイル用GUI設定を提供します。v2flyNGはV2Flyコアを使いたいAndroidユーザー向けの選択肢です。いずれもオープンソースソフトウェアです。ライセンス、サードパーティ製コンポーネント、再配布の条件は、各プロジェクトに付属するファイルを確認してください。

オープンソースとは、ソースコードやライセンスが公開されていることを指します。どの設定も現在の端末に適しているという意味ではなく、サブスクリプションの提供元を確認する必要もあります。サブスクリプションURLにアクセス情報が含まれる場合があるため、スクリーンショットやログを共有する前に、URL、アカウント識別情報、認証パラメーターを隠してください。クライアント名が似ていても、ローカルのバックアップファイルをそのまま上書きできるとは限りません。

更新とメンテナンス:バックアップしてから動作確認

GUI、プロキシコア、ルールデータはそれぞれ個別に更新される場合があります。GUIの更新は操作画面に、コアの更新はプロトコル処理に、ルールデータの更新はドメインやIPアドレスの分類に影響します。更新前にサブスクリプション情報とローカルのカスタムルールを保存し、変更内容を確認しましょう。更新後は、動作確認済みの設定を1つ使って接続を確かめてから、複雑なルーティングを戻します。どの層の変更が影響したか特定しやすくなります。

このサイトではダウンロード先と日本語の使い方を案内していますが、各プロジェクトの開発チームとは関係がなく、サーバーやサブスクリプションも提供していません。チュートリアルの画面は操作の考え方を示す例であり、実際のメニューは変更される場合があります。接続に問題が起きたら、発生条件と関連ログを記録し、ローカルの入口、コアの起動、リモート側のパラメーターの順に確認してください。すべての設定を同時にリセットするより、原因を特定しやすくなります。

READING NOTES

V2Rayの速度測定・ログ・設定同期

基本の接続ができたら、日々のメンテナンスでは主に3つの点を確認します。測定結果の読み方、ログを使った問題の切り分け、複数の端末で設定の参照元を揃える方法です。各記事では現象の説明から確認手順へと順を追って解説し、1回の測定結果を長期的な性能の結論と取り違えないようにします。

応用テクニック

V2Rayの遅延測定を読み解く:TCPing・実接続の遅延・ダウンロード速度の違い

v2rayNとv2rayNGにある3種類の速度測定の仕組みを解説します。TCPingはハンドシェイクのみ、実接続の遅延測定はプロキシ経路全体、ダウンロード速度測定はスループットを確認します。それぞれの用途とよくある誤解も紹介します。

ハンドシェイクに応答があっても、Webサイトにアクセスできるとは限りません。ダウンロード速度だけで操作時の快適さを判断することもできません。結果を比較する前に、測定対象と通信経路を確認しましょう。

記事を読む →
トラブル対処

v2rayNのログの見方:よくあるエラーの意味と順を追った調査方法

ログレベルの設定から始め、connection refused、i/o timeout、failed to handshakeなどのよくあるエラーを解説します。ローカルポートからリモート側の設定へ、順番に原因を調べる方法も紹介します。

同じエラーでも、発生する原因は複数あります。最後のエラー文だけを検索するより、発生時刻、接続先、その前後のログを合わせて確認する方が効果的です。

記事を読む →
プラットフォーム

v2rayNとv2rayNGの複数端末間設定同期:サブスクリプション・共有リンク・バックアップ移行

サブスクリプションURLの一元管理、共有リンクやQRコードでの受け渡し、設定ファイルのバックアップと移行という3つの方法を比較します。PCとAndroidスマートフォンでサーバー設定やルーティングを揃えるためのポイントを解説します。

サブスクリプションの参照元を揃えても、ローカル設定のすべてが同期されるわけではありません。移行前にサーバー情報、ルーティングルール、端末の権限を分けて確認し、設定の上書きによるトラブルを防ぎましょう。

記事を読む →

すべての記事を見る →プロキシモードの選び方やプロトコルの違いもご覧ください。