設定リファレンス / よく使う用語24選

V2Ray用語集
プロトコル、コア、プロキシモード

「接続をどうクライアントに取り込むか」「ルールで接続をどこへ送るか」「コアがサーバーへどう接続するか」を分けてから、設定項目を確認しましょう。メニューの表記が似ていても、同じレイヤーの機能とは限りません。

設定を読む順序

トラフィックの取り込み → ルーティング → アウトバウンド接続。システムプロキシとTUNは、トラフィックをどう取り込むかを決めます。ルーティングルールは直接接続、プロキシ、ブロックのどれにするかを決め、VMessやVLESSなどのプロトコルはプロキシ接続の確立方法を定義します。DNSは接続とルール照合に必要なアドレス情報を提供し、クライアントは設定をまとめてコアを呼び出します。

このページでは概念を解説します。サーバー側の設定説明に代わるものではありません。設定を始める場合は入門ガイドをご覧ください。エラーが発生している場合は、トラブル対処で症状に応じて確認できます。

01 / 接続設定

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

プロトコル、トランスポート方式、トランスポートのセキュリティは、それぞれ別のレイヤーです。設定をインポートした後は、サーバーから指定された組み合わせを維持してください。プロトコル名だけを変更して接続を試すのは避けましょう。

VMess

VMess protocol

Project Vのエコシステムで使われるプロキシプロトコルで、ユーザーIDを使って認証します。実際の接続では、プロトコル固有のセキュリティ設定も関係します。VMessは複数のトランスポート方式と組み合わせられます。ノードのWebSocketパスやTLS設定は、プロトコル名には含まれません。接続できない場合は、システム時刻とクライアント・サーバー双方の設定を確認してください。サーバーアドレスに到達できるだけでは、設定が正しいとは限りません。

VLESS

VLESS protocol

軽量なプロキシプロトコルで、通信内容の暗号化機能は備えていません。実際の運用では通常、TLSまたはREALITYと組み合わせて通信を保護します。ユーザーID、トランスポート方式、セキュリティ設定、必要に応じてflowの設定をサーバー側と一致させてください。VLESSリンクをインポートできても、現在のコアがリンク内のすべての拡張機能に対応しているとは限りません。

Trojan

Trojan protocol

通常はTLSで接続を保護し、パスワードで認証するプロキシプロトコルです。設定時はパスワード、ポート、サーバー名、証明書の検証設定をそれぞれ確認してください。TLSハンドシェイクの失敗を、すぐにパスワードの誤りと判断しないようにしましょう。特定のトランスポート方式と組み合わせることもできますが、組み合わせはサーバーから指定された設定に従ってください。

REALITY

Transport security

Xrayのエコシステムで使われるトランスポートのセキュリティ機能で、VMessやVLESSと並ぶ独立したノードプロトコルではありません。通常、クライアントにはサーバーと一致する公開鍵、サーバー名、Short IDなどの設定と、対応するコアが必要です。問題を切り分ける際は各項目を一つずつ確認してください。証明書検証を無効にする方法は、REALITYの設定ミスを直す一般的な解決策ではありません。

02 / ソフトウェアの構成

コアとクライアント

画面は設定を管理し、コアは設定を実行します。プロトコル非対応や認識できない項目のエラーが出た場合は、まず実際に起動しているコアを確認してください。

V2Ray

Project V ecosystem

Project Vのエコシステムに属するネットワークプロキシツールおよび関連プロジェクトの名称です。インバウンド、アウトバウンド、ルーティング、DNSなどのモジュールでネットワーク接続を管理します。検索で使われる「V2Rayクライアント」は、関連設定を管理するGUIアプリ全般を指すことが多く、すべてのアプリが同じコアを使うという意味ではありません。互換性を確認する際は、クライアント名とコア名をあわせて確認しましょう。

V2Fly

V2Ray community / core

V2Rayを中心に開発・保守を続けるコミュニティおよびコアプロジェクトで、Project Vのエコシステムを理解する際にもよく登場する名称です。対応するプロトコル、トランスポート、設定項目は、実際に使用するコアのバージョンで確認してください。別のコア向けの設定例をそのまま流用することはできません。Androidでは、v2flyNGがV2Flyコアを採用したGUIクライアントの選択肢です。

Xray

Xray-core

V2Ray関連のコードから派生したプロキシコアプロジェクトで、VLESSやREALITYなどに対応し、接続、ルーティング、DNSの設定を実行します。v2rayNGはXrayコアを使用しますが、クライアントの画面とコアは別のレイヤーです。コアが起動しない場合は、サブスクリプションを何度も更新するのではなく、まず起動ログに記録された設定項目やポートのエラーを確認してください。

GUIクライアント

Graphical client

