設定確認ガイド · 25項目

V2Rayの基本用語集

プロトコル、コア、サブスクリプション、ルーティング、DNSを、設定する層ごとに確認できます。

用語がどの層を指すのかを確認してから、該当する設定を変更しましょう。プロトコルは接続方式を定め、コアはネットワーク処理を実行し、クライアントは操作画面を提供します。それぞれの役割は異なります。各用語の見出しには個別リンクがあり、保存や共有に使えます。

プロトコルとトランスポート

同じプロトコルでも、異なるトランスポート方式を組み合わせられます。設定をインポートした後は、プロトコル名だけで判断せず、すべてのパラメーターが互換性を満たしているか確認してください。

プロトコルとトランスポート

VMess

Project Vのエコシステムで使われるプロキシプロトコルです。ユーザーIDを使って認証し、既存の設定やサブスクリプションでよく使われています。接続にはサーバーのアドレス、ポート、トランスポート方式、セキュリティ設定も必要です。ユーザーIDだけでは接続できません。認証エラーが発生した場合は、インポートした設定に加えて端末の時刻も確認してください。時刻のずれが認証に影響することがあります。

プロトコルとトランスポート

VLESS

ユーザーIDで認証する軽量なプロキシプロトコルです。プロトコル自体は通信内容を暗号化しません。実際の環境では、通常TLSやREALITYなどのセキュリティ設定と組み合わせます。プロトコル名だけで暗号化方式を判断しないでください。ノードを編集するときは、トランスポート、セキュリティ、フロー制御の各項目をサーバーの指定に合わせます。他の設定を参考に推測で入力するのは避けてください。

プロトコルとトランスポート

Trojan

通常はTLSと組み合わせて使う、パスワード認証方式のプロキシプロトコルです。サーバーアドレス、ポート、パスワード、TLS関連のパラメーターが必要です。ドメイン名や証明書の設定も接続に影響します。ハンドシェイクエラーが起きた場合は、認証エラーと証明書の検証エラーを切り分けてください。証明書検証を無効にする方法を、通常の解決策として使うべきではありません。

プロトコルとトランスポート

REALITY

Xrayのエコシステムで使われるトランスポートのセキュリティ方式で、VLESSと並ぶ独立したプロキシプロトコルではありません。設定には通常、サーバーが指定する公開鍵、サーバー名、ショートIDなどが必要で、各項目を正しく一致させる必要があります。設定画面に項目があっても、現在のコアがすべての組み合わせに対応しているとは限りません。コアのバージョンとサーバー側の要件をあわせて確認してください。

プロトコルとトランスポート

トランスポート設定

プロキシ接続でデータを転送する方式の設定で、TCP、WebSocket、gRPCなどがあります。トランスポートはVMessやVLESSなどのプロキシプロトコルとは別の項目で、TLS設定の代わりにもなりません。WebSocketのパスやgRPCのサービス名などの追加項目はサーバー側に合わせる必要があります。メニューだけ変更して古いパラメーターを残さないようにしてください。

コアとクライアント

クライアントは設定のインポートや編集を行い、コアは接続やルールの処理を担います。互換性を調べるときは、両方の情報を記録してください。

コアとクライアント

Project V

モジュール型ネットワークプロキシを中心とするプロジェクトと技術のエコシステムで、V2Rayはその主要な構成要素です。ドキュメントでこの名称が使われる場合は、プロジェクトの背景や設計を指すことが多く、クライアントで切り替える設定項目ではありません。同じ概念が使われていても、実装によって機能、設定項目、初期動作が異なります。設定をそのまま使い回せるとは限りません。

コアとクライアント

V2Fly

V2Ray関連のコードやドキュメントを継続的に開発するコミュニティプロジェクトで、プロキシコアを提供しています。GUIクライアントとは異なる層にあり、クライアントが設定を生成してコアに渡します。他のコア向けの手順を参考にする場合は、設定項目が対応しているか先に確認してください。特に、特定のコアに固有のトランスポートセキュリティ設定をそのまま記述しないよう注意してください。

コアとクライアント

Xray

V2Rayの技術を基に開発されたプロキシコアで、プロトコル処理、ルーティング、DNSなどのネットワーク処理を担います。サブスクリプションの取得元ではなく、接続先のサーバーを自動で提供するものでもありません。機能を利用できるかどうかは、コアの実装とバージョン、クライアントがパラメーターを正しく生成するかによります。クライアントを更新した後も、実際に動作しているコアを確認してください。

