入門ガイド 読了目安:12分

v2rayNGでVLESS REALITYを設定する方法|初心者向け入力ガイド

Public Key、Short ID、SNI、フィンガープリントを一つでも間違えると接続できません。画面の入力順に沿って、初心者でも迷わず設定できるようまとめました。

VLESS REALITYとは何か?

VLESS REALITYは、VLESSの接続方式にREALITYの暗号化・認証機構を組み合わせた構成です。v2rayNGで利用するときは、単に「VLESS」を選ぶだけでは不十分で、アドレス、ポート、UUID、暗号化方式、転送方式、SNI、公開鍵、ショートIDなどを正しく入力する必要があります。ひとつでも値が違うと、プロファイルは保存できても接続時に失敗します。

初心者が最初に覚えるべきなのは、これらの値を自分で推測しないことです。サーバー管理者や契約サービスから渡された共有リンク、QRコード、設定表を元に入力してください。特にUUID、公開鍵、ショートIDは似た文字列に見えても代用できません。REALITYの接続情報はサーバー側の設定と対になっているため、一般的なサンプル値を入れても通信は成立しません。

また、VLESS REALITYはプロキシの利用方法を提供する設定技術であり、接続先の品質や利用資格を保証するものではありません。信頼できる提供元から設定情報を取得し、利用地域の法令やサービス規約を確認したうえで使用してください。

設定前に用意する情報

v2rayNGを開く前に、サーバー側から次の情報をまとめておくと入力がスムーズです。共有リンクがある場合は、手動入力よりもリンクまたはQRコードからの取り込みを優先できます。ただし、取り込み後に各項目を確認することが大切です。

  • サーバーアドレス:ドメイン名またはIPアドレス
  • ポート:通常は443などの番号
  • UUID:利用者を識別する長い文字列
  • 暗号化方式:VLESSでは通常none
  • ネットワーク方式:REALITY構成では通常tcp
  • SNIまたはServer Name:TLS接続で使用するホスト名
  • 公開鍵またはPublic Key:REALITY認証用の文字列
  • Short ID:サーバー側で指定された短い識別子
  • フィンガープリント:指定があれば chrome などの値

ここで注意したいのは、サーバーアドレスとSNIは同じとは限らない点です。アドレスは実際に接続する宛先、SNIはTLSの通信で提示する名前です。提供元の設定に別々の値が書かれているなら、勝手に統一しないでください。ポートもウェブサイトでよく見る443だからと決めつけず、渡された番号をそのまま使います。

まず共有リンクまたはQRコードを取り込む

設定情報がVLESS共有リンクで渡されているなら、手動入力より取り込みが簡単です。リンクをAndroidで開き、v2rayNGを選択して追加するか、v2rayNGのノード追加メニューからクリップボードの内容を読み込みます。QRコードの場合は、ノード追加画面のQRコード読み取り機能を使います。読み取り時にカメラ権限を求められたら、内容を確認して許可してください。

取り込みが終わったら、ノード名だけを見て成功と判断せず、編集画面を開いて各項目を確認します。リンクの形式によっては、フィンガープリントが空欄になったり、SNIが想定と異なったりすることがあります。公開鍵とShort IDは入力途中で折り返される場合があるため、先頭と末尾を含めて元の情報と照合してください。

共有リンクやQRコードがない場合は、v2rayNGのノード追加から手動設定を選びます。項目名はアプリのバージョンや日本語化の状態によって多少異なることがありますが、VLESSを選択し、サーバー、ポート、UUID、暗号化、転送、TLSまたはREALITY関連の欄を順番に埋めれば構成できます。

v2rayNGで手動入力する順番

最初にノード名を入力します。名前は自由ですが、地域や用途が分かる短い名前にすると、複数ノードを管理しやすくなります。次にアドレスとポートを入力します。アドレス欄に https://vless:// を付ける必要はありません。ホスト名だけ、または指定されたIPアドレスだけを入力します。

ユーザーID欄にはUUIDを入力し、暗号化方式は提供元の指示に従います。一般的なVLESS REALITYでは none が使われますが、空欄のままにしたり、別の方式を推測したりしないでください。UUIDのハイフン、英字の大文字・小文字、余分な空白も接続結果に影響します。