サブスクリプションのグループ管理、サーバー選択、設定、システム連携などの画面を提供するアプリです。たとえば、デスクトップ向けのv2rayNや、Android向けのv2rayNG、v2flyNGがあります。クライアントは画面上の設定をコアが実行できる形式に変換し、一部の機能を補助コンポーネントが担う場合もあります。メニューに項目があっても、どのコアやOSでも同じように動作するとは限りません。

3つのクライアントを比較 →

03 / 設定の取得と接続テスト

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

サブスクリプションは設定を取得し、速度テストは接続状態を確認します。設定をインポートできること、サーバーに接続できること、実際に正常にアクセスできることは、それぞれ別に検証する必要があります。

サブスクリプション

Subscription

クライアントがサブスクリプションURLから取得するサーバー設定の一覧です。通常はサブスクリプショングループに保存され、更新時にリモートの内容を再取得します。更新に成功したことが示すのは、今回の設定を取得・解析できたことだけで、各設定で接続できる保証にはなりません。サブスクリプションURLにアクセス用の認証情報が含まれる場合があります。ログやスクリーンショットを共有する前にURL全体を隠し、更新によって手動変更が上書きされないか確認してください。

サブスクリプションのインポート手順を見る →

ノード

Server profile / node

クライアント内のサーバー接続設定を指す一般的な呼び方です。通常、アドレス、ポート、プロトコル、認証情報、トランスポートのセキュリティ設定が含まれます。表示名はメモにすぎず、実際の設置場所、通信の出口、接続品質を示すものではありません。ノードを選択した後は、アプリのトラフィックをクライアントに取り込み、適切なアウトバウンドに一致させる必要があります。一覧の項目を選ぶだけで、これらの設定が自動的に完了するわけではありません。

TCPing

TCP connection timing

指定したアドレスとポートにTCP接続して、接続にかかる時間を測定します。主に、その時点のネットワーク環境で対象ポートに到達できるかを確認するものです。プロキシプロトコル全体の認証を検証するものではなく、リモートの通信出口からテストサイトへアクセスできるかもわかりません。TCPingに成功してもWebページを開けない場合は、ハンドシェイク、ルーティング、DNSを確認してください。ポートに到達できるだけで、接続全体が成功したと判断しないようにしましょう。

プロキシ経由の遅延

Real connection latency

クライアントからプロキシ経由でテスト先にリクエストを送り、実装に応じて所要時間を記録します。サーバーポートだけを測る方法より、実際のアクセス経路に近い結果が得られます。数値はテスト先、DNS、ハンドシェイク、接続の再利用によって変わるため、異なるクライアントやテスト先の結果を単純に比較することはできません。ダウンロード速度を測るテストとも異なります。設定を選ぶ際は、連続してアクセスしたときの安定性も確認してください。

遅延とダウンロード速度を区別する →

04 / アウトバウンドの選択

ルーティングと振り分け

ルールによって接続の処理先が決まります。ルールを確認する際は、照合条件、並び順、アウトバウンドのタグをあわせて見てください。

ルーティングルール

Routing rule

ドメイン、接続先IP、ポート、インバウンドなどの条件に応じてアウトバウンドを選ぶルールです。通常は上から順に照合されます。範囲の広いルールが先にあると、後続の詳細なルールに一致しない場合があります。設定のoutboundTagは、定義済みのアウトバウンドタグを参照します。タグがdirectか別の名前かで機能が決まるのではなく、実際のアウトバウンド設定によって動作が決まります。

トラフィックの振り分け

Split routing

接続ごとにルールを適用し、直接接続、プロキシ、ブロックなどのアウトバウンドに振り分ける方式です。追加のプロキシプロトコルではありません。振り分けの精度は、ルールの順序、利用できる接続先情報、DNSの設定によって異なり、選択中のサーバーだけでは判断できません。特定のサイトが誤ったアウトバウンドを使う場合は、まずルールがドメインとIPのどちらを認識しているかを確認し、一致したルールを調べてください。

ルーティング設定の手順を見る →

GeoIP

IP address sets

地域などのカテゴリ別に整理されたIPアドレスの集合で、geoip:cnのように接続先の照合によく使われます。データファイルに登録されたアドレス範囲で判定するため、ドメインの運営会社を直接特定するものではなく、サーバーの実際の設置場所と完全に一致する保証もありません。IPルールを使う際は、接続先のIPがすでに判明しているか、必要なデータファイルが利用できるかも確認してください。

GeoSite

Domain name sets

カテゴリ別に整理されたドメインの集合で、geosite:cnのような形式で参照し、ドメインに基づくルーティングに使います。利用できるタグや収録されているドメインは、クライアントのメニュー名ではなく、現在使用しているデータファイルによって異なります。アプリがドメイン情報を復元できずIPだけを送る場合、ドメインリストだけでは意図したルールに一致しないことがあります。

