WindowsまたはmacOSで初めてv2rayNを使う方向けに、インストールパッケージとアーキテクチャの確認から、ノードのインポート、ローカル待ち受け、システムプロキシ、終了後の復元まで順に説明します。127.0.0.1:10808を例に接続を確認し、クライアント未起動・コアの待ち受け失敗・リモート接続失敗を切り分けてから、自動起動を設定します。
1. システムのアーキテクチャと起動方法を確認
v2rayNはノードやサブスクリプション、プロキシ設定を管理するデスクトップクライアントです。実際の接続処理は選択したコアが行います。ウィンドウが開いてもコアが起動しているとは限らず、コアが正常に待ち受けていても、すべてのアプリが自動でプロキシを使うわけではありません。初回設定では、この3点を分けて確認しましょう。
まずインストールパッケージのページでWindowsまたはmacOSを選び、プロセッサのアーキテクチャに合ったパッケージをダウンロードします。Windowsでは「設定」→「システム」→「システム情報」でシステムの種類を確認できます。macOSではAppleメニュー→「このMacについて」でチップまたはプロセッサを確認します。Appleシリコン搭載MacはARM64、Intel Macは通常x64です。異なるアーキテクチャ向けのパッケージを混在させないでください。
| 確認項目 | Windows | macOS |
|---|---|---|
| 配置場所 | ユーザーが書き込み可能な固定フォルダーにすべて展開する | アプリケーションパッケージとして展開するか、「アプリケーション」フォルダーへ移動する |
| 起動方法 | 展開先フォルダー内の v2rayN.exe | パッケージ内のアプリ起動アイコン |
| 保持するファイル | 本体、コアのフォルダー、関連ファイルをまとめて保持する | アプリケーションパッケージの構成と関連ファイルを保持する |
| 初回の権限設定 | まずは通常のユーザー権限で起動する | まずmacOSでアプリの入手元を確認する |
Windowsでは、圧縮ファイルのプレビュー画面から実行したり、実行ファイルだけをコピーしたりしないでください。起動時に.NETランタイムが不足していると表示された場合は、ダイアログの指示に従い、必要なバージョンとアーキテクチャのランタイムをインストールします。Windows Desktop Runtimeが必要なパッケージは、通常の.NET Runtimeだけでは動作しません。必要なランタイムは配布パッケージによって異なるため、古い手順に従って特定のメジャーバージョンを固定でインストールしないでください。
2. 初回起動:サブスクリプションを登録してノードを選択
以下では、一般的なデスクトップ版のメニュー名を使って説明します。バージョンによってボタンの位置が異なる場合があります。「ヘルプ」→「バージョン情報」でクライアントのバージョンを確認し、同じバージョンの画面で設定項目を探してください。サブスクリプションURLはノード情報の取得に使うもので、ローカルプロキシのアドレスではありません。システムのHTTPプロキシ欄に入力するものでもありません。
-
クライアントを起動
固定したフォルダーからクライアントを起動し、まずはTUNを有効にしないでください。メインウィンドウとログを開けることを確認し、v2rayNを複数起動しないようにします。
-
サブスクリプションを追加
「サブスクリプショングループ」→「サブスクリプショングループ設定」を開き、新しいグループを追加します。備考とサブスクリプションURLを入力して保存してください。画面に「追加」または「+」ボタンがある場合は、それを使って同様の項目を追加します。
-
ノードを更新
「サブスクリプショングループ」メニューから「すべてのサブスクリプションを更新(プロキシを使用しない)」を実行します。現在のネットワークからサブスクリプション元に接続できない場合は、利用可能なノードを使い、「プロキシ経由で更新」を試してください。
-
ノードを有効化
インポートしたノードを選び、右クリックメニューから「選択したサーバーを有効にする」を選択します。ログで対応するコアの読み込みが始まったことを確認してください。ノードが一覧に表示されただけでは、有効になったとは限りません。
-
起動ログを確認
まず設定の解析エラー、コアファイルの不足、待ち受け失敗を確認してから、リモート接続をテストします。エラーが出た場合は該当するログ行を記録し、すべての設定をすぐに何度も切り替えるのは避けてください。
3. ローカルポート:待ち受けを確認してからシステムプロキシを設定
「設定」→「パラメーター設定」でローカルの待ち受け項目を確認し、アドレス、ポート、プロトコルを記録します。バージョンによっては混合ポートを使い、SOCKSとHTTPの入口を別々に表示する画面もあります。以下の10808と10809は調査用の例にすぎません。必ず現在の画面とログに表示された実際の値を使ってください。この例だけを根拠に、端末で2つのポートが開いていると判断しないでください。
混合ポートの例
- 待ち受けアドレス
127.0.0.1- ローカルポート
10808- プロトコル
- HTTPとSOCKS(コアの設定が対応している場合)
- LANからの接続
- 初回設定では無効のままにする
混合ポートは複数のプロトコルで利用できますが、呼び出し側でも正しいプロキシ種別を選ぶ必要があります。
個別ポートの例
- 待ち受けアドレス
127.0.0.1- SOCKSポート
10808- HTTPポート
10809- システムプロキシの接続先
- 実際に有効なHTTPポート
ログで両方のポートが待ち受け中と確認できた場合に限り、このポート対応を使用してください。
初回設定ではローカル端末だけで使い、ループバックアドレスのままにしてください。LAN接続を許可すると外部に公開される範囲が変わるため、ローカル端末でWebページを開けない問題の一般的な解決策にはなりません。ポートを変更した場合は、アプリ内の手動設定、システムプロキシ、ターミナルの環境変数も合わせて変更してください。
システムコマンドでポートの使用状況を確認
以下のコマンドはWindows PowerShellとmacOSのターミナル用で、待ち受け状態を確認するだけです。結果が表示されない場合、そのポートは現在待ち受けていません。結果がある場合はプロセスも確認してください。ポートが存在するだけでは、ノードへの接続が正常とは判断できません。
# Windows PowerShell
Get-NetTCPConnection -State Listen -LocalPort 10808 |
Select-Object LocalAddress, LocalPort, OwningProcess
# macOS ターミナル
lsof -nP -iTCP:10808 -sTCP:LISTEN
4. システムプロキシ、PAC、TUNの選び方
システムプロキシは、システム設定に従うアプリのリクエストをローカルの入口に送る設定です。クライアントのルーティングは、リクエストがコアに渡った後、どのアウトバウンドへ送るかを決めます。この2つは別の設定です。「システムプロキシを自動設定」の「自動」は通常、プロキシ設定を自動で書き込むという意味で、PACが有効になることや、すべてのプログラムが対象になることを意味しません。
システムプロキシ
おすすめ初めて使う場合は、メイン画面または通知領域のメニューにある「システムプロキシ」から「システムプロキシを自動設定」を選びます。ブラウザーがシステム設定に従っていることを確認し、次にクライアントのルーティングモードを確認してください。アプリ独自のプロキシ設定がある場合は、そちらも個別に確認します。
適した用途:初期設定、ブラウザー、システムプロキシに対応するデスクトップアプリ。
PAC自動プロキシ設定
スクリプトのルールに基づいて、対象のリクエストをプロキシに送るかどうかを決めます。現在のバージョンに対応する設定項目があり、アプリ側もPACに対応している必要があります。スクリプトの対象外のアドレスは直接接続される場合があり、それだけでリモートノードの障害とは判断できません。
適した用途:明確なPACルールがあり、アプリ側でリクエストの接続先を選びたい環境。
TUN仮想ネットワークインターフェース
仮想ネットワークインターフェースを使って通信を取り込みます。追加の権限やルーティング、DNS設定が必要になることがあります。まず通常のプロキシ接続が正常に動作することを確認してから有効にしてください。切り替える際は、ほかの仮想ネットワークソフトとの競合も確認します。
適した用途:システムプロキシに従わないアプリの通信も取り込み、権限やルーティングの問題に対応できる環境。
Windowsでは「設定」→「ネットワークとインターネット」→「プロキシ」で反映された設定を確認できます。macOSでは「システム設定」→「ネットワーク」→現在のネットワークサービス→「詳細」→「プロキシ」を確認します。有線と無線でサービスが異なる場合があります。手動で入力する場合は、HTTPとHTTPSの各項目を確認し、実際に待ち受けているHTTPポートまたは混合ポートを指定してください。
5. 接続確認:入口、ノード、DNSを切り分ける
速度測定や疎通確認は手掛かりにはなりますが、実際のリクエストの代わりにはなりません。まず有効なノードとコアの起動を確認し、次にプロキシを明示したリクエストで経路を検証してから、ブラウザーを確認します。これにより、ブラウザー拡張機能やシステムプロキシの設定残りを、ノードの障害と誤認しにくくなります。
- ローカルの入口:ログに待ち受け成功が表示されていることを確認します。
address already in useやbindの失敗があってはいけません。 - ノード設定:サーバーアドレス、ポート、プロトコル、トランスポートのパラメーターを確認します。サブスクリプションから取り込んだTLS、SNI、WebSocketパスなどの値を、別のノードの設定に合わせて安易に変更しないでください。
- 実際のリクエスト:HTTPプロキシを指定したコマンドでテストし、ブラウザーでも同様の結果になるか比較します。
- DNSとルーティング:一部のドメインだけ接続できない場合は、名前解決、直接接続、プロキシ経由のどこで失敗したか確認します。DNS設定をすぐにすべて変更しないでください。
# Windows:例の接続先ポートは、実際のHTTPポートまたは混合ポートに置き換えてください
curl.exe --proxy http://127.0.0.1:10808 --connect-timeout 10 -I https://example.com/
# macOS
curl --proxy http://127.0.0.1:10808 --connect-timeout 10 -I https://example.com/
ここでの10は接続処理のタイムアウト秒数であり、速度を示す値ではありません。HTTPレスポンスが返れば、そのリクエストに対してリモートから応答を受け取ったことになります。ただし、クライアントのルーティングで宛先が直接接続に設定されている場合、リモートプロキシ経由の通信が使える証明にはなりません。ログで選択されたアウトバウンドも確認してください。TLSエラーが出た場合は、証明書の検証を無効にするのではなく、システム時刻、証明書のドメイン名、SNIを確認します。
6. 自動起動と終了後のプロキシ設定の復元
正常にアクセスできることを確認してから、「設定」→「パラメーター設定」で自動起動に関する項目を探します。項目名や場所はバージョンによって異なります。Windowsでは「設定」→「アプリ」→「スタートアップ」で登録済みの項目も確認できます。macOSでは「システム設定」→「一般」→「ログイン項目」または「ログイン項目と機能拡張」を確認します。起動方法は1つに絞り、複数のインスタンスが同じポートを取り合わないようにしてください。
- アプリを長期的に使用する場所へ移動してから自動起動を設定してください。設定後にフォルダーを移動すると、ショートカットが機能しなくなる場合があります。
- 再起動後、通知領域またはメニューバーにクライアントが表示されていることを確認し、コアのログとローカルポートをチェックします。ウィンドウが非表示でも、プログラムが起動していないとは限りません。
- 終了前に「システムプロキシ」で「システムプロキシをクリア」を選択し、クライアントのメニューから通常の方法で終了してください。
- クライアント終了後にブラウザーでアクセスできるか確認します。クライアントを終了しても
127.0.0.1の古いポートが接続先に残っている場合は、システムプロキシの設定から削除してください。
7. 初回インストールでよくある質問
ダブルクリックしてもウィンドウが開きません。ランタイムが不足していますか?
まずタスクマネージャーまたはアクティビティモニタで、バックグラウンドにすでに起動しているインスタンスがないか確認します。ランタイムを求めるダイアログが表示された場合は、指定されたバージョンとアーキテクチャをインストールしてください。ログにコアファイルが見つからないと表示される場合は、使用するOSに合ったパッケージをすべて展開し直します。ウィンドウが開かない問題と、コアが見つからない問題は別の障害です。
10808が使用中と表示されます。どこを変更すればよいですか?
まず上記のコマンドで待ち受けプロセスを確認し、クライアントを重複して起動していないか調べます。出所の分からないシステムプロセスを終了しないでください。「設定」→「パラメーター設定」でローカルポートを未使用の番号(例:10818)に変更する方法もあります。保存してコアを再起動した後、システムプロキシとアプリに残っている旧ポートも更新してください。
ノードを選択してもブラウザーでページを開けません。
まず、プロキシを指定したcurlコマンドを実行します。コマンドが成功してブラウザーだけ失敗する場合は、「システムプロキシ」→「システムプロキシを自動設定」、ブラウザー独自のプロキシ設定、関連する拡張機能を確認します。コマンドも失敗する場合は、コアのログに戻り、待ち受けやリモート接続のエラーを確認してください。
macOSで権限の確認が何度も表示されます。そのたびに許可が必要ですか?
まず、アプリの初回起動確認、システムプロキシの変更許可、TUNのネットワーク権限を区別します。アプリは固定したフォルダーに置き、毎回一時展開先から起動するのは避けてください。プロキシを変更するたびに許可を求められる場合は、現在のバージョンの権限設定に関する説明を確認します。要求元を確かめずに、何度もパスワードを入力しないでください。
サブスクリプションの更新がタイムアウトします。再インストールが必要ですか?
まずサブスクリプションURLが完全で、現在も有効か確認してください。利用可能なノードがある場合は、「サブスクリプショングループ」からプロキシ経由の更新を試します。接続できるノードがない場合は、先にサブスクリプション元へアクセスできるようにしてください。再インストールしても期限切れのURLは直らず、途中で切れたアクセス認証情報も復元されません。
初期設定が完了した状態とは、クライアントが正常に起動し、有効なノードを読み込み、ローカルの入口が実際に待ち受け、アプリのリクエストが想定どおりコアに渡り、終了後にシステムのネットワーク設定が復元されることです。ルーティングをさらに調整する場合は、設定リファレンスのルーティングとDNSの説明をご覧ください。日常的な操作手順は使い方ガイドで確認できます。