HELP REFERENCE

V2Ray よくある質問とトラブル対処

用語、インストール、接続ログまで、問題の階層に沿って順番に確認します。まずクライアントと設定画面を確認し、次にサブスクリプション、ノード、システムプロキシ、DNSを切り分けます。複数のパラメータを同時に変更しないことが重要です。

QUESTION INDEX

問題の種類から探す

現象に最も近い分類を選んでください。各回答は実行しやすい順に並べています。1つの手順を終えるごとに再テストしてから、次へ進むことをおすすめします。

読み方: クライアントをインストールしたばかりなら、基礎知識とインストール・設定から始めます。コアを起動できる状態なら、トラブル対処を開き、クライアントログと照らし合わせて確認してください。
01

BASIC CONCEPTS

基礎知識

まずクライアント、コア、サブスクリプション、ノードを区別しましょう。名前は似ていますが、それぞれ担当する階層が異なります。

V2Ray、v2rayN、v2rayNG、v2flyNGの違いは?

V2Rayは一般に、Project Vの技術エコシステムとその設定体系を指します。v2rayNはWindows、macOS、Linux向けのデスクトップクライアントです。v2rayNGはXrayコアを採用したAndroidクライアント、v2flyNGはV2Flyコアを採用したAndroidクライアントです。クライアントはGUI、サブスクリプション管理、システムプロキシを担い、コアはプロトコルを解析して接続を確立します。

初めて使う場合、どのクライアントを選べばよい?

デスクトップでは、サブスクリプション、ノード、ルーティング、システムプロキシ、ログをまとめて管理できるv2rayNがおすすめです。Android端末では通常v2rayNGを選びます。ノード情報でV2Flyコアが指定されている場合や、コアごとの互換性を確認したい場合はv2flyNGを選択してください。名前だけで判断せず、端末のプラットフォームとノードのプロトコルを先に確認しましょう。

サブスクリプションURLと単一ノードのリンクはどう違う?

サブスクリプションURLは更新可能なノード一覧です。クライアントにURLを保存しておけば、サーバーから一覧を再取得できます。単一ノードのリンクは通常vmess://、vless://、trojan://などの形式で、1つのノードだけを記述します。サブスクリプションを追加した後も更新操作が必要です。単一ノードを追加した場合はローカル一覧に直接保存され、同じグループにある他のノードの変更は自動で反映されません。

ノード、プロトコル、通信方式にはどのような関係がある?

ノードは接続に必要なパラメータ一式で、プロトコルはその一項目です。たとえばVLESSノードには、サーバーアドレス、ポート、ユーザー識別子、セキュリティ層、通信方式、パスなどが含まれる場合があります。クライアントのプロトコル、通信方式、セキュリティ設定は、ノード情報と項目ごとに一致させる必要があります。サーバーアドレスやプロトコルだけ合っていても、他の項目が異なると接続に失敗することがあります。

Androidのインストールパッケージはarm64とuniversalのどちらを選ぶ?

近年の主流Androidスマートフォンは通常64ビットARMプロセッサを搭載しているため、まずはarm64パッケージを選ぶとよいでしょう。プロセッサのアーキテクチャが分からない場合、端末が古い場合、またはarm64パッケージが非対応と表示される場合は、universalパッケージを使用してください。主な違いは対応するプロセッサアーキテクチャの範囲で、クライアントの機能や設定画面は基本的に同じです。

02

INSTALLATION AND IMPORT

インストールと設定

サブスクリプションURLは正しい入口に入力します。追加、更新、ノード選択はそれぞれ別の手順です。

v2rayNにサブスクリプションURLを追加する方法は?

v2rayNのサブスクリプショングループ設定を開き、新しいグループを作成して完全なサブスクリプションURLを貼り付けます。保存後、「すべてのサブスクリプションを更新」を実行してください。更新が終わったら、サーバー一覧からノードを選び、システムプロキシを設定するか、必要なモードを有効にします。一覧に変化がない場合は、グループ設定に戻り、URLの先頭や末尾に余分な空白がないか、現在のグループが有効になっているか確認しましょう。

v2rayNGでサブスクリプションを追加・更新する方法は?

