CLIENT TERMINOLOGY

V2Ray用語集
プロトコル・コア・設定項目

共有リンクから接続設定を読み解きましょう。6分野から用語を探し、「どのプロトコルを使うか」「どのコアが処理するか」「どの通信をプロキシに通すか」を整理できます。

設定項目の名称はクライアントのバージョンによって異なる場合があります。サーバーの設定、現在のクライアント画面、選択したコアの対応範囲を確認してください。

設定方法を確認する →

PROTOCOLS & TRANSPORT

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

プロトコルは接続する両者がプロキシデータをやり取りする方法を定め、トランスポート方式はデータの運び方を定めます。どちらの設定もサーバー側と一致させる必要があります。

VMess

PROXY PROTOCOL

VMessはProject Vエコシステムのプロキシプロトコルで、認証とデータ暗号化の仕組みを備えています。設定では通常、UUIDでユーザーを識別します。古い資料にあるalterIdは過去の互換性に関する項目で、現在のサーバーにそのまま適用できるとは限りません。端末の時刻が大きくずれていると認証に失敗することがあるため、時刻同期とクライアントのログをあわせて確認してください。

VLESS

LIGHTWEIGHT PROTOCOL

VLESSは軽量なプロキシプロトコルで、VMessのようなデータ暗号化機能はありません。通信の保護にはTLSまたはREALITYを組み合わせるのが一般的です。同じVLESSのノードでも、トランスポート方式やflowの設定が異なる場合があります。インポートに成功しても、現在のコアがすべての組み合わせに対応しているとは限りません。

Trojan

TLS-BASED PROTOCOL

Trojanは通常、TLSで接続を保護し、パスワードでユーザー認証を行います。アドレスとポートだけでなく、サーバー名やトランスポート方式なども一致させる必要があります。パスワードが正しいのに接続できない場合は、証明書、端末の時刻、サーバー側の設定も確認してください。

トランスポート方式

TCP / WEBSOCKET / GRPC

トランスポート方式は、プロキシプロトコルのデータを運ぶための設定レイヤーです。一般的な方式にはTCP、WebSocket、gRPCがあります。同じプロキシプロトコルでも異なるトランスポートを利用できますが、組み合わせの可否はコアのバージョンによって異なります。WebSocketのpathやHostと、gRPCのserviceNameはそれぞれ意味が異なるため、方式の選択だけを変更してほかの項目をそのままにしないでください。

CORES & ECOSYSTEM

コアとエコシステム

クライアント名とプロトコル名は別のものです。コアを選ぶ前に、接続設定がどの機能に依存するか確認しましょう。

Project V

ECOSYSTEM

Project Vは、V2Rayを代表例とするオープンソースのネットワークプロキシエコシステムです。関連プロジェクトがプロトコル処理、トランスポート、ルーティングのツール群を構成しています。v2rayNなどのGUIクライアントは接続パラメーターを整理し、コアが実行できる設定に変換します。エコシステム名を知っておくと情報を探しやすくなりますが、互換性は個々のプロジェクトとバージョンで確認してください。

V2Fly

V2RAY COMMUNITY

V2FlyはV2Rayプロジェクトから続くコミュニティのエコシステムで、一般にv2flyと呼ばれるコアを開発・保守しています。Androidクライアントのv2flyNGはこのコアを基盤としており、v2rayNGと機能範囲が同じとは限りません。設定をインポートできない、または起動しない場合は、該当バージョンのプロトコルとトランスポートへの対応状況を確認してください。

Xray

CORE FAMILY

XrayはV2Rayエコシステムから派生し、独立したコアとして発展しました。VLESSやREALITYなどの機能に対応しています。v2rayNGはXrayコアを採用しており、v2rayNで選べるコアは現在のリリース内容によって異なります。両者で共通する設定もありますが、新しい項目、既定の動作、機能の組み合わせが常に同じとは限りません。

クライアントとコア

INTERFACE / ENGINE

クライアントはサブスクリプション管理、ノード選択、システムプロキシの切り替えなどのGUI機能を提供し、コアはプロトコル処理、ルーティング、接続を実行します。画面に項目が表示されていても、選択中のコアが対応しているとは限りません。問題を調べる際は、「V2Rayが使えない」とだけ記録するのではなく、クライアントのバージョン、コアの種類、コアのバージョンをそれぞれ確認すると原因を特定しやすくなります。