コアとクライアント

v2rayN

デスクトップ向けのGUIクライアントです。サブスクリプショングループ、サーバー選択、ルーティング、システムプロキシなどを操作できます。クライアントとプロキシコアは役割が異なるため、クライアントのバージョン番号をコアのバージョンとして扱うことはできません。問題を調べるときは、実行ログと現在のコアを確認したうえで、OSのプロキシ設定やTUN設定が反映されているかを確認してください。

コアとクライアント

v2rayNG

Android向けのGUIクライアントです。システムのVPNインターフェースで端末の通信を受け取り、設定に従ってコアが処理します。初回接続時のシステム許可は、端末内で通信を取り込むためのもので、リモートサーバーへの接続成功を意味しません。アプリごとのプロキシを有効にしている場合は、対象アプリの一覧と包含・除外の設定も確認してください。通信を取り込んでいないアプリの問題を、ノードの障害と誤認する可能性があります。

サブスクリプションとノード

設定の取得、サーバーの選択、接続テストはそれぞれ別の操作です。サブスクリプションの更新に成功しても、一覧のすべてのサーバーが利用できるとは限りません。

サブスクリプションとノード

サブスクリプション

クライアントが1つのURLから複数のサーバー設定をまとめて取得する仕組みです。取得データはクライアントが認識できる形式である必要があります。サブスクリプションの更新は設定の再取得であり、サービスの契約更新やリモート接続の自動修復を意味しません。URLにアクセス用の認証情報が含まれる場合があります。スクリーンショット、ログ、問い合わせ内容を共有する前に、URLの機密部分を隠してください。

サブスクリプションとノード

ノード

リモートサーバーへの接続設定一式を指す一般的な呼び方です。クライアントによっては「サーバー」と表示されます。通常、ノードにはアドレス、ポート、プロトコル、認証、トランスポートの設定が含まれ、IPアドレスだけで構成されるものではありません。表示名は識別用にすぎず、実際の所在地、帯域幅、利用可否を示すものではありません。テスト結果やサービスの案内とあわせて判断してください。

サブスクリプションとノード

サブスクリプショングループ

サブスクリプションの取得元や管理範囲を区別するための、クライアント上の整理方法です。取得元ごとに更新、絞り込み、サーバー管理を行えます。通常、グループを作っただけでルーティングルールが自動設定されることはありません。ノードを特定のグループに移しても、特定のアプリが自動的にそのノードを使うわけではありません。削除や更新の前に、現在のグループだけが対象なのか、すべてのグループが対象なのかを確認し、手動管理している項目の上書きを防いでください。

サブスクリプションとノード

遅延

指定したテストを開始してから応答を受け取るまでの時間です。値はテストの種類とあわせて判断してください。TCPポートの疎通確認、HTTPリクエスト、プロキシ接続全体では測定する段階が異なるため、数値を直接比較できません。遅延が小さくてもダウンロード速度が速いとは限りません。テスト先、ネットワークの混雑、サーバーの負荷によって結果は変わります。タイムアウトは、今回のテストが制限時間内に完了しなかったことを示します。

サブスクリプションとノード

実接続遅延

通常、プロキシ経由でテスト先にアクセスして測定した時間を指し、サーバーのポート確認より実際のリクエスト経路に近い指標です。プロキシのハンドシェイク、名前解決、接続先からの応答などが含まれる場合があります。具体的な測定方法はクライアントの実装によって異なります。テストに失敗した場合はログを確認し、ノードへの接続失敗とテストサイトへのアクセス不能を切り分けてください。1回の結果だけで、すべての通信の状態を判断することはできません。

ルーティング

まず照合条件を確認し、次に接続先を確認してください。ドメインの集合、IPアドレスの集合、システムプロキシはそれぞれ異なる処理段階で使われ、互いの代わりにはなりません。

ルーティング

ルーティングルール

ドメイン、IPアドレス、ポート、プロトコルなどの条件でリクエストを照合し、接続先を選ぶ設定です。条件の例にはdomain:example.comやgeosite:privateがあります。実際に使える構文は、コアや設定画面によって異なります。ルールの順序と、どのルールにも一致しない場合の動作が結果に影響します。ルールが保存されているかだけでなく、ログでどのルールに一致したかを確認してください。

ルーティング

通信の振り分け

