トラブル対処 / 症状から設定を確認

V2Rayのよくある質問
サブスクリプションと接続のトラブル対処

問題が発生している層を確認してから、該当する設定を変更してください。項目を開くと手順を確認できます。メニュー名はクライアントのバージョンによって多少異なる場合があります。

v2rayN v2rayNG v2flyNG

まずは用語を整理

基礎知識

クライアント、コア、設定の入手先、通信を取り込む方式を区別します。

V2Ray、v2rayN、v2rayNGとは?

まず、コアとクライアントを区別しましょう。V2RayはProject Vの技術エコシステムに属します。V2FlyとXrayは関連するコアの系統で、プロトコル処理、ルーティング、ネットワーク接続を担います。v2rayNはデスクトップ向け、v2rayNGはAndroid向けのGUIクライアントで、設定の取り込みや接続の管理に使います。v2flyNGはV2Flyコアを採用したAndroid向けの選択肢です。クライアントをインストールしても、サーバー設定が自動で用意されるわけではありません。利用権限のあるサブスクリプションや共有リンクを取り込み、サービス提供元の案内に従って接続してください。

サブスクリプションURL、ノード共有リンク、インストーラーの違いは?

リンクの見た目ではなく、用途で見分けましょう。インストーラーはクライアントの導入に使います。ノード共有リンクには1台分のサーバー設定が記載され、サブスクリプションURLからは複数のサーバー設定を取得・更新できます。サブスクリプションURLを単一ノードのインポート欄に貼ると、形式を認識できない場合があります。また、WebサイトのログインURLをサブスクリプションURLとして使っても、ページの内容しか取得できないことがあります。利用中のクライアントに対応したURLをサービス提供元から入手し、サブスクリプショングループの設定に登録してください。URLにアクセス用の認証情報が含まれる場合があるため、公開フォーラムへの投稿や、信頼できない変換サービスへの入力は避けてください。

システムプロキシ、ルーティング、TUNは同じモード?

通信をどの層で処理するかを整理しましょう。システムプロキシは、システム設定に従うアプリのリクエストをクライアントのローカル待ち受けポートへ転送します。ルーティングは、コアに届いたリクエストを直接接続、プロキシ経由、ブロックのどれにするか決めます。TUNは仮想ネットワークインターフェースを使い、対象の通信を取り込みます。システムプロキシを有効にしても、すべてのアプリがプロキシを使うとは限りません。TUNを有効にしても、すべての宛先がプロキシ経由になるわけではなく、コアのルーティング設定が適用されます。トラブル対処では、まずTUNを無効にして通常のシステムプロキシで接続できることを確認し、その後TUNを個別にテストして、複数の設定を同時に変更しないようにしましょう。

クライアントがノードを自動で用意する?遅延の数値で使えるか分かる?

まず、有効な設定が登録されているか確認しましょう。クライアントは接続を管理するソフトであり、インストールしただけで使えるサーバーが自動的に手に入るわけではありません。遅延テストの結果は、その時点のネットワークで特定の方法を使って測定した値です。Webページの閲覧やダウンロード、動画再生が正常にできる保証にはなりません。TCPテストで分かるのは主にポートへの接続状況で、実際の接続テストではプロトコルのハンドシェイクやテスト先との通信も行われます。遅延の数値は正常なのにWebサイトが開かない場合は、サービスの有効期限、端末の時刻、DNS、ルーティングを確認してください。遅延値だけを見てコアを何度も切り替えるのではなく、同じ設定のまま比較テストしましょう。

インストールと設定の入口を確認

インストールと設定

まずOSとアーキテクチャを確認し、次にサブスクリプションの形式と実行権限を調べます。

Androidのインストーラーはarm64とuniversalのどちらを選ぶ?

端末のプロセッサとシステムのアーキテクチャを確認してください。最近の一般的なAndroidスマートフォンでは、複数のアーキテクチャに対応するuniversal版よりサイズの小さいarm64版を選べることが多いです。アーキテクチャが分からない場合や、古い端末を使っている場合、互換性の問題が出た場合はuniversal版を試してください。プロセッサが64ビット対応でも、端末で動作しているシステムが64ビットとは限りません。端末のシステム情報とインストール結果を確認しましょう。それでもインストールできない場合は、Androidのシステム要件、空き容量、異なる署名の同名アプリがないかを確認してください。署名が異なるアプリに切り替える前に設定をエクスポートし、唯一使えるクライアントをすぐにアンインストールしないでください。

v2rayNのデスクトップ版・WPF版・OS別インストーラーの選び方

