v2rayN
デスクトップ版ではクロスプラットフォームのUIを利用でき、従来のWPF版ではおなじみのウィンドウ構成を使えます。まずシステム設定でプロセッサーの種類を確認し、インストール手順を読んでください。UIを切り替える前にサブスクリプショングループとカスタムルーティングをバックアップしておくと、UIの違いによる問題を接続トラブルと取り違えずに済みます。
ダウンロードページへ →OSに合ったインストーラーを選ぶ
まずOSとプロセッサーのアーキテクチャを確認し、クライアントを選びます。インストーラーはダウンロードページにまとめています。トップページでは、選び方と設定方法を案内します。
デスクトップ版ではクロスプラットフォームのUIを利用でき、従来のWPF版ではおなじみのウィンドウ構成を使えます。まずシステム設定でプロセッサーの種類を確認し、インストール手順を読んでください。UIを切り替える前にサブスクリプショングループとカスタムルーティングをバックアップしておくと、UIの違いによる問題を接続トラブルと取り違えずに済みます。
ダウンロードページへ →「このMacについて」でチップ名を確認し、Apple Silicon用またはIntel用のインストーラーを選びます。初回起動時にシステムの警告が表示されたら、ダウンロード元を確認して内容をよく読んでください。インストール後は、ネットワークプロキシの接続先がクライアントの現在のローカルポートになっているか確認します。
ダウンロードページへ →まずXrayコアを使用するv2rayNGを検討し、V2Flyコアが必要な場合はv2flyNGを選びます。比較的新しいAndroid端末の多くはarm64を選べます。アーキテクチャがわからない場合は、汎用パッケージの説明を確認してください。初回接続時はシステムのVPN利用許可を確認し、ほかのアプリがVPN接続を使用していないかもチェックします。
ダウンロードページへ →UbuntuやDebianでは通常deb、Fedoraなどでは通常rpmを選び、x64とarm64も区別してください。GUIクライアントはデスクトップ環境向けです。ターミナルのプログラムがプロキシを使うかどうかは個別の設定によるため、デスクトップのシステムプロキシの切り替えだけでは判断できません。
ダウンロードページへ →クライアントは設定の読み込み、コアの起動、ローカルプロキシの管理を行いますが、インストールしただけで接続先が自動的に用意されるわけではありません。信頼できる提供元からサブスクリプションURLまたは個別の設定を入手し、利用条件と有効期限を確認してからガイドに沿って追加してください。サブスクリプションURLには認証情報が含まれる場合があります。公開スクリーンショットに載せたり、出所不明のオンライン変換サイトに入力したりしないでください。V2Rayのサブスクリプション変換が必要な場合は、利用先のクライアントが対応する形式を確認し、設定の提供元が案内するエクスポート方法を優先してください。
初回設定ではクライアントを1つだけ起動し、標準のリスニングポートを維持してください。ブラウザーのプロキシ拡張機能や、ネットワークを横取りするほかのツールは、最初は併用しないようにします。まずサブスクリプションを追加できることと、コアが起動することを確かめてからシステムプロキシを有効にし、基本接続を確認した後でルーティングやTUNを設定します。一度に変更する項目を1つにすれば、問題が起きた際に原因を絞り込み、変更を戻す箇所も特定できます。ノード、DNS、権限の問題を同時に疑う必要がなくなります。
設定項目から接続経路を理解する
画面の項目名はプラットフォームやバージョンによって変わることがあります。まず設定の役割を理解し、クライアント内の同等の項目を確認してください。デスクトップ版のメニューをそのままAndroid版に当てはめないようにしましょう。
ノード一覧が空、または更新しても内容が変わらない場合は、まず「サブスクリプショングループの設定」を開き、URLが正しいか、グループが有効か、サブスクリプションの期限が切れていないかを確認します。提供元ごとにグループを分けると、更新時に設定を取り違えにくくなります。現在の接続が使えない場合は、「プロキシを経由せずにサブスクリプションを更新」を試してください。特定のネットワーク経路でのみアクセスできるURLなら、その経路を使用します。更新に成功したら、実際に設定が取り込まれたかを確認しましょう。リクエストが完了しても、ノードに接続できるとは限りません。グループを使うと個別に管理するより一括更新しやすくなりますが、無効なURLが自動で修復されるわけではありません。
設定ガイドを見る →同じノードで一部のサイトにはアクセスできるのに、別のサイトではタイムアウトする場合は、対象ドメインにどのルーティングルールが適用されているか確認します。通常、ルールは上から順に照合され、範囲の広いルールが先にリクエストを処理することがあります。「IPIfNonMatch」は、ドメインルールに一致しない場合に接続先のIPアドレスを解決し、IPルールとの照合を試みる設定です。すべてのリクエストで最初に名前解決するという意味ではありません。まず内容を把握しやすいプリセットを使い、カスタムルールは少しずつ追加してください。変更のたびに同じ接続先で再確認します。ルーティングは通信の出口を決めるもので、ノードへの接続確認に代わるものではなく、サーバー側の認証エラーもルールでは解決できません。
設定ガイドを見る →IPIfNonMatchシステムプロキシの設定が影響するのは、システムのプロキシ設定を参照するアプリだけです。すべてのプログラムがクライアントを経由するわけではありません。「システムプロキシを自動設定」はローカルのプロキシアドレスを書き込み、「システムプロキシを解除」は関連設定を削除し、「システムプロキシを変更しない」は現在の設定を維持します。TUNは仮想ネットワークインターフェースを使って通信を取り込み、権限やルーティング、DNSの設定も関係します。まず通常のプロキシ接続を確認し、その後でTUNを使うか判断してください。最初から複数の通信制御方式を同時に有効にしないようにしましょう。ターミナル、ブラウザー拡張機能、AndroidのVPNにはそれぞれ別の設定箇所があるため、実際の通信経路を個別に確認します。
設定ガイドを見る →GUIクライアントとコアは役割が異なります。クライアントが設定を管理し、コアがプロトコルとネットワーク接続を処理します。v2rayNは対応する設定でXrayやsing-boxを利用できますが、選択場所や対応範囲はバージョンとプラットフォームによって異なります。未対応のトランスポートやパラメーターが表示されたら、まずログのエラーを記録して設定要件を確認し、コアを何度も切り替えるのは避けてください。Androidでは、Xrayを使うv2rayNGとV2Flyを使うv2flyNGを区別します。コアの切り替えで解決できるのは、対応する互換性の問題だけです。期限切れのサブスクリプションや誤った認証情報が有効になるわけではありません。
設定ガイドを見る →Project V · V2Fly · Xray
クライアント、コア、プロトコル、サブスクリプションを分けて理解しましょう。GUIをダウンロードするのは最初の一歩です。実際に接続できるかどうかは、設定とネットワーク環境にも左右されます。
V2RayはProject Vのエコシステムに由来します。設定でインバウンド、アウトバウンド、ルーティングを組み合わせ、アプリのリクエストを明確な経路で処理するのが基本的な考え方です。V2FlyはV2Ray関連コアのコミュニティによるメンテナンスを引き継ぎ、Xrayは関連コードを基盤として独自の実装や機能を発展させてきました。歴史的なつながりがあっても、すべてのパラメーター、プロトコル拡張、設定ファイルをそのまま相互利用できるとは限りません。
プロトコル名は通信の仕様を示し、コアがプロトコルを実装し、GUIクライアントがよく使う操作をメニューにまとめます。VMess、VLESS、Trojan、REALITYなどを見かけたら、設定要件とコアの対応状況を確認してください。クライアント名が似ているからといって、そのまま設定を読み込まないようにしましょう。トランスポート方式、TLSパラメーター、サーバー側の設定は相互に対応している必要があり、片方だけ変更しても通常は互換性を確保できません。
トラブル対処では、「どのクライアントで、どのコアを使い、どの接続方式の、どの手順で失敗したか」を記録すると、「V2Rayが使えない」という曖昧な説明より原因を特定しやすくなります。ログにある起動失敗とリクエストのタイムアウトは別の層の問題です。前者は設定やリスニングを確認し、後者は接続先、名前解決、通信の出口を調べます。
v2rayNはデスクトップ向けで、サーバー一覧、サブスクリプショングループ、システムプロキシ、ルーティングをまとめて管理できます。v2rayNGはAndroid向けで、Xrayコアを使い、システムのVPN機能を通じてアプリの通信を取り込みます。v2flyNGもAndroid向けで、V2Flyコアを使います。対応するコアの動作や互換性が必要な場合に適しています。いずれもオープンソースのクライアントですが、同じプログラムの別デザインというわけではありません。
デスクトップとスマートフォンで同じ提供元の互換性がある設定を使える場合でも、ローカルプロキシのポート、バックグラウンド動作、必要な権限は異なります。デスクトップの「システムプロキシを自動設定」はAndroidのVPN利用許可の代わりにはなりません。また、Androidの接続ボタンでデスクトップのすべてのネットワーク設定を行えるわけでもありません。別の端末に移行する際は、まず設定を追加し、移行先の接続方式を改めて確認してください。
このサイトではダウンロード先と日本語の操作ガイドをまとめていますが、各プロジェクトの公式開発サイトではありません。「v2rayN 公式サイト」や「v2rayNG 公式サイト」を検索する際は、サイトの運営元、ソフトウェアのプロジェクト、設定の提供元をそれぞれ確認してください。担う役割は同じではありません。
オープンソースソフトウェアでは、該当するライセンスに基づいてコードが公開されています。利用、改変、再配布には、各プロジェクトのライセンス条項に従う必要があります。クライアント、コア、同梱コンポーネントでライセンスが異なる場合があります。再配布する際は、それぞれのライセンスを確認し、「オープンソース」という言葉だけで判断しないでください。また、ソフトウェアが無料であることと、リモートサービスが有料の場合があることは別の話です。
サブスクリプションには通常、サーバーアドレス、ユーザーID、認証情報などを含む接続設定がまとめられています。問題を報告するスクリーンショットでは、サブスクリプションURLや機密パラメーターを隠し、エラーの種類、メニューの場所、必要な環境情報だけを残してください。原因を再現してもらうために、サブスクリプション全体を公開するのは避けましょう。情報を伏せたログと操作手順を共有するほうが、問題を特定しやすくなります。
設定を読み込めても、サービスが有効とは限らず、すべてのアプリがプロキシを経由するとも限りません。入手元、互換性、利用条件を確認してから、実際にアクセスして接続を確かめてください。証明書エラーが起きた場合は、システム時刻、接続先の名前、設定との対応関係を確認します。セキュリティチェックを無効にすることを、万能の解決策として扱わないでください。
GUIクライアント、コア、ルールデータはそれぞれ別に更新される場合があります。メニューに項目が1つ追加されても、古い設定をすべて変更する必要があるとは限りません。プロトコルの対応状況が変わった場合、原因はUIではなくコアにあることもあります。更新前に現在の動作状態を記録し、サブスクリプショングループ、カスタムルール、必要な設定をバックアップしてください。その後、利用しているプラットフォームに関する変更内容を確認します。
更新後は最小限の設定で動作を確認します。クライアントを起動し、コアが正常に動作していることを確認したら、動作実績のある設定を1つ使って固定の接続先にアクセスしてください。基本接続を確認してから、カスタムルーティング、TUN、バックグラウンド起動を戻します。更新後にだけ問題が起きる場合は、具体的なエラーと再現手順を残してください。設定の削除、コアの入れ替え、ネットワークのリセットを同時に行うと、原因の切り分けが難しくなります。
サブスクリプションの更新に失敗したらURLとリクエスト経路を確認し、Webページが開けない場合はクライアントのリスニング状態とアプリのプロキシ設定を確認します。速度が遅いときは、ネットワーク環境と接続先の負荷を比較してください。入口から出口へ順に調べるほうが、何度も再インストールするより原因特定に役立ちます。複雑なケースはトラブル対処ガイドもご覧ください。
まず一覧に利用可能な設定があり、接続先のサーバーが選択されていることを確認し、次にコアの起動ログを確認します。コアが正常に動作している場合は、「システムプロキシを自動設定」が有効か、ブラウザーのプロキシ設定が拡張機能に上書きされていないかを確認してください。1つのアプリだけ失敗するなら、すべてのノードをすぐに切り替えるのではなく、そのアプリのプロキシ設定を確認します。設定ガイドに沿って接続を確認してください。
まずポートを使用しているプロセスを特定し、正体のわからないシステムプロセスを終了しないでください。クライアントを複数起動していないか、別のプロキシソフトが同じポートを使っていないか確認します。「ローカル混合リスニングポート」を変更する場合は、新しい値を記録してサービスを再起動し、手動設定したブラウザーやアプリのプロキシ設定も更新してください。画面上の値を変更しただけでは、すでに設定されている古いポートは自動ですべて更新されません。詳しくはトラブル対処をご覧ください。
まずTUNを無効にして、通常のプロキシモードが使えるか確認してください。通常モードで問題がなければ、TUNに必要な権限や仮想インターフェース、ほかのネットワークツールとの競合を個別に調べます。現在のDNSとルーティングの設定を記録し、一度に1項目だけ変更して再確認してください。クライアントを終了してもネットワークに接続できない場合は、システムプロキシの設定が残っていないかも確認します。詳しくはトラブル対処ガイドをご覧ください。
サブスクリプションの更新ではURLから設定を取得し、ノード接続ではその設定を使ってリモートサーバーに接続します。通信経路は異なる場合があります。まずサブスクリプションURLが有効で、形式が対応していることを確認し、プロキシ経由とプロキシを経由しない更新方法を比較してください。ノードがタイムアウトしていても直接更新できる場合があり、サブスクリプションの更新に成功してもリモートサービスが利用可能とは限りません。ほかの症状はトラブル対処で確認できます。
使い方のヒント
具体的な症状から手順を確認できます。まず失敗箇所を特定し、該当する設定を変更して、変更前後の結果を記録しましょう。
Ubuntu、Debian、Fedoraのデスクトップユーザー向けに、deb・rpmパッケージのインストールコマンド、依存関係の問題、デスクトップのランチャー、自動起動の設定を解説します。まずディストリビューションとプロセッサーのアーキテクチャを確認し、インストール失敗、画面が起動しない、プロキシが通信を取り込まないという3つの症状を切り分けます。
インストール手順を読む →サブスクリプションURLの失効、形式の認識エラー、更新リクエストの経路違いなど、よくある原因をまとめました。サブスクリプショングループの自動更新間隔と「プロキシを経由せずに更新」の設定方法も解説します。まずリクエストが接続先に到達するかを確認し、次に応答内容を調べましょう。エラーページを有効なサブスクリプションと取り違えないようにしてください。
更新のトラブル対処を読む →システムプロキシを自動設定してもWebページが開けない場合は、ブラウザー拡張機能、システム設定、ターミナルの環境変数を分けて確認します。まずローカルのリスニングが動作中かを確認し、次にアプリが実際に使用しているアドレスとポートを調べます。ブラウザーでアクセスできても、ターミナルからもアクセスできるとは限りません。
プロキシのトラブル対処を読む →