v2rayNGでサブスクリプショングループ設定を開き、右上の追加からメモとサブスクリプションURLを入力します。保存してメイン画面に戻り、「サブスクリプションを更新」を実行してください。ノードが表示されたら、まず設定を1つ選択してから接続ボタンをタップします。サーバー一覧に変更があった場合は、再度更新が必要です。クライアントを再起動するだけでは、完全なサブスクリプション取得の代わりにはなりません。

サブスクリプションURLを貼り付けると形式エラーになる場合は?

コピーしたものがサブスクリプションURLであり、WebページのURL、注文番号、途中で切れた文字列ではないことを確認します。URLの先頭、末尾、パラメータ部分が完全か確認し、改行や余分な空白を削除してから再度追加してください。提供元から渡されたものが単一のvmess://、vless://、trojan://リンクなら、クリップボードからノードを追加する入口を使い、サブスクリプションURL欄には貼り付けないでください。

サブスクリプションの更新は成功したのにノード一覧が空なのはなぜ?

更新成功はリクエスト処理が終了したことを示すだけで、取得した内容に認識可能なノードが含まれるとは限りません。まずクライアントのログで、空の内容、解析失敗、未対応形式がないか確認します。次に、サブスクリプショングループの更新時刻から新しいデータを取得できたか判断してください。フィルターですべてのノードが非表示になっていないかも確認し、必要ならキーワードフィルターを解除して一覧を見直します。

サブスクリプションの更新に失敗する、または待機し続ける場合の確認方法は?

まず実行中のプロキシモードを停止し、現在正常にインターネットへ接続できる回線で再更新します。古いプロキシによるループを避けるためです。続いてシステム時刻、サブスクリプションURLの完全性、クライアントログを確認します。1つのサブスクリプションだけ失敗するなら、そのグループを個別に更新してください。複数が同時に失敗する場合は、ノードを1つずつ変更する前に、ローカルネットワーク、DNS、残存したシステムプロキシを確認します。

03

DAILY USAGE

使い方のコツ

接続状態、システムプロキシ、分岐ルールは別々の階層です。それぞれ個別に確認しましょう。

システムプロキシ、グローバルモード、ルールベースの分岐モードの違いは?

システムプロキシは、クライアントの待受アドレスをOSのプロキシ設定に登録し、システム設定に従うアプリのリクエストをクライアントへ渡します。グローバルモードでは通常、クライアントに入った通信をすべて現在のノード経由にします。分岐モードでは、ドメイン、IP、ルールに応じて直接接続とプロキシ接続を振り分けます。初回テストでは単純なモードでノードの利用可否を確認し、その後、普段使いに適したルールへ戻すとよいでしょう。

低遅延と表示されるだけでなく、ノードが実際に使えるか判断するには?

基本的な遅延は、測定先が応答する可能性を示すだけで、プロトコルのハンドシェイクやWebリクエストの成功を完全には表しません。クライアントの実接続テスト、または実際のアクセスで確認し、ノードに接続して普段使うWebページを開いてください。遅延値は正常でも実接続に失敗する場合は、プロトコル、セキュリティ層、通信方式の項目を確認します。1回のping結果だけでノードの品質を判断しないでください。

分岐ルールを変更したのにすぐ反映されないのはなぜ?

分岐ルールは通常、コアの起動時に読み込まれます。変更後は設定を保存して現在の接続を再起動し、必要に応じてコアを完全に停止してから再起動してください。ルールの順序も確認します。より広いルールが先にあると、リクエストが先に一致して後続の詳細なルールが実行されない場合があります。テスト時は、ログにある対象ドメイン、対象IP、最終的な出力タグを確認できます。

クライアントを更新するとサブスクリプションやローカル設定は消える?

通常のアップデートでは既存のデータディレクトリが引き継がれますが、インストール形式によってデータの保存場所が異なる場合があります。更新前にクライアントのバックアップまたはエクスポート機能で、サブスクリプショングループ、ルーティング設定、ローカルノードを保存してください。クライアントの実行中にディレクトリ全体を直接上書きしないでください。プログラムを終了してから現在のインストール形式に合わせて更新し、初回起動後にデータディレクトリが元の場所を指しているか確認します。

ブラウザではプロキシを使えるのに、他のアプリでは使えないのはなぜ?