まずOSを選び、次にプロセッサのアーキテクチャを確認します。Windowsのデスクトップ版はクロスプラットフォームのUIを採用し、WPF版は従来のWindowsデスクトップUIを維持しています。メニューの配置や一部機能の入口が異なる場合があるため、両方の設定画面を混同しないようにしてください。macOSでは「このMacについて」でチップを確認し、Apple Siliconはarm64、Intelはx64を選びます。Linuxではディストリビューションに合わせてdebまたはrpmを選び、端末がx64かarm64かも確認してください。インストーラーの形式だけではアーキテクチャを判断できません。起動できない場合は、ダウンロードした種類と使用中のバージョンのシステム要件を確認してから、再インストールを検討してください。

サブスクリプション登録後にリストが空、または形式を認識できない場合は?

まずサブスクリプショングループの設定を開き、URLが正しいグループに保存されていることを確認してから、そのグループのサブスクリプションを更新してください。URLを保存しただけでは、サーバー一覧がすぐに表示されない場合があります。URLに空白や改行、チャットアプリが付けた句読点が混ざっていないか確認し、一覧で別のグループが絞り込まれていないかも確認してください。取得内容がログインページ、期限切れの案内、Webエラーの場合、何度登録し直してもノードは追加されません。サブスクリプションの利用権限を先に確認してください。単一の共有リンクを使う場合は、クリップボードからのインポートを選びます。それでも認識されない場合は、リンクの形式とクライアントの対応範囲を提供元に確認してください。

TUNを有効にすると権限不足や仮想ネットワークアダプターの作成失敗が表示される場合は?

まずTUNを無効にし、通常のシステムプロキシで接続できるか確認してください。サーバーの問題を権限の問題と取り違えずに済みます。Windowsでは、使用中のクライアントのバージョン要件に従って管理者権限またはサービス経由で起動します。Linuxでは必要な権限とTUNデバイスが利用可能かを確認し、macOSではシステムの案内に従って許可してください。トラブル対処のためにシステムの保護機能をすべて無効にするのは避けましょう。仮想ネットワークアダプターを作成できない場合は、ネットワークを制御する他のツールを終了し、ログに記録されたエラーを確認してください。権限の扱いはOS、インストール方法、コアによって異なります。修正後はクライアントを再起動し、ルーティングが正常に戻ったことを確認してください。

最初から手順を確認したい場合はサブスクリプションの登録と接続ガイドをご覧ください。またはクライアントページでOSに合ったインストーラーを選べます。

一度に変更するのは1項目だけ

使い方

更新経路、アプリのプロキシ、ルーティングルールを調整し、元に戻せる設定を残します。

サブスクリプション更新に失敗したとき、プロキシを経由しない更新を使うのはどんな場合?

まず、更新リクエストがどのネットワーク経路を使うか確認します。現在のノードが使えず、サブスクリプションの更新もそのノードを経由している場合、接続エラーで更新できないことがあります。その場合は「プロキシを経由せずにサブスクリプションを更新」を試してください。サブスクリプションサービスに現在の直接接続でアクセスできない場合は、まだ使えるノードを選び、プロキシ経由で更新します。どちらも失敗する場合は、有効期限、端末の時刻、サーバーの応答、ログを確認し、グループを何度も作り直さないでください。自動更新の間隔を設定する前に、手動更新が成功することを確認しましょう。間隔を短くしても無効なURLは直らず、サーバー側のリクエスト制限にかかる可能性があります。

ブラウザー以外のアプリにローカルプロキシを設定する方法は?

まず、アプリがシステムプロキシに従うか確認してください。手動プロキシに対応している場合は、クライアントが現在待ち受けているプロトコル、アドレス、ポートを設定します。同じ端末上では通常 127.0.0.1 を使います。ポートは設定内のローカル混合待ち受けポートを確認し、すべてのバージョンが10808だと思い込まないでください。ターミナルツールは HTTP_PROXY、HTTPS_PROXY または独自の設定を参照することがあるため、個別に確認し、変更後はターミナルを再起動して試してください。プロキシを設定できないアプリでは、TUNの利用を検討します。端末上のアプリを接続するためだけにLANからの接続を許可すると、待ち受け範囲が広がるため避けてください。

ルーティングルールを変更しても、対象サイトへの通信経路が変わらないのはなぜ?

まず、リクエストが実際に現在のクライアントへ届いていることを確認し、有効になっているルーティングルールを調べます。ルールは通常、上から順に照合されるため、前の広範なルールが先に適用されることがあります。また、ドメイン、IP、プロセスの各ルールでは対象も異なります。IPIfNonMatch を使う場合、ドメインルールに一致しなかったときに限り、対象のIPを解決してIPルールを照合します。すべてのドメインを必ず先にIP解決する設定ではありません。保存後、必要に応じてサービスを再起動し、対象アプリの既存接続を終了してから再テストしてください。アプリ独自のプロキシを使っている場合やシステムプロキシを迂回している場合、コアのルーティングだけを変更しても実際の通信経路は変わりません。