CLIENT FEATURES

クライアント機能

まず通信がどのようにクライアントへ入るかを確認し、その後で取り込まれた通信の振り分けを調べましょう。通信の取り込みと出先の選択は別の段階です。

システムプロキシ

SYSTEM PROXY

システムプロキシはOSの設定を使い、その設定に従うアプリのリクエストをローカルのプロキシポートへ送ります。v2rayNの「システムプロキシを自動設定」はこの設定を行う機能で、すべてのプログラムが従うとは限りません。アプリ独自のプロキシ設定や独立したネットワークスタック、ほかのプロキシツールによって経路が変わる場合があるため、個別に確認してください。

TUNモード

VIRTUAL NETWORK INTERFACE

TUNモードは仮想ネットワークインターフェースを通じて通信を取り込みます。通常、システムプロキシだけの場合より多くのアプリを対象にできますが、ルーティング、除外設定、実装方式の影響を受けます。追加の権限が必要になることがあり、DNSやほかの仮想ネットワークアダプターとの調整も必要です。デスクトップクライアントのTUN設定とAndroidのVPN接続機能は、画面上の名称だけで同じものと判断できません。

ローカル待受ポート

LOCAL INBOUND

待受ポートは、端末上でクライアントがプロキシ接続を受け付ける入口です。リモートノードのポートとは異なります。たとえば一部のv2rayN設定ではSOCKSに10808、HTTPに10809を使いますが、実際の値は現在の設定を確認してください。アプリのプロキシを手動設定する場合は、アドレス、ポート、プロキシプロトコルを一致させます。LANからのアクセスを許可する前に、アクセス制御も確認してください。

アプリごとのプロキシ設定

PER-APP ROUTING

アプリごとのプロキシ設定は、アプリごとに通信をプロキシ経由にするかどうかを決める機能で、Androidクライアントでよく使われます。「選択したアプリのみプロキシを使用」と「選択したアプリを除外」はリストの意味が逆なので注意してください。ドメインによる振り分けと同時に適用されることもあり、最終的な経路はクライアントのルーティングルールによって決まります。

ROUTING & DNS

ルーティングとDNS

名前解決、ルールの照合、出先の選択は互いに関連しています。設定が機能しているか判断するときは、スイッチの状態だけでなく実際の接続経路を確認してください。

ルーティングルールとプロキシ振り分け

RULE MATCHING

プロキシ振り分けは、ドメイン、IPアドレスなどの条件に基づいて、リクエストの出先をプロキシ、直接接続、ブロックなどから選びます。ルールには通常、照合順があります。広い条件のルールを先に置くと、後続の詳細なルールが適用されない場合があります。ドメインポリシーのIPIfNonMatchは、ドメインルールに一致しない場合に名前解決を使ってIP条件との照合を続ける動作に関わります。「すべてをプロキシ経由にする」設定ではありません。

GeoIPとGeoSite

IP / DOMAIN DATASETS

GeoIPはIPアドレス範囲、GeoSiteはドメインをそれぞれ集合として管理し、ルーティングルールから参照できます。たとえばgeosite:category-ads-allはドメイン集合への参照で、対応するブロック用の出先と組み合わせて具体的な動作になります。集合名が存在するかどうかは使用するデータファイルによって異なります。ルールを更新した後は、データの取得元とコアとの互換性も確認してください。

FakeDNS

SYNTHETIC DNS MAPPING

FakeDNSはアプリに合成アドレスを返し、内部でドメインとアドレスの対応関係を保持することで、その後の接続でもドメインに基づく処理を可能にします。パブリックDNSサーバーのアドレスではなく、DNSサーバーを変更するだけで有効になる機能でもありません。対応関係を復元できるコンポーネントに対象の通信を戻す必要があり、そうしないと名前解決に成功しても接続に失敗することがあります。

DNSリーク

UNEXPECTED RESOLUTION PATH