ブラウザはシステムプロキシを参照する場合もあれば、独自のプロキシ設定を持つ場合もあります。他のアプリが同じ設定を使うとは限りません。まずクライアントでシステムプロキシが設定されていることを確認し、対象アプリが直接接続、固定プロキシ、独自のネットワークスタックのどれを使っているか確認します。HTTPプロキシにしか対応しないアプリでは、クライアントに表示されたローカルHTTPポートを入力してください。より多くのアプリの通信を取り込みたい場合は、TUNモードを検討します。

04

TROUBLESHOOTING

トラブル対処

まずログを確認し、次に比較します。一度に変更する変数を1つに絞ると、問題の階層を特定しやすくなります。

ノードがタイムアウトして接続できない場合、どの順番で確認する?

まず端末のネットワーク自体が使えることと、システム時刻が正しいことを確認します。次にサブスクリプションを再更新し、ノード情報が変更されていないか確認してください。その後、サーバーアドレス、ポート、プロトコル、ユーザー識別子、セキュリティ層、通信方式を照合します。同じサブスクリプション内の別ノードでも比較してください。すべてのノードがタイムアウトするなら、ローカルファイアウォール、残存プロキシ、DNSを確認します。1つだけタイムアウトする場合は、そのノード側の異常である可能性が高いでしょう。

クライアントは接続済みなのにWebページを開けない場合は?

接続済みという表示は、クライアントが実行状態になったことを示すだけで、リモートとのハンドシェイク成功を意味しません。まずログを開き、接続拒否、タイムアウト、証明書名の不一致、DNSエラーがないか確認してから実接続テストを行います。続いてシステムプロキシが現在のクライアントポートを指しているか確認し、複雑な分岐ルールを一時的に無効化して比較します。問題がノード、DNS、ルールのどの層にあるか切り分けられます。

システムプロキシを有効にしてもアプリが直接接続する場合は?

まずOSのプロキシ設定で、アドレスがローカルループバックアドレスであり、ポートがクライアントの現在のHTTP待受ポートと一致していることを確認します。複数のクライアントを切り替えた場合、古いポート設定が残っていることがあります。保存後に対象アプリを再起動してください。アプリによっては起動時にしかシステムプロキシを読み込みません。それでも直接接続する場合は、アプリ側でシステムプロキシを無視する設定や独自のネットワーク設定が有効になっていないか確認します。

TUNモードで権限不足や起動失敗が表示される場合は?

TUNモードは仮想ネットワークインターフェースを作成してルーティングを変更するため、通常のシステムプロキシより高い権限が必要です。デスクトップではクライアントの案内に従って管理者権限を付与し、Androidではシステムの接続許可を受け入れてください。仮想インターフェースの作成に失敗する場合は、TUNや仮想NICを使用している他のネットワークツールを終了してからクライアントを再起動します。アップデート後の初回利用では、再認証が必要になることもあります。

システム時刻が不正確だとノード接続に失敗するのはなぜ?

一部のプロトコルやセキュリティハンドシェイクでは、リクエストの有効性を時間情報で判定します。端末の時刻が大きくずれていると、リモート側に拒否されることがあります。システムの日時とタイムゾーンの自動設定を有効にし、同期後にクライアントを再起動してテストしてください。ログにハンドシェイク失敗があり、最近ノードのパラメータを変更していないなら、ローカルポートを何度も変えるより先に時刻を調整します。

DNSエラーが出たり、開けるWebサイトと開けないWebサイトがある場合は?

まずドメイン解決の失敗とノード接続の失敗を切り分けます。異なるドメインへ直接アクセスし、ログにあるDNS関連のメッセージを確認してください。一時的にクライアントの標準DNSとルーティング設定へ戻し、接続を再起動して再テストします。標準設定で正常なら、原因はカスタムDNS、ドメインルール、名前解決経路にある可能性が高いでしょう。変更は一度に1項目だけ行い、復元できる設定バックアップを残してください。

NEXT STEP

まだ問題を特定できない場合

クライアント名、システムプラットフォーム、選択したプロトコル、問題が発生した操作手順、ログにある最初の重要なエラーを記録します。サーバーアドレス、ユーザー識別子、サブスクリプションURLは隠してから、設定を時系列で確認してください。「接続失敗」だけを切り取るより、完全な状況を共有したほうが原因を判断しやすくなります。