まずディストリビューションとCPUアーキテクチャを確認し、対応するLinuxデスクトップ用パッケージをシステムのパッケージマネージャーでインストールします。次にサブスクリプションを追加し、ローカルの待ち受けポートとシステムプロキシを確認します。最後にデスクトップセッションの自動起動機能を設定します。これは、ログイン前からバックグラウンドサービスを動かす方法とは異なります。この記事では通常のユーザーによるデスクトップ利用を想定しており、TUNを先に有効にする必要はありません。
1. ダウンロード前にディストリビューション、アーキテクチャ、パッケージ形式を確認
v2rayNは、ノード、サブスクリプション、コア設定を管理するデスクトップクライアントです。Linux版のインストールパッケージは、ディストリビューションのパッケージ管理方式とCPUアーキテクチャの両方に適合する必要があります。UbuntuとDebianでは通常deb、Fedoraでは通常rpmを選びます。同じ拡張子でもすべてのディストリビューションで使えるとは限らないため、ダウンロードページのシステム要件も確認してください。
# ディストリビューションとCPUアーキテクチャを確認
cat /etc/os-release
uname -m
# Debian / Ubuntu のパッケージアーキテクチャ
dpkg --print-architecture
# Fedora のパッケージアーキテクチャ
rpm --eval '%{_arch}'
以下のコマンドは、使用しているディストリビューションに応じて選んでください。すべて実行する必要はありません。x86_64 は通常ダウンロードページの x64 に相当し、Debianパッケージでは amd64 と表記されることがあります。aarch64 は通常 ARM64 に相当します。Windows用パッケージをLinuxデスクトップ用として使わないでください。また、PCのブランドだけでアーキテクチャを判断しないようにしましょう。ダウンロードセンターでLinuxを選び、その時点で提供されているパッケージ形式を確認してください。
Ubuntu / Debian
- パッケージ形式
- deb
- ローカルインストール
- apt install
- パッケージ情報
- dpkg-deb -f
- インストール済みファイル
- dpkg -L
依存関係の処理は apt に任せ、パッケージを解凍しただけでインストール完了と考えないでください。
Fedora
- パッケージ形式
- rpm
- ローカルインストール
- dnf install
- パッケージ情報
- rpm -qip
- インストール済みファイル
- rpm -ql
現在のディストリビューションに対応したビルドを使い、依存関係が不足している場合は具体的なエラーを確認してください。
2. apt または dnf でローカルパッケージをインストール
以下のコマンドはBashターミナルで実行します。ダウンロード済みパッケージの完全なファイルパスを入力してください。ダウンロードページのURLを貼り付けないでください。パスに空白が含まれていても処理できます。パッケージ名はバージョンによって変わるため、例では固定していません。インストールには管理者権限が必要ですが、クライアントの日常的な起動には一般ユーザーを使ってください。
Ubuntu / Debian:debをインストール
read -r -e -p "debファイルの完全なパスを入力してください:" package_file
package_file="$(realpath -- "$package_file")"
if [ -f "$package_file" ]; then
dpkg-deb -f "$package_file" Package Version Architecture
sudo apt update
sudo apt install "$package_file"
else
printf '%s\n' "ファイルが見つかりません。パスを確認して、もう一度お試しください。"
fi
ローカルファイルのパスを指定して apt install を実行すると、設定済みのソフトウェアリポジトリを参照して依存関係を解決します。依存関係を満たせないというエラーが表示された場合は、ディストリビューションのバージョン、アーキテクチャ、リポジトリの状態を確認してください。強制インストールを繰り返しても、実行環境の不足は解消されません。apt update はリポジトリのインデックスを更新するもので、システム全体をアップグレードするコマンドではありません。
Fedora:rpmをインストール
read -r -e -p "rpmファイルの完全なパスを入力してください:" package_file
package_file="$(realpath -- "$package_file")"
if [ -f "$package_file" ]; then
rpm -qip "$package_file"
sudo dnf install "$package_file"
else
printf '%s\n' "ファイルが見つかりません。パスを確認して、もう一度お試しください。"
fi
3. 初回起動:サブスクリプションを追加してからコアを確認
インストールが完了したら、デスクトップのアプリケーションメニューで v2rayN を検索して起動します。初回起動時はデフォルトの権限と通常のプロキシモードを使ってください。TUNは仮想ネットワークインターフェース、ルーティング、追加の権限に関係するため、初回インストールと同時に問題を切り分けるのは避けましょう。メニュー名はバージョンによって変わることがあります。以下では中国語UIで一般的な名称を使っています。同じ項目が見つからない場合は、現在のバージョンで同等の機能を持つ設定を確認してください。
-
クライアントを起動
アプリケーションメニューから v2rayN を起動します。通知領域にアイコンだけが表示された場合は、まずアイコンをクリックしてメインウィンドウを開いてください。複数のインスタンスを続けて起動しないようにしましょう。
-
サブスクリプションを追加
「サブスクリプショングループ」→「サブスクリプショングループ設定」を開き、グループを追加してサブスクリプションURLとメモを入力します。保存後、メイン画面に戻ります。
-
項目を更新
「サブスクリプショングループ」メニューから「すべてのサブスクリプションを更新(プロキシを使用しない)」を実行します。利用可能なノードがまだない場合は、まず直接更新を試してください。失敗したらネットワークとサブスクリプションURLを確認します。
-
使用するサーバーを選択
サーバー一覧から有効な設定を選び、右クリックメニューの「アクティブサーバーに設定」を選択します。サブスクリプションの更新に成功しても、利用可能なノードが選択されているとは限りません。
-
待ち受け状態を確認
「設定」→「パラメーター設定」を開き、ローカルの待ち受けアドレスとポート、コア関連の設定を確認します。続いて実行ログを確認し、コアが正常に起動していることと、ポートが競合していないことを確かめてください。
サブスクリプションには通常、ノードのプロトコルやトランスポートの設定が含まれています。Linux版をインストールするためにVMessをVLESSへ変更する必要はなく、TLS、サーバー名、トランスポートパスをむやみに置き換えないでください。ログにコアファイルが見つからないと表示された場合は、選択したインストールパッケージに必要なコアが含まれているか、クライアントの設定が実在するファイルを参照しているかを確認します。この問題はシステムプロキシのオン/オフとは別に切り分けてください。
4. Linuxのシステムプロキシ:待ち受けポートとデスクトップ設定を一致させる
システムプロキシの影響を受けるのは、該当するプロキシ設定を参照するアプリだけです。すべてのプロセスが自動的にプロキシ経由になるわけではありません。まずクライアントのローカルプロキシが使えることを確認し、その後デスクトップ環境のプロキシを設定します。以下では説明用に 127.0.0.1:10808 を使いますが、すべてのバージョンのデフォルト値を示すものではありません。実際の値はパラメーター設定とログで確認してください。
GNOMEデスクトップでは、「設定」→「ネットワーク」→「ネットワークプロキシ」→「手動」で設定を確認できます。HTTPとHTTPSの欄には、ローカルHTTPプロキシのホスト名とポートを入力します。HTTPS欄に入力するからといって、プロキシサーバーへの接続自体にHTTPSが必要という意味ではありません。コアがSOCKSで待ち受けている場合はSOCKS欄に設定し、SOCKS専用ポートをHTTPポートとして使わないでください。混合プロキシが対応するプロトコルは、現在のコア設定を確認してください。
# サンプルのポートで待ち受け中か確認
ss -ltnp 'sport = :10808'
# このポートがHTTPプロキシに対応している場合
curl --connect-timeout 5 --max-time 15 \
--proxy http://127.0.0.1:10808 \
-I https://example.com
# このポートがSOCKS5に対応している場合、宛先ドメインの名前解決をプロキシ側に任せる
curl --connect-timeout 5 --max-time 15 \
--proxy socks5h://127.0.0.1:10808 \
-I https://example.com
以下のcurlリクエストは、待ち受け方式に応じて使ってください。両方が成功する必要はありません。--proxy を明示するのは、デスクトップのプロキシ設定を介さず、「ローカル待ち受け→コア→ノード→接続先サイト」の経路が機能するかを先に確認するためです。HTTPレスポンスを受け取れた場合、そのリクエストが接続先に到達したことは示せますが、すべてのサイト、UDP、すべてのルーティングが検証されたわけではありません。
- ローカル接続が拒否される:まずコアが起動しているか、ポート番号が正しいかを確認してください。
- ローカル接続はできるがタイムアウトする:アクティブなノード、コアのログ、接続先ドメインの名前解決、ルーティングの適用状況を確認してください。
- curlは成功するのにブラウザーでは失敗する:ブラウザーがシステムプロキシを使っているか、独自のプロキシ設定や再起動が必要な古いセッションがないか確認してください。
- デスクトップの設定が反映されない:クライアントによるシステムプロキシ操作に対応していないデスクトップ環境もあります。クライアントのボタン状態だけで判断せず、デスクトップの設定画面で手動確認してください。
5. 自動起動の意味:ログイン後にデスクトップアプリを起動
ここで推奨するのは、グラフィカルデスクトップへのログイン後に v2rayN を自動起動する方法です。ログイン画面が表示される前にGUIを起動する方法ではありません。ログイン前はユーザーセッション、ディスプレイサービス、デスクトップ設定環境が整っていないため、システムサービスとして登録すると、ウィンドウが表示されない、別のユーザーにプロキシ設定が適用されるといった問題が起きやすくなります。まず手動で起動して正常に動作することを確認してから自動起動を設定すると、問題を切り分けやすくなります。
デスクトップセッションで自動起動
推奨デスクトップ環境の自動起動設定を使うか、インストールパッケージに含まれるdesktop起動項目をコピーします。アプリケーションの実際の起動コマンドを使い、ユーザーのログイン時にグラフィカルセッションで起動するようにします。
適しているケース:一般的なデスクトップユーザー、通知領域やウィンドウ管理が必要な環境
クライアント内蔵の自動起動
現在のLinux版にこの項目がある場合は、有効にして再ログイン後に動作を確認してください。ビルドやデスクトップ環境によって実装が異なるため、別の自動起動方法と重複して有効にしないでください。
適しているケース:現在のバージョンが明確に対応し、正常に動作する環境
サービスユニットを自分で作成
ユーザーサービスとシステムサービスを区別し、グラフィカルセッションの環境や終了時の動作を考慮する必要があります。この記事ではGUIクライアントをログイン前のバックグラウンドサービスとして登録しません。
適しているケース:セッションのライフサイクルを理解し、サービスの依存関係を個別に設計する管理者
デスクトップの自動起動を使う場合は、実行ファイルの場所を推測せず、パッケージにインストールされた .desktop ファイルを優先して再利用してください。以下のコマンドでは、前のインストール時に使った package_file 変数からパッケージ名を調べ、起動項目を一覧表示します。ターミナルを閉じている場合は、インストールパッケージのパスを再入力してから該当するコマンドを実行してください。
# Ubuntu / Debian:debから実際のパッケージ名を取得して起動項目を検索
package_name="$(dpkg-deb -f "$package_file" Package)"
dpkg -L "$package_name" | grep '/applications/.*\.desktop$'
# Fedora:rpmから実際のパッケージ名を取得して起動項目を検索
package_name="$(rpm -qp --queryformat '%{NAME}' "$package_file")"
rpm -ql "$package_name" | grep '/applications/.*\.desktop$'
上記の2組のうち、現在のシステムに合うものだけを実行してください。出力されたファイルがv2rayNのメインプログラムに対応していることを確認してから、以下のコマンドでコピーします。検索結果がない場合は、別のアプリの起動項目をコピーしないでください。現在のデスクトップ環境の「自動起動」設定を使い、実際の起動コマンドを追加してください。
read -r -e -p "検索したdesktopファイルの完全なパスを入力してください:" desktop_file
if [ -f "$desktop_file" ]; then
grep -E '^(Name|Exec|TryExec|Hidden|OnlyShowIn|NotShowIn)=' "$desktop_file"
mkdir -p "$HOME/.config/autostart"
install -m 644 -- "$desktop_file" \
"$HOME/.config/autostart/v2rayn.desktop"
else
printf '%s\n' "起動項目ファイルが見つからないため、自動起動は設定されていません。"
fi
6. 再ログイン後の確認とよくある問題
設定後はログアウトしてから再度ログインしてください。通常、PC全体を再起動する必要はありません。クライアントが1つだけ起動しているか、アクティブサーバーが保持されているか、ローカルポートが待ち受けているかを確認し、先ほどのプロキシリクエストを再実行します。ウィンドウの表示、コアの起動、デスクトッププロキシの適用は、それぞれ別の確認項目です。通知領域のアイコンが見えるだけでは、通信経路が復旧したとは判断できません。
ログイン後にウィンドウが2つ表示されるのはなぜ?
クライアント内蔵の自動起動、デスクトップの「自動起動」一覧、~/.config/autostart/ を確認し、自動起動の方法を1つだけ残してください。この記事で作成したコピーを削除するには、rm -f "$HOME/.config/autostart/v2rayn.desktop" を実行します。クライアントはアンインストールされません。
ポートが使用中と表示された場合は?
ss -ltnp 'sport = :10808' を実行し、古いインスタンスが残っていないか確認してください。待ち受けポートを変更する場合は、「設定」→「パラメーター設定」で保存したうえで、デスクトップのプロキシ設定とターミナルのテストコマンドも変更し、両者の設定を一致させます。
アップグレード後に自動起動しなくなった場合は?
新しいパッケージのdesktopファイルを再検索し、Exec= と TryExec= を比較してください。ユーザーディレクトリにコピーしたファイルは、システム側のファイルが更新されても自動では追従しません。パスが変わった場合は、もう一度コピーしてログアウト・ログイン後に確認してください。
クライアントを終了するとWebページを開けなくなるのはなぜ?
デスクトップのプロキシ設定が、停止済みのローカルポートを参照したままになっていないか確認してください。GNOMEでは「設定」→「ネットワーク」→「ネットワークプロキシ」を開き、「無効」に切り替えてから、直接接続を再試行します。プロキシを引き続き使う場合は、先にコアを再起動してください。
ターミナルのアプリがシステムプロキシを使わないのはなぜ?
多くのコマンドラインツールは、GNOMEのプロキシ設定を参照しません。まず curl --proxy を明示して動作を確認し、その後は各ツールのドキュメントに従ってプロキシ引数や環境変数を設定してください。デスクトッププロキシが動作していても、すべてのコマンドが自動的に従うわけではありません。
7. アップグレードやロールバックの前に保存する設定
今後のアップグレードでも、同じディストリビューションとアーキテクチャに対応するパッケージを使い、aptまたはdnfで新しいパッケージをインストールしてください。インストールパッケージが管理するのはプログラムファイルです。サブスクリプション、ルーティング、画面設定などのユーザーデータは、別の設定ディレクトリに保存される場合があります。保存場所はバージョンや起動方法によって異なるため、現在のクライアントにある設定ディレクトリへのリンクやログで確認し、ネット上の特定のパスをそのまま当てはめないでください。
- 先にクライアントを終了:設定をコピーしている間にバックグラウンドで書き込みが続かないようにします。ウィンドウを閉じるだけで通知領域のプロセスが残っている状態にしないでください。
- ユーザー設定を保存:確認済みの設定ディレクトリをバックアップし、アクティブノード、ルーティングプリセット、待ち受けポート、自動起動の方法を記録します。サブスクリプションURLにはアクセス情報が含まれる場合があるため、公開ログに貼り付けないでください。
- アップグレード後は手動で起動:コアのログとローカルの待ち受けを確認し、HTTPまたはSOCKSのリクエストを検証してから、自動起動を確認してください。
- ロールバック時はデータ形式に注意:新しいバージョンで保存されたデータを、古いバージョンが読み込めるとは限りません。ロールバックが必要な場合は、プログラムを何度も上書きするのではなく、アップグレード前の設定バックアップと組み合わせてください。
この手順に沿って設定すると、Linux版v2rayNの導入を4段階に分けて確認できます。パッケージのインストール、クライアントとコアの起動、アプリのリクエストが実際にプロキシを通ること、ログイン後に自動で再起動することです。問題が起きたときは、ノード、ルーティング、TUNを同時に切り替えるより、段階ごとに確認したほうが原因を特定しやすくなります。モードの違いはシステムプロキシとプロキシモードの解説、ルーティングの調整はルーティング設定リファレンスをご覧ください。