DNSリークとは、DNSクエリが想定した名前解決経路から外れることです。指定した経路で名前解決される想定でも、実際には別のリゾルバーが使われる場合があります。ブラウザーの暗号化DNS、システムDNS、クライアントのDNS設定、TUNが通信を取り込む範囲などが結果に影響します。検査サイトに表示されるリゾルバー名は手がかりの一つです。設定やログとあわせて判断し、地域表示だけで結論を出さないでください。

SUBSCRIPTIONS & ENDPOINTS

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

サブスクリプションは複数の設定をまとめて更新する仕組みで、共有リンクは通常1件分の設定を表します。テスト結果は特定の対象への、その時点での接続状況を示します。

サブスクリプション

CONFIGURATION FEED

サブスクリプションは、クライアントがURLから複数の接続設定を取得・更新する仕組みで、1件のノードとは異なります。取得内容は、Base64でエンコードされた共有リンクのリストの場合もあれば、別の設定形式の場合もあります。クライアントが該当形式の解析に対応している必要があります。サブスクリプションURLに認証情報が含まれることがあるため、機密情報として扱ってください。更新に失敗したときは、何度もインポートを繰り返す前に、応答内容と形式を確認しましょう。

ノード

CONNECTION PROFILE

ノードは、クライアント内の接続設定を指す一般的な呼び方です。通常、サーバーアドレス、ポート、プロトコル、認証、トランスポートのセキュリティ設定などが含まれます。ノードの表示名だけでは、実際の設置場所や性能、接続可否は判断できません。同じサーバーでも、ポートやトランスポート設定が異なれば別の接続設定になります。

実接続遅延

PROXY REQUEST TIMING

実接続遅延は通常、プロキシ経由でテスト対象へリクエストを送り測定します。DNS名前解決、接続確立、セキュリティハンドシェイク、対象からの応答にかかる時間が含まれる場合があり、測定範囲は実装によって異なります。ICMP Pingやダウンロード速度とは別の指標です。タイムアウトの原因はノード、テスト対象、名前解決経路などさまざまです。結果を比較する際は、対象と条件をできるだけそろえてください。

SECURITY & ENCRYPTION

セキュリティと暗号化

接続できることと、認証が正しいことは別の問題です。証明書のエラーは原因を特定し、検証を緩めるだけで解消しないようにしてください。

TLS

TRANSPORT LAYER SECURITY

TLSは通信を暗号化し、認証するための仕組みで、プロキシプロトコルの接続保護によく使われます。通常の証明書検証では、信頼チェーン、有効期間、サーバー名を確認します。端末の時刻が正しくない場合も検証に失敗することがあります。TLSが保護するのは対象となる接続区間です。サブスクリプションの入手元、接続先のサービス、すべてのアプリの動作まで保証されるわけではありません。

SNI

SERVER NAME INDICATION

SNIはTLSハンドシェイクで接続先サーバー名を示す拡張機能です。クライアントではserverNameやサーバー名などの項目名で表示されることがあります。接続先アドレスにIPアドレスを使う場合でも、検証する名前にはサーバー側が指定した値を設定してください。SNIとWebSocketのHostは異なる層の項目で、一方を変更すれば他方も自動で直るとは限りません。

REALITY

TRANSPORT SECURITY

REALITYはXrayエコシステムのトランスポートセキュリティ方式で、VLESSと組み合わせて使われることが多く、VLESSと並列のノードプロトコルではありません。クライアントではサーバー名、公鍵、shortIdなど、サーバーから指定された項目を一致させる必要があります。fingerprintとflowも設定に応じて確認してください。対応状況はコアとクライアントのバージョンによって異なるため、リンクの接頭辞だけでは互換性を判断できません。

allowInsecure

CERTIFICATE VERIFICATION

allowInsecureは、一部のコア設定でTLS証明書の検証をスキップするかどうかを指定します。GUIでは「安全でない接続を許可」などと表示される場合があります。有効にすると一部の証明書エラーを回避できますが、認証が弱まり、すべてのハンドシェイク問題が解決するわけではありません。まずシステム時刻、サーバー名、証明書チェーン、サーバー側の設定を確認してください。長期間有効にすることは推奨されません。

V2Rayクライアントをダウンロード