条件に応じて通信を直接接続、プロキシ経由、ブロックなどの接続先に振り分ける方法で、独立したプロキシプロトコルではありません。同じアプリでも複数のドメインに接続するため、リクエストごとに経路が異なる場合があります。問題を調べる際は、ルーティング条件、DNSの応答、宛先を識別できるかをあわせて確認してください。1回の接続結果を、アプリ全体の固定的な動作とみなさないようにしましょう。

ルーティング

GeoIP

カテゴリ別にまとめたIPアドレスの集合で、geoip:privateのようにラベルを指定してルーティングルールに利用できます。ラベルはデータファイル内の集合を示すもので、接続先の現在地を証明したり、通信速度を測定したりするものではありません。集合の内容や更新時期によって照合結果が変わります。接続先が複数のIPアドレスを使う場合や、DNSの応答が変わった場合も、適用されるルールが変わることがあります。

ルーティング

GeoSite

サービスや用途ごとにまとめたドメインの集合で、ドメインを1件ずつ管理する手間を減らせます。IPアドレスで照合するGeoIPとは異なる仕組みです。ラベルが妥当そうに見えても、読み込んだデータファイルに含まれていなければ利用できません。ルールに一致しない場合は、接続時にドメイン情報が保持されているか、実際のアクセス先がその集合に含まれているかを確認してください。

ルーティング

システムプロキシ

端末上のプロキシ接続先をOSのプロキシ設定に登録し、その設定に従うアプリで利用する仕組みです。たとえば、ローカルのHTTP待ち受けポートを指定します。すべての通信を自動的に取り込むものではありません。コマンドラインツール、一部のアプリ、独自にプロキシを設定したブラウザーでは別の経路を使うことがあります。有効にした後は対象アプリごとに動作を確認し、待ち受けポートとシステム設定が一致しているか確認してください。クライアントが起動中かどうかだけでは判断できません。

DNSとネットワーク層

ドメイン名の名前解決と接続の確立は別の段階です。DNS、TUN、スニッフィングの設定を変更するときは、元の値を記録し、一度に1項目だけ変更してください。

DNSとネットワーク層

DNS

ドメイン名をIPアドレスなどに変換するシステムです。アプリは通常、名前解決の結果を取得してから接続します。どのDNSサーバーを使うかと、そのDNSサーバーへの通信にどの経路を使うかは、別々に確認する必要があります。ブラウザー独自の暗号化DNS、システムのリゾルバー、クライアント内蔵DNSが同時に動作している場合があります。そのため、1か所を変更しても、すべてのアプリの動作が変わるとは限りません。

DNSとネットワーク層

TUNモード

仮想ネットワークインターフェースでIPパケットを受け取り、プログラム側で処理する通信の取り込み方式です。システムプロキシ設定を参照しない一部のアプリにも利用できます。システムプロキシとは別の設定で、通常は権限、システムルート、DNS、除外ルールも関係します。有効にした後は、LANへの接続や他の仮想ネットワークインターフェースとの競合も確認してください。すべての通信が正しく取り込まれるとは限りません。

DNSとネットワーク層

FakeDNS

ドメイン名に合成IPアドレスを割り当て、対応関係を保存するDNSの処理方式です。このアドレスは接続先サービスの実際のグローバルIPアドレスではありません。後続の接続が対応関係を認識できる経路を通ると、プログラムが元のドメイン名を復元してルーティングできます。名前解決を行ったプログラムを経由せずに接続すると、アクセスできない場合があります。通信の取り込みやアドレスプール向けのルーティングと組み合わせて使う必要があります。

DNSとネットワーク層

DNSリーク

DNSリクエストが想定した経路で処理されず、別のDNSサーバーに送信される状態です。判定する前に、想定している名前解決の経路を明確にしてください。テストページに表示されたDNSサーバー名だけでは、リクエストが通った経路全体は分かりません。システムDNS、ブラウザーの暗号化DNS、クライアントのルール、アプリ独自の設定をそれぞれ確認してください。暗号化された名前解決でも、想定した接続先を使っているとは限りません。

DNSとネットワーク層

トラフィックのスニッフィング

接続の初期データからプロトコルや宛先ドメインを識別し、ルーティングの判定に利用する機能です。ハンドシェイクの一部から確認できる情報を利用する場合があります。通信内容を復号する機能ではなく、すべての接続からドメインを取得できるわけでもありません。スニッフィング結果を照合に使うか、宛先アドレスにも反映するかは設定によって異なります。互換性に問題がある場合は、設定の適用範囲を確認し、無効にしたときのログと比較してください。