Windowsで初めてv2rayNを設定する方や、「クライアントは起動するのにネットにつながらない」という方に向けた手順です。アーキテクチャの確認、ファイルの完全展開、コアの起動、設定の追加、使用サーバーの選択、システムプロキシの有効化と動作確認の順に進めます。トラブル時は画面の起動、ローカルの待ち受け、リモート接続を分けて確認しましょう。タイムアウトのたびに再インストールする必要はありません。
1. ダウンロード前にWindowsのアーキテクチャとパッケージ形式を確認
v2rayNは、サーバー設定やサブスクリプション、ルーティング、コアプロセスを管理するデスクトップクライアントです。リモートサーバーを提供するものではありません。利用権限のあるサブスクリプションURL、または完全なサーバー設定をあらかじめ用意してください。インストーラーだけでは、有効な設定がないためプロキシ接続できません。
- Windowsの「設定」→「システム」→「バージョン情報」を開き、「システムの種類」を確認します。環境によっては「詳細情報」などの名称で表示されます。x64とARM64では対応するパッケージが異なるため、プロセッサのメーカーだけで選ばないでください。
- ダウンロードセンターを開き、Windows版を選択します。デスクトップ版はクロスプラットフォームのUIを採用し、WPF版はWindows向けです。対応OSや依存関係、パッケージ形式は各ダウンロード項目の説明を確認してください。
- 圧縮ファイルとインストーラーを区別してください。この記事では圧縮ファイルを展開して使う方法を説明します。インストーラーを選んだ場合は、インストール完了後にショートカットから起動してください。圧縮版と同じ方法でフォルダーを管理する必要はありません。
- パッケージにランタイムとコアが含まれているか、説明を確認します。ランタイム同梱版と別途ランタイムが必要な版では、初回起動の条件が異なります。ファイルサイズだけで完全なパッケージかどうかを判断しないでください。
2. 書き込み可能なフォルダーに完全展開してから起動
圧縮版は、たとえば C:\Tools\v2rayN のように専用フォルダーを作って保存するのがおすすめです。短いパスはトラブルシューティングに便利ですが、日本語を含むパスで必ず失敗するという意味ではありません。大切なのは、現在のユーザーが書き込めること、一時ファイルの削除対象にならないこと、旧バージョンのファイルと混在しないことです。
- エクスプローラーで圧縮ファイルを右クリックし、「すべて展開」を選んで、フォルダーごと保存先に展開します。圧縮ソフトのプレビュー画面から実行ファイルを直接開かないでください。
- メインプログラムだけでなく、パッケージ内のほかのファイルやサブフォルダーも展開されていることを確認してから、
v2rayN.exeを実行します。実行ファイルだけをコピーすると、依存ファイルやコアのパスが見つからないことがあります。 - Windowsからセキュリティ警告が表示された場合は、ダウンロード元と警告の詳細を確認してください。システムの保護機能全体を無効にして対処するのは避けましょう。ファイルが隔離された場合は、まずWindowsセキュリティの「保護の履歴」を確認します。
- 通常のシステムプロキシ利用に管理者権限は必要ありません。まずは標準ユーザー権限で初回起動し、管理者権限が必要な機能を使う場合に限り、クライアントの案内に従ってください。
初回起動後、クライアントはプログラムフォルダーまたはユーザーデータフォルダーに設定を保存する場合があります。保存先はバージョンや実行モードによって異なります。アップグレード前に、クライアントのバックアップ機能または実際のデータ保存先から設定をバックアップしてください。プログラムフォルダーが唯一の設定保存先とは限りません。
3. 実行環境とローカルの待ち受けポートを確認
画面が表示されても、クライアントのUIプロセスが起動したことしか分かりません。コアが正常に動作しているとは限りません。まず画面下部の状態表示やログ、現在のコアの状態を確認し、「設定」→「パラメーター設定」でローカルの待ち受けアドレスとポートを確認します。バージョンによってタブ名は異なりますが、SOCKS、HTTP、または混合待ち受けの項目を探してください。
これらの数値はトラブルシューティングの参考値であり、すべてのバージョンを同じ値に変更する必要はありません。設定が混合ポートのみの場合、そのポートで対応するHTTPとSOCKSのプロキシ接続を受け付けられます。HTTPとSOCKSを別々に設定している場合、HTTPプロキシのテストにはHTTP側のポートを指定してください。ローカルでのみ使う場合、待ち受けアドレスは通常 127.0.0.1 のままにし、トラブルシューティングのためにLANへ公開しないでください。
確認の順番:まず待ち受け、次にリモート接続
現在の待ち受けポートを控え、コアのログに起動エラーがないことを確認します。ローカルポートに接続できない場合は、リモートサーバーの変更やサブスクリプションの更新を繰り返すのではなく、まずプロセスとポートを調べてください。
.NETのインストールを求めるダイアログが表示された場合は、指定されたフレームワーク名、メジャーバージョン、アーキテクチャに合う依存関係を追加します。WPF版がWindows Desktop Runtimeを必要とする場合、通常の.NET Runtimeだけを入れたり、別のメジャーバージョンを入れたりしても起動条件を満たせないことがあります。ダウンロードしたビルドの説明を確認してください。
4. サブスクリプションまたは共有リンクを追加して、使用サーバーを選択
サブスクリプションURLからは複数のサーバー設定を取得できます。一方、個別の共有リンクには1台分のサーバー情報が記載されています。追加する場所を間違えないでください。サブスクリプションを正常に追加できても、接続できるとは限りません。有効性やサーバー設定の完全性、使用中のコアが該当するプロトコルとトランスポート設定に対応しているかを確認しましょう。
- サブスクリプションを追加:「サブスクリプショングループ」→「サブスクリプショングループの設定」を開き、新しいグループを追加します。見分けやすい名前と完全なサブスクリプションURLを入力して保存してください。画面に「グループを追加」ボタンがある場合も、同じ設定画面から追加できます。
- リストを更新:「サブスクリプショングループ」メニューから「サブスクリプションを更新」を選びます。利用できるプロキシがない初回は、プロキシを経由しない更新方法を使ってください。ネットワークからサブスクリプションの接続先にアクセスできない場合は、提供元の案内を確認するか、接続できる状態になってからプロキシ経由で更新します。
- 個別の設定をインポート:完全な
vmess://またはvless://共有リンクをコピーし、「サーバー」メニューから「クリップボードからインポート」に相当する項目を選びます。VMessとVLESSは別のプロトコルです。リンクの接頭辞を手動で置き換えないでください。 - 使用サーバーを設定:リストから接続先を選び、右クリックメニューの「アクティブサーバーに設定」または同等の操作で有効にします。ステータス欄に表示されたサーバーが選択したものと一致することも確認してください。
リストが空の場合は、まず更新時のエラー内容を確認し、URLが完全にコピーされているか、有効期限が切れていないか、応答がクライアント対応の形式かを調べます。サインイン用のページURLをサブスクリプションURLと間違えると、ノード一覧ではなくウェブページが返されることがあります。
5. システムプロキシを有効にし、対象範囲とルーティングモードを区別
コアが起動し、使用サーバーを選択できたら、タスクトレイのアイコンメニューから「システムプロキシ」→「システムプロキシを自動設定」または同等の項目を選びます。Windowsの手動プロキシ設定には、クライアントのローカル待ち受け先が設定されます。Windowsの「設定」→「ネットワークとインターネット」→「プロキシ」でアドレスとポートを確認できますが、両方の画面で何度も変更するのは避けてください。
- システムプロキシ:システムプロキシ設定に従うアプリに対し、リクエストをローカルプロキシへ送るよう指定します。すべてのアプリがこの設定を参照するとは限りません。
- ルーティングルール:リクエストがコアに届いた後、直接接続、プロキシ経由、またはブロックのいずれにするかを決定します。システムプロキシを有効にしていても、直接接続ルールに一致するリクエストはリモートサーバーを経由しない場合があります。
- TUN:トラフィックを制御する別の方式です。仮想ネットワークインターフェイス、権限、ルーティング、DNSが関係します。初回設定では、まずシステムプロキシの動作を確認してください。複数の制御方式を同時に有効にして、切り分けの要因を増やさないようにしましょう。
テスト時は、ブラウザーで独自に設定したプロキシ拡張機能やカスタムプロキシをいったん無効にし、システム設定が上書きされないようにします。ブラウザーでは使えるのに特定のデスクトップアプリで使えない場合は、まずそのアプリに独自のプロキシ設定がないか確認し、別の制御方式が必要かどうかを検討してください。
ポートを明示してコマンドラインからテスト
PowerShellで次のコマンドを実行します。例ではHTTPまたは混合ポートが実際に 10808 であることを前提としています。一部のPowerShell環境では curl が別のコマンドとして解釈されるため、ここでは curl.exe を使います。
curl.exe --proxy http://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/
このコマンドはローカルプロキシを明示しており、アプリがシステムプロキシを参照するかどうかに依存しません。HTTPレスポンスヘッダーが返れば、このリクエストに応答があったことは分かります。ただし、コアのルーティングによって対象ドメインが直接接続される場合もあるため、この結果だけで全トラフィックがリモートサーバー経由だとは判断できません。実際の経路は、同じ時間帯のルーティングログとあわせて確認してください。
6. よくあるエラー:起動・待ち受け・接続の順に切り分け
「起動に失敗しました」という最後のメッセージだけを見るより、エラー発生時刻付近で最初に記録された重要なログを確認するほうが有効です。以下は表示されることのあるエラー文です。パス、バージョン、サーバーアドレスは環境によって異なります。異なる段階のエラーをすべてサブスクリプションの無効が原因だと決めつけないでください。
エラー:You must install or update .NET to run this application.
原因と対処:必要なランタイムがないか、インストール済みランタイムのアーキテクチャまたはメジャーバージョンが一致していません。エラーメッセージにあるFrameworkとArchitectureを控え、パッケージの要件に合うランタイムをインストールしてから、クライアントを終了して再起動してください。
エラー:Only one usage of each socket address is normally permitted
原因と対処:コアが使用しようとしたローカルアドレスとポートが、すでに別のプロセスに使われています。クライアントを重複して起動していないか確認し、次にポートを使用中のプロセスを調べます。用途を確認してから競合するプログラムを終了するか、ローカルの待ち受けポートを変更し、システムプロキシの設定も合わせて更新してください。
エラー:Failed to connect to 127.0.0.1 port 10808
原因と対処:テスト対象のプログラムが指定されたローカルポートに接続できていません。コアが起動していない、またはポートの指定が間違っている場合によく発生します。現在の待ち受け設定と起動ログを確認してください。リモートサーバーのパスワードやプロトコルをすぐに変更する必要はありません。
エラー:i/o timeout
原因と対処:ネットワーク処理が制限時間内に完了しませんでした。DNSの問い合わせ、リモート接続、サブスクリプションの取得など、さまざまな段階で発生する可能性があります。同じログから接続先と処理段階を確認し、ローカルネットワーク、サーバーの状態、サブスクリプションの接続先をそれぞれ調べてください。
エラー:x509: certificate has expired or is not yet valid
原因と対処:証明書の有効期間を確認できませんでした。PCの時刻が間違っている場合と、サーバーの証明書が実際に期限切れの場合があります。まずWindowsの「設定」→「時刻と言語」→「日付と時刻」で時刻を合わせ、提供元に確認してください。証明書検証を無効にして問題を隠さないでください。
10808番ポートを使用しているプロセスを確認
netstat -ano | findstr :10808
出力の「ローカル アドレス」列が対象ポートになっているかを確認し、まず LISTENING の行を見ます。最後の列に表示されるのがプロセスID(PID)です。タスクマネージャーの「詳細」タブでPIDを検索し、プログラム名を確認してください。待ち受け行がなく、コアが直前に起動失敗を報告している場合は、まず起動の問題を解決します。待ち受けが見つかっても、現在のクライアントが起動したコアであれば競合とは限りません。ポート番号だけを根拠に、正体不明のプロセスを強制終了しないでください。
7. 初回設定後によくある4つの質問
サブスクリプションは更新できるのに、ウェブページが開かないのはなぜ?
サブスクリプションを更新できたことから分かるのは、設定内容を取得できたことだけです。使用サーバー、コアの稼働状態、システムプロキシのポートを順に確認してから、プロキシを明示したテストを行います。ローカル接続は成功するのにリモート接続がタイムアウトする場合は、同じサブスクリプションを繰り返し追加するのではなく、そのサーバーの接続ログを確認してください。
v2rayNを終了するとブラウザーがネットにつながらなくなる場合は?
Windowsのプロキシ設定が、すでに待ち受けを停止したローカルプロキシを指している可能性があります。まずクライアントを再起動し、タスクトレイの「システムプロキシ」からシステムプロキシを解除してから終了してください。クライアントを起動できない場合は、Windowsのプロキシ設定を開き、残っている手動プロキシを無効にします。組織によって管理されているプロキシについては、先に管理者へ相談してください。
毎回、管理者として実行する必要がありますか?
現在のユーザーのシステムプロキシを使うだけなら、通常は必要ありません。まず標準ユーザー権限で起動してください。TUNなどの機能を使う場合は、クライアントの案内に従って必要な権限に変更します。プログラムがフォルダーに書き込めないときは、ユーザーが書き込み可能な場所へ移動してください。常に管理者として実行する方法を、一般的な解決策にしないでください。
ポートを変更したら、サブスクリプションを再インポートする必要がありますか?
必要ありません。ローカルの待ち受けポートとリモートサーバーのポートは別のものです。ローカルポートを変更した後は、該当するコアを再起動し、システムプロキシを再設定してください。ブラウザーやコマンドライン、ほかのアプリでローカルプロキシのポートを手動指定している場合は、そちらも変更が必要です。
- 正常に接続できたら、バージョンの種類、使用中のコア、ローカルの待ち受けポート、ルーティングモードを控えておきましょう。後から問題を再現して切り分けやすくなります。
- アップグレード前にクライアントを終了して設定をバックアップし、パッケージの説明に従って更新してください。複数バージョンのファイルをむやみに同じ場所へ重ねて展開しないでください。
- ルーティングやDNSを調整する場合は、設定ガイドを参考に項目ごとに変更します。一度に変更するのは1つだけにし、元に戻せる設定を残してください。