ネットワーク方式は通常TCPです。WebSocketやHTTPなどに変更すると、サーバー側の転送方式と一致しなくなります。TLS関連の設定ではREALITYを有効にし、SNIまたはServer Nameに指定されたホスト名を入力します。公開鍵はPublic Key欄、Short IDはShort ID欄にそれぞれ対応させます。

フィンガープリントが指定されている場合は、その値を入力します。指定がない場合、アプリの既定値が使えることもありますが、接続できないときはこの項目も確認対象になります。Allow Insecureのような証明書検証を弱める設定は、問題を隠すために安易に有効化しないでください。REALITYのパラメータが正しければ、まず安全側の設定で検証する方が切り分けやすくなります。

保存後に接続を確認する

入力が完了したら保存し、ノード一覧から作成したプロファイルを選択します。その後、画面上の接続ボタンを押してAndroidのVPN権限を許可します。初回は「VPN接続を許可しますか」といったシステム確認が表示されるため、v2rayNGを使う場合は内容を確認して許可してください。

接続状態だけでなく、実際に通信できるかを確認します。まずはブラウザで普段使うページを開き、接続が安定してから速度や遅延を見ます。接続ボタンが有効になっていても、ノードの認証に失敗していれば通信できないことがあります。v2rayNGのログ画面にエラーが出ている場合は、何度も再接続する前にエラーの時刻と内容を確認してください。

アプリ単位のプロキシ設定を使っている場合は、対象アプリがプロキシ対象に含まれているかも確認します。最初の動作確認では、複雑なアプリ除外ルールを設定せず、基本のVPN接続でブラウザを試す方が原因を分けやすいです。別のVPNアプリや他のプロキシツールが動作している場合は、いったん停止してください。

接続できないときの確認ポイント

VLESS REALITYで接続できない場合、最初にサーバーアドレス、ポート、UUIDの3つを確認します。入力ミスが多い項目であり、特にUUIDの1文字違いは見た目で気づきにくいものです。次にREALITYが有効か、公開鍵、Short ID、SNI、フィンガープリントがサーバー側の情報と一致しているかを確認します。

  • タイムアウトになる場合:アドレス、ポート、ネットワーク環境、サーバーの稼働状態を確認する
  • 認証に失敗する場合:UUID、公開鍵、Short ID、SNIの入力を照合する
  • 接続済みなのに通信できない場合:VPN権限、選択ノード、アプリ単位設定を確認する
  • 突然使えなくなった場合:サーバーの期限、設定変更、端末の時刻、ネットワークを確認する
  • QRコード取り込み後に失敗する場合:取り込んだ項目を編集画面で再確認する

端末の日時が大きくずれていると、TLS関連の通信で失敗することがあります。Androidの日時とタイムゾーンを自動設定に戻し、再度試してください。Wi-Fiで失敗する場合はモバイル通信に切り替えるなど、別ネットワークで一度確認する方法も有効です。別ネットワークで成功するなら、入力値ではなく現在のネットワーク経路に問題がある可能性があります。

設定を何度も削除して作り直すより、正常な共有リンクやサーバー側の設定表と一項目ずつ比較する方が効率的です。提供元に問い合わせるときは、UUIDや個人用リンクを公開せず、エラーの種類、使用しているアプリのバージョン、接続時刻だけを伝えるようにしてください。

安定して使うための運用

接続できた後は、すぐに多数の設定を変更しないことが重要です。まず現在のプロファイルを残し、名前を分かりやすくして、動作する基準を作ります。DNS、ルーティング、アプリ単位プロキシなどを変更する場合は、一度にひとつだけ変更し、変更前後の通信状態を比べてください。

Androidではバッテリー最適化によって、画面を消した後にv2rayNGが停止することがあります。長時間接続が必要な場合は、端末の省電力設定でv2rayNGが制限されていないか確認します。ただし、端末やAndroidの種類によって設定名は異なるため、必要な範囲だけ変更し、すべての省電力機能を無効にする必要はありません。

サーバー情報が更新された場合は、古いプロファイルを使い続けず、新しいリンクやQRコードから取り込み直します。VLESS REALITYは複数の値が連動する構成なので、公開鍵だけを変更して他の項目を残すと、かえって不整合が起きることがあります。更新後も接続できない場合は、新旧プロファイルを比較し、サーバー側で変更された項目を確認してください。