クライアントの更新やコアの切り替え前に、どの設定を残しておくべき?

クライアントのエクスポート機能やバックアップ機能を使い、サブスクリプショングループ、ローカル待ち受けポート、ルーティングの選択、DNS設定、カスタム設定を記録してください。バックアップには機密情報が含まれるため、自分で管理できる安全な場所に保存します。更新時はクライアントを終了し、元の設定と、必要なら元に戻せるインストール手段を保管したうえで、新バージョンが設定を読み込めるか確認してください。Xrayまたはsing-boxのコアに切り替える前に、ノードのプロトコルとカスタムパラメーターに互換性があるか確認します。同じ項目でもコアによって要件が異なる場合があります。変更は一度に1つだけ試し、接続できることを確認してから自動更新やTUNなどの追加機能を戻してください。

リクエストの入口からサーバーまで確認

トラブル対処

タイムアウト、プロキシが適用されない状態、ポート競合、モバイル端末のバックグラウンド切断を切り分けます。

ノードのテストがすべてタイムアウトする場合、何から確認する?

まずクライアントのプロキシを無効にし、通常のネットワークでアクセスできることを確認してから、サブスクリプションの期限と端末の時刻の自動同期を確認します。同じノードを使い、現在のネットワークと別の利用可能なネットワークで比較して、接続環境に原因があるか調べてください。具体的なエラーを見落とさないよう、テストするノードは1つに絞ります。次にログを確認し、ドメイン名の解決失敗、接続タイムアウト、接続拒否、ハンドシェイク失敗を区別します。ポートに接続できても、プロトコルのパラメーターが正しいとは限りません。アドレス、ポート、伝送方式、TLS設定を確認してください。時刻や証明書の問題を隠すために証明書検証を無効にしたり、1回のタイムアウトだけでクライアントの故障と判断したりしないでください。

接続済みなのにインターネットにアクセスできず、システムプロキシも効かない場合は?

まず有効なサーバーが選択されていることを確認し、v2rayNでシステムプロキシの自動設定を選びます。ローカル待ち受けポートがシステムプロキシに設定されたポートと一致しているか確認し、ブラウザーのプロキシ拡張機能が設定を上書きしないよう一時的に無効にしてください。ブラウザーでは接続できるのにターミナルでは失敗する場合は、ターミナルの環境変数を個別に確認します。どちらも失敗する場合は、クライアントにリクエストが届いているか確認してください。ログにリクエストがなければ、入口やプロキシ設定を調べます。リクエストが記録されてエラーになる場合は、ノード、DNS、ルーティングを確認してください。クライアント終了後も直接接続できない場合は、クライアントを再度起動してシステムプロキシを解除し、OSに手動プロキシ設定が残っていないか確認してください。

ポート10808が使用中、またはDNSの名前解決に失敗すると表示された場合は?

まずログに記録されたエラーの種類ごとに対処します。ポートが使用中の場合は、クライアントを複数起動していないか、別のプロキシアプリを同時に使っていないか確認してください。Windowsでは netstat -ano で該当ポートのプロセスIDを調べ、用途を確認してから終了します。不明なシステムプロセスをむやみに終了しないでください。設定でローカル混合待ち受けポートを変更し、手動プロキシの設定も合わせて更新する方法もあります。DNSの名前解決エラーの場合は、まずサーバーのドメイン名が解決できることを確認し、次にコアのDNS設定とルーティングがループしていないか調べます。ポート、DNS、ノードのパラメーターを同時に変更せず、一度に1項目だけ変えて、変更前後のログを残してください。

Androidで画面ロック後に切断する、またはネットワーク切り替え後に復旧しない場合は?

まず、OSがv2rayNGのバックグラウンド動作やバッテリー使用を制限していないか確認し、端末の設定で必要なバックグラウンド動作を許可して、接続状態の通知も確認してください。AndroidのVPN接続は、別の同種アプリに切り替わることがあります。現在どのアプリが接続を管理しているか確認しましょう。Wi-Fiとモバイルネットワークを切り替えた後は、いったん切断してから再接続し、ログで接続が再確立されたか確認します。特定のネットワークだけで失敗する場合は、そのネットワークのDNSと接続状況を調べてください。最初からアプリのデータを消去せず、先に設定をエクスポートしましょう。切断が続く場合は、発生時刻、ネットワークの種類、個人情報を伏せたエラー情報を記録して、原因を詳しく調べてください。

原因を段階的に調べるには、トラブル対処の手順をまとめた詳細ガイドをご覧ください。