V2Rayのよくある質問
まず症状を確認し、順番に原因を切り分けます。v2rayN・v2rayNGのサブスクリプション、モード、接続設定を解説します。
基礎知識
クライアント、コア、通信の取り込み方式を区別しましょう。
V2Ray、v2rayN、v2rayNGとは?
まず、コアとクライアントを区別しましょう。コアはネットワーク接続を処理し、クライアントはサブスクリプション管理やモード切り替えなどのGUIを提供します。V2RayはProject Vのプロキシエコシステムに属し、V2FlyとXrayは関連するコアプロジェクトです。v2rayNはWindows、macOS、Linux向け、v2rayNGはAndroid向けです。Android向けにはV2Flyコアを採用したv2flyNGもあります。名称だけで互換性を判断せず、端末のOSとサービス側の設定要件を確認して選びましょう。
クライアントをインストールした後、接続するには何が必要ですか?
使用権限のあるサブスクリプションURL、または個別のノード設定を用意します。サブスクリプションURLは設定一覧を取得するためのアドレスで、ノードはサーバーアドレス、ポート、接続パラメーターを含む設定です。クライアントをインストールしただけでは、利用可能なサービスは自動で用意されません。設定をインポートした後、一覧を更新し、使用する設定を選んで接続を開始してください。プロトコル、通信方式、暗号化などに指定がある場合は、提供元の案内に従います。サブスクリプションURLを公開ページに掲載せず、スクリーンショットを共有するときはURL全体を隠してください。
システムプロキシ、TUN、AndroidのVPNモードはどう違いますか?
通信を経由させたいアプリに合わせてモードを選びます。システムプロキシはOSにプロキシアドレスを設定し、その設定に従うブラウザーなどが利用します。一部のコマンドラインツールやゲームはシステムプロキシを参照しません。TUNは仮想ネットワークインターフェースを使って、より低い層で通信を取り込みますが、適切な権限とルーティングが必要です。v2rayNGのVPNモードはAndroidのVPNインターフェース経由で通信を転送します。プロキシのみのモードでは、アプリ側からローカルのプロキシポートへ接続する必要があります。いずれのモードもクライアントのルーティングルールの影響を受けます。
VMess、VLESS、Trojanはどれを選べばよいですか?
サービス提供元の完全な設定を優先し、プロトコル名だけを変更しないでください。VMess、VLESS、Trojanはそれぞれ異なる接続プロトコルで、認証項目や通信設定も異なります。利用できるかどうかは、クライアントのコア、サーバー設定、TLSなどのパラメーターが一致するかで決まります。TLSは通信を保護するセキュリティプロトコルです。実際の接続経路を無視した一律の速度ランキングはありません。互換性に問題がある場合は、まずコアの対応範囲とインポート結果を確認し、複数の設定を同時に変更しないようにしましょう。
遅延テストに成功すれば、Webページも必ず開けますか?
遅延の数値だけで判断することはできません。TCPingで確認できるのは主に宛先ポートへの接続時間で、プロキシプロトコルの認証が成功したことを示すものではありません。実接続の遅延テストは通常、プロキシ経由でテスト先にアクセスするため実利用に近いものの、テスト先の影響を受けます。ダウンロード速度は一定時間のスループットを示す値で、すべてのサイトでの速度を保証するものではありません。まず実接続をテストし、次にブラウザーから目的のサイトへアクセスします。結果が異なる場合は、DNS、ルーティングルール、接続先サイトの状態を確認してください。
インストールと設定
インストールパッケージの選択から、設定のインポート、権限の許可まで解説します。
Androidのインストールパッケージはarm64とuniversalのどちらを選べばよいですか?
スマートフォンのCPUアーキテクチャや端末の仕様を確認してください。比較的新しいAndroid端末の多くはarm64に対応しています。特に2015年以降の主流機種で多く見られますが、実際の対応状況を優先してください。arm64版は対応するアーキテクチャのコンポーネントのみを含むため、通常はファイルサイズが小さくなります。universal版は複数のアーキテクチャに対応しており、端末のアーキテクチャを確認できない場合に適しています。非対応と表示されたら、アーキテクチャと最低システム要件を確認し、上書きインストールを繰り返さないでください。更新前に重要な設定を保存し、アプリのデータを誤って削除しないようにしましょう。
サブスクリプションURLをインポートできないとき、まず何を確認すればよいですか?
URL全体をコピーし直し、前後の空白や改行を削除して、アカウントのログインページやヘルプページではなくサブスクリプションURLをコピーしたことを確認します。サブスクリプショングループにURLを保存してから、サブスクリプションを更新してください。ノードの個別インポート欄に貼り付けると認識されない場合があります。対応していない形式と表示されたら、返された内容が現在のクライアントに対応する設定か、Webページやエラーメッセージなど別の内容ではないか確認します。URLの有効期限や再認証の必要性も確認してください。アクセス情報を含むURLを公開のチェックサイトに送信しないでください。
サブスクリプショングループを保存したのに、ノード一覧が空なのはなぜですか?
該当するグループでサブスクリプションを更新し、メイン一覧に戻って現在のグループ絞り込みを確認してください。URLの保存とノードの取得は別の操作です。保存しただけでは一覧にノードは表示されません。更新が成功しても件数が0の場合は、サブスクリプションの期限切れ、提供元から設定が返されていない可能性、クライアントが内容を認識できているかを確認します。ほかのグループがある場合は、空のグループを選んでいないかも確認してください。調査中は既存の利用可能な設定を残し、一覧を更新するためにサブスクリプションやノードをすべて削除しないようにしましょう。
v2rayNGの初回起動時、VPNの許可はどうすればよいですか?
インポート済みの設定を選択して起動ボタンを押し、Androidのシステム表示に従ってVPN接続を許可します。この許可は端末内に通信転送用のインターフェースを作成するもので、ノードへの接続テストが成功したことを意味しません。許可画面が表示されない、または許可後すぐに停止する場合は、別のVPNアプリがインターフェースを使用していないか、端末の管理ポリシーで接続が制限されていないか確認してください。v2rayNGを使う場合は、競合するアプリを先に停止します。ローカルポートを使い、アプリ側でプロキシを手動設定する場合に限り、プロキシのみのモードを検討してください。
v2rayNでTUNを有効にすると権限不足と表示される場合の対処法は?
まずTUNを無効にし、使用中のOSとクライアントのバージョンに応じた権限を付与してください。Windowsでは通常、管理者権限が必要です。macOSやLinuxでは、システムの許可や補助サービスが必要になる場合があり、設定場所はバージョンによって異なります。許可したらクライアントを再起動し、仮想ネットワークインターフェースが作成されるか確認します。それでも失敗する場合は、セキュリティソフトのブロック履歴、ほかのVPNや仮想ネットワークツールとの競合、ログのエラー内容を確認してください。調査のためにシステム保護を長期間無効にしたり、別のOS向けの権限昇格手順をそのまま使ったりしないでください。
使い方のヒント
プロキシの対象範囲を調整し、設定を残したうえで、条件をそろえてテストしましょう。
LAN内のアドレスは直接接続し、それ以外の通信はルールに従わせるには?
ルーティング設定で、LAN内や中国本土のアドレスをプロキシ経由にしないなど、目的に合ったプリセットを選びます。そのうえで、優先順位の高いカスタムルールがないか確認してください。ルーティングは通信を直接接続、プロキシ経由、または遮断のいずれにするかを決めるルールの集合です。通常は上から順に照合され、先のルールが後のルールより優先される場合があります。プリンター、ルーターの管理画面、イントラネットサービスにアクセスする際は、該当アドレスが直接接続に設定されているか確認します。設定を変更したら接続をいったん再確立してテストしてください。既存の接続は以前の経路を使い続けることがあり、それだけでは新しいルールが無効とは判断できません。
指定したAndroidアプリだけをプロキシ経由にするには?
v2rayNGのアプリ別プロキシ設定を開き、選択したアプリだけをプロキシ経由にする設定か、選択したアプリを除外する設定かを確認します。2つの設定は動作が逆です。対象アプリを選んで保存し、接続を停止してから再起動すると、新しい対象範囲が反映されます。テスト中は対象アプリだけを起動し、ほかのアプリの接続結果が混ざらないようにしてください。システムコンポーネントがアプリに代わってダウンロードや名前解決を行う場合があるため、アプリ名だけではすべての通信を制御できないことがあります。動作に問題がある場合は、まず既定の範囲に戻してノードが使えることを確認し、その後、対象を一つずつ絞り込みます。
サブスクリプションを更新すると、手動で変更したノード設定は上書きされますか?
上書きされる場合があります。動作はクライアントのバージョンや設定の管理方法によって異なります。サブスクリプションのノードは通常、提供元から返された内容が優先されるため、更新時に項目が再作成されたり、設定値が上書きされたりすることがあります。長期的に残したい変更は、先に独立した設定として複製し、変更理由を記録してから元のサブスクリプショングループを更新してください。理解していない通信方式やセキュリティの設定を変更すると、接続できなくなる可能性があります。更新後、選択中の項目が残っているか確認してください。ノード名が同じでも設定内容が完全に同じとは限らないため、接続テストで確認しましょう。
数値だけで切り替えずに、ノードを事前にテストするには?
まずノードを1つ選んで実接続をテストし、普段使うサイトにアクセスした後、必要に応じて短時間のダウンロード速度テストを行います。比較するには、テスト中のネットワークと接続先を同じ条件にしてください。大量のノードを一度に速度測定して日常の使い勝手を判断するのは避けましょう。テスト自体が帯域を使用し、サーバー側の負荷を高めることもあります。特定のサイトだけ遅い場合は、すべての設定をすぐに切り替えるのではなく、そのサイトのルーティングや名前解決を確認してください。動作を確認済みの設定を比較用に残し、一度に変更する条件は1つにします。
LANからの接続を許可する設定は、常に有効にしておく必要がありますか?
同じLAN内の別の端末から、この端末のプロキシに接続させる場合にだけ有効にします。有効にする前に、待ち受けアドレス、プロキシポート、ファイアウォールの範囲、アクセス制御を確認し、関係のない端末にローカルプロキシを公開しないようにしてください。接続する側の端末でも、この端末のLAN内アドレスと対応するポートを手動で設定する必要があります。この設定を有効にしただけでは、ほかの端末にプロキシは設定されません。この端末だけで使う場合は、通常オフのままで問題ありません。公共のネットワークに切り替えた後は設定を再確認してください。LAN共有は、サブスクリプション設定をほかの端末へ安全に同期する機能ではありません。
トラブル対処
まずローカルネットワークを確認し、ノード、名前解決、アプリ設定の問題を切り分けます。
ノードがタイムアウトし続ける場合、どの順番で確認すればよいですか?
まずプロキシをオフにし、端末のネットワークで通常どおりインターネットに接続できることを確認します。次に端末の時刻が正確か確認し、サブスクリプションを更新します。その後、設定を1つだけ選んでテストし、サーバーアドレス、ポート、アカウントの状態を確認してください。同じネットワークで全ノードがタイムアウトする場合は、信頼できる別のネットワークでも試します。1つのノードだけがタイムアウトする場合は、そのノードやサーバーの状態を確認してください。ログの接続タイムアウトは、指定時間内に処理が完了しなかったことを示すだけで、どちら側に原因があるかは特定できません。最初から再インストールや設定の全削除をせず、元のエラーメッセージを残しておきましょう。
接続済みと表示されるのに、ブラウザーでインターネットに接続できない場合は?
まずクライアントのコアが実際に動作していることを確認し、ドメイン名の解決とプロキシの出口をそれぞれテストします。接続済みの表示は、ローカルサービスやVPNインターフェースの起動を示すだけの場合があり、リモート接続が利用できるとは限りません。正しい設定が選択されているか、ブラウザーが想定したプロキシを使っているか、ルーティングで宛先の通信が正しい出口に送られているか確認してください。ドメイン名でのアクセスだけ失敗する場合は、ドメイン名をアドレスに変換するDNSを重点的に確認します。DNSを変更する前に現在の設定を保存し、名前解決リクエストの経路を確認してください。プロキシ、ルーティング、名前解決を同時に変更しないようにしましょう。
v2rayNのシステムプロキシを有効にしても、一部のアプリがプロキシを使わないのはなぜですか?
まずシステムプロキシに対応したブラウザーでテストし、プロキシ経路全体の問題か、特定のアプリだけがプロキシを使っていないのかを切り分けます。アプリ独自のプロキシ設定を持つもの、環境変数だけを参照するコマンドラインツール、システムプロキシの対象外となる接続方式を使うアプリがあります。アプリ側のネットワーク設定と、ローカルプロキシのポートがクライアントの設定と一致しているか確認してください。より広い範囲の通信を取り込む必要がある場合はTUNを検討し、権限とルーティングを再確認します。システムプロキシを有効にしても、すべてのアプリやプロトコルが強制的にプロキシ経由になるわけではありません。
使えていたサブスクリプションの更新に突然失敗した場合、既存の設定を残すには?
既存のノードとサブスクリプショングループを残し、削除と再作成を繰り返さないでください。更新時のエラーメッセージを記録してから、URLの有効期限、アカウントの状態、現在のネットワーク、更新リクエストに既存のプロキシが必要かどうかを確認します。バージョンによってはサブスクリプションを更新する経路を選べる場合があるため、既存の接続が使えることを確認したうえで必要に応じて試してください。証明書エラーが返された場合は、時刻を合わせてサブスクリプションURLを確認します。証明書検証を無効にして問題を隠さないでください。サーバーが一時的に利用できない場合は、時間をおいて再試行します。更新に失敗したことと、既存のノードが使えなくなったことは別の問題です。
クライアントがクラッシュしたり、バックグラウンドで切断されたりしたとき、必要な情報を集めるには?
クライアントのバージョン、OSのバージョン、使用モード、問題が起きた時刻を記録し、該当時間帯のログを確認します。デスクトップ版の起動時にクラッシュする場合は、実行環境、ファイル権限、ファイルが完全に展開されているかを確認してください。Androidでバックグラウンド切断が起きる場合は、バッテリー最適化、バックグラウンド実行の制限、ほかのVPNアプリを確認します。必要なときだけ一時的にログレベルを上げ、問題を再現したら通常の設定に戻してください。情報を記録し続けると、不要な情報まで残る可能性があります。ログを共有する前に、サブスクリプションURL、認証情報、個人のネットワーク情報を削除します。設定をリセットする前にバックアップを取り、まず直近で変更した項目を元に戻してみてください。