05 / ドメインと接続先の識別

DNSとネットワーク

Webページを開くとき、ドメインの名前解決とコンテンツへの接続は別の経路を通る場合があります。問題の原因を調べる際は、まずどの機能が名前解決を行い、問い合わせがどこへ送られるかを確認してください。

DNS

Domain Name System

ドメインをIPアドレスなどのレコードに変換するシステムです。一般的なAレコードとAAAAレコードは、それぞれIPv4アドレスとIPv6アドレスを返します。アプリ、OS、プロキシコアがそれぞれ名前解決を行う場合があるため、コアのDNSを変更しても、アプリ内蔵の暗号化DNSには影響しないことがあります。ドメインにアクセスできない一方で、IPアドレスへの接続は正常な場合、すぐにプロトコルを変更するのではなく、まず名前解決の結果、問い合わせ経路、キャッシュを確認してください。

FakeDNS

Synthetic address mapping

ドメインに合成アドレスを割り当て、接続がコアに到達した際にマッピングから接続先のドメインを復元する仕組みです。返されるアドレスは実際のサーバーIPではありません。ドメイン情報を保持するのに役立ちますが、対応するトラフィックの取り込みとコアの設定が必要です。有効・無効を切り替えた後もアプリに古い合成アドレスがキャッシュされていると、一時的にアクセスできない場合があります。その際はキャッシュとマッピングの整合性を確認してください。

DNSリーク

DNS leak

DNSクエリが想定したポリシーに従わず、別の名前解決経路を通る現象です。たとえば、指定したアウトバウンドを通すはずの問い合わせが、OSのリゾルバーから送信される場合があります。異常かどうかは設定したポリシーと照らし合わせて判断してください。ローカルネットワーク向けに意図的に残した名前解決が、必ずしも問題になるわけではありません。確認時はOSのDNS、アプリ内蔵の暗号化DNS、IPv6、TUNによるDNSの取り込み設定をあわせて調べてください。

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

Sniffing

接続開始時のデータから接続先ドメインなどを識別し、ルーティングで利用できる情報を補う機能です。メニューには英語のSniffingと表示されることもあります。通信内容を復号するものではなく、識別できるかどうかはプロトコルや接続方式によります。検出したドメインをルーティングに使うのか、接続先アドレスにも反映するのかは、コアの設定項目によって異なります。「有効」になっているというだけで動作を判断しないでください。

06 / トラフィックの入口とプリセット

プロキシモード

「システムプロキシ」はアプリの接続方法、「グローバルプロキシ」は一般にルーティングポリシー、「TUN」はトラフィックを取り込む方式を指します。それぞれ異なるレイヤーの機能です。

システムプロキシ

System proxy

OSのプロキシ設定を使って、その設定に従うアプリをクライアントのローカル待ち受けポートへ接続させます。独自のプロキシ設定を使うアプリや、直接ネットワークに接続するアプリもあるため、システムプロキシを有効にしてもすべてのアプリが接続されるとは限りません。クライアント終了後にネットワークの問題が発生した場合は、停止済みのポートを指すプロキシ設定がOSに残っていないか確認し、クライアントからシステムプロキシを解除してください。

グローバルプロキシ

Global routing mode

通常、クライアントに取り込まれたトラフィックをすべてプロキシアウトバウンドへ送るルーティングポリシーを指します。ローカルネットワーク向けの例外を残すかどうかは、クライアントの実装によって異なります。システムプロキシを無視するアプリを自動的に取り込む機能ではないため、「グローバル」でもOS上のすべての接続が対象になるわけではありません。切り替え後は、アプリが取り込まれているか、アウトバウンドが変更されたかを個別に確認し、異なる問題を混同しないようにしましょう。

TUNモード

Virtual network interface

仮想ネットワークインターフェースでIPパケットを受信し、プロキシで処理する方式です。より多くのアプリの通信を取り込みたい場合に適しています。実際に対象となる範囲は、権限、システムルート、DNS、除外ルールによって異なり、ほかの仮想ネットワークインターフェースと競合することもあります。初めて設定する場合は、通常のプロキシ接続が正常に動作することを確認してからTUNを有効にすると、サーバー側とシステム側の問題を切り分けやすくなります。

TUNの有効化手順を見る →

中国本土を直接接続

Mainland China bypass preset

クライアントでよく使われる振り分けプリセットです。通常、中国本土のドメインやIPアドレスの集合に一致する接続を直接接続にし、それ以外は後続のルールに従って処理します。サイトの所属先をリアルタイムで判定する機能ではなく、結果はルールデータ、DNS、カスタムルールによって異なります。同じ名前のプリセットでも、クライアントによって例外設定が異なる場合があります。違いがあるときは、メニュー名だけでなく展開後のルールを確認してください。