クライアント設定用語集

V2Ray用語集

プロトコル、コア、サブスクリプション、ルーティングの設定項目

まず設定項目がどの層に属するかを把握し、何と一致させる必要があるかを確認しましょう。以下では、よく使われる30の用語を5つのカテゴリに分けて解説します。各カードには個別のアンカーがあり、リンクを保存したり、関連項目へ移動したりできます。

プロトコルと伝送接続メッセージの運び方

プロトコルはプロキシ要求と認証を定義し、伝送方式はメッセージを運びます。名前が似ていても、設定項目を置き換えられるとは限りません。

VMess

VMess

VMessはProject Vエコシステムのプロキシプロトコルです。ユーザーIDで認証し、プロトコル独自の暗号化機能を備えています。一般的な設定では追加IDは0で、これは現在のAEAD方式に対応します。伝送方式の選択とは別の項目です。インポート後は、ユーザーID、暗号化方式、伝送方式、セキュリティ層をそれぞれ確認してください。システム時刻が大きくずれていると、認証に影響する場合もあります。

VLESS

VLESS

VLESSは軽量なプロキシプロトコルで、単体では通信内容を暗号化しません。そのため、一般的なencryptionの値はnoneです。この設定でも接続全体が必ず暗号化されないという意味ではなく、実際の安全性はTLSやREALITYなどの設定によって決まります。flowは別の項目なので、サーバーの指定とコアの対応状況に合わせて設定してください。すべてのVLESSノードに同じ値を設定することはできません。

Trojan

Trojan

Trojanは通常TLS上で通信し、パスワードで認証するプロキシプロトコルです。パスワードが正しくても、それだけでは接続できません。サーバー名、証明書の信頼性、伝送設定も一致させる必要があります。証明書エラーが出た場合は、SNI、システム時刻、証明書の設定を確認してください。証明書検証の無効化を常用するのは避けましょう。

Shadowsocks / SS

Shadowsocks

Shadowsocksは事前共有鍵を使って暗号化されたプロキシ接続を確立する方式で、SSとも略されます。従来のAEAD方式とShadowsocks 2022方式では、鍵の要件が異なります。たとえば2022-blake3-aes-128-gcmには、鍵形式の指定があります。クライアントとサーバーで暗号化方式、鍵、関連する拡張設定を一致させてください。パスワードの文字列が同じだけでは互換性を判断できません。

Transport

伝送方式

伝送方式によって、プロキシプロトコルのメッセージを下位の接続で送る方法が決まります。一般的な選択肢はTCP、WebSocket、gRPCです。WebSocketではパスやHostなどをサーバー側と合わせる必要があり、gRPCではサービス名などの指定が必要になる場合があります。伝送方式は暗号化方式とは異なり、カプセル化を追加しても接続が速くなるとは限りません。実際の設定に合わせて選択してください。

コアとクライアント設定の管理と接続処理

GUIクライアントが設定を保存し、コアがプロトコルやルーティングを処理します。互換性を調べる際は、クライアントとコアのバージョンや対応機能を分けて確認してください。

Xray-core

Xrayコア

Xray-coreはV2Rayプロジェクトから派生し、プロトコル接続、ルーティング、DNSなどの基盤処理を担います。REALITYやXTLS VisionはXrayの機能として選択時によく確認されますが、バージョンや組み合わせの制約に注意してください。クライアントに設定項目が表示されていても、実行中のコアが対応しているとは限りません。実際のコア情報はログで確認するのが確実です。

V2Fly / V2Ray Core

V2Flyコア

V2FlyはV2Rayエコシステムを引き継ぐコミュニティプロジェクトで、コアがプロキシプロトコル、伝送、ルーティング、DNS機能を提供します。Xrayとは共通の歴史がありますが、その後の機能の進化は完全には一致していません。既存の設定は確認の出発点として使えますが、すべての項目に互換性があるとは限りません。特にセキュリティ層や新しい伝送機能を確認してください。

v2rayN

v2rayNクライアント

v2rayNはWindows、macOS、Linux向けのGUIクライアントで、ノード管理、サブスクリプション更新、接続モードの設定ができます。画面上の選択内容をコア用の設定にまとめ、実際の接続は選択したコアが処理します。デスクトップ版と従来のWPF版では画面や対応プラットフォームが異なるため、手順を確認する際は使用中のバージョンにある機能を参照してください。

v2rayNG / Android

v2rayNGクライアント

v2rayNGはXrayコアを使うAndroid向けGUIクライアントです。ノードを管理し、システムのVpnServiceを通じて選択した通信を処理します。システムの許可ダイアログはローカルVPNインターフェースの作成に必要なもので、すべてのアプリが同じアウトバウンドを使うことを示すものではありません。アプリごとの設定、省電力機能、バックグラウンド実行の権限は、実際に処理される通信の範囲や接続の維持に影響します。

v2flyNG / Android

v2flyNGクライアント

v2flyNGはV2Flyコアを使うAndroid向けGUIクライアントで、対応するコア設定を利用するための選択肢です。v2rayNGと名前は似ていますが、コアの対応機能が同じとは限りません。ノードを移行する際はプロトコル、伝送方式、セキュリティ項目を再確認してください。Xray固有の機能に依存する設定は、クライアント名を変えるだけでは使い続けられません。

サブスクリプションとノード設定の取得元とテスト結果

サブスクリプションは設定を取得するための入口、ノードは個々の接続設定です。更新成功、インポート成功、接続成功はそれぞれ別の状態です。

Subscription

サブスクリプション

サブスクリプションは通常、クライアントが複数のノード設定を取得するためのURLです。更新するとリモートの一覧を再取得します。更新できない原因はURLの失効、リクエスト経路、形式の非対応などが考えられ、既存のノードがすべて使えなくなったとは限りません。URLにアクセス情報が含まれる場合があるため、スクリーンショットやログを共有する前に、URL全体や機密パラメーターを削除してください。

Node / Server Profile

ノード

ノードはクライアントに登録する接続パラメーターのまとまりで、通常はアドレス、ポート、プロキシプロトコル、認証情報、伝送方式、セキュリティ設定を含みます。物理サーバーそのものではなく、1つのサーバーが複数の異なる設定を提供する場合もあります。ノード名は識別用のラベルにすぎず、所在地、利用可否、通信性能を保証するものではありません。

Base64 Subscription

Base64形式のサブスクリプション

一部のサブスクリプションは、テキストをBase64でエンコードして提供します。デコードすると複数の共有リンクが含まれている場合があります。Base64は暗号化ではないため、ノードの認証情報を保護できず、見た目だけで中身の形式を判断することもできません。通常のJSON設定とは構造が異なるため、クライアントの対応するインポート機能を使ってください。

Connection Latency

実接続レイテンシ

実接続レイテンシは通常、選択したノード経由でテスト先へリクエストを送り、応答までにかかった時間を指します。ハンドシェイクや応答全体を含むかどうかは、クライアントの実装によって異なります。テスト先のポートだけを測るTCPレイテンシや、ダウンロード帯域幅とは別の指標です。比較する際は同じテスト先と方法を使い、実際のアプリ通信も確認してください。

ルーティング通信の処理と名前解決の経路

まず通信がコアに取り込まれているかを確認し、その後どのルールに一致したかを調べます。DNS問い合わせとアプリの接続で経路が異なる場合もあります。

Routing Rule

ルーティングルール

ルーティングルールはドメイン、IP、ポートなどの条件に応じて接続のアウトバウンドを選び、直接接続、プロキシ経由、ブロックなどを指定します。通常は上から順に評価され、最初に一致した適用可能なルールで処理が決まります。そのため、条件の広いルールを前に置くと、後続の詳細なルールが適用されない場合があります。ドメインの処理方法によっては、IPを解決して照合するかどうかも変わるため、ルールの順序と合わせて確認してください。

GeoIP

GeoIPアドレスリスト

GeoIPは地域やカテゴリごとに整理されたIPアドレスの集合で、ルーティングルールからカテゴリを指定して参照できます。照合結果は接続先のIPと使用するデータファイルによって決まり、サービスの実際の所在地を正確に判定するものではありません。サーバーアドレスの変更やデータベースの更新で結果が変わるため、トラブル対処では実際に名前解決されたIPを記録してください。

GeoSite

GeoSiteドメインリスト

GeoSiteはカテゴリごとに整理されたドメインルールの集合で、カテゴリ名を使ってまとめてルーティングを設定できます。カテゴリ名と収録範囲はデータファイルによって決まり、提供元やバージョンによって内容が異なる場合があります。ドメインリストはIPリストとは別物です。ルールに一致しない場合は、ルールの順序、ドメインの取得方法、データファイルを合わせて確認してください。

Traffic Routing

ルーティング

ルーティングはルールに応じて接続ごとに異なるアウトバウンドへ振り分け、指定した通信を直接接続、プロキシ経由、その他の方法で処理します。1回のダウンロードを複数ノードに自動分割する機能ではなく、帯域幅が自動的に向上するわけでもありません。振り分けの成否は通信の取り込み、ルールの照合、デフォルトのアウトバウンドに左右されます。それぞれを確認し、モード名だけで判断しないでください。

TUN Mode

TUNモード

TUNモードは仮想ネットワークインターフェースでIPパケットを受け取り、システムプロキシに従わない一部のアプリの通信も処理できます。システム権限、ルーティングテーブル、DNSの設定が必要で、機能の範囲はクライアントの実装によって異なります。起動後にLANへ接続できない場合は、すべての通信をプロキシ経由にするのではなく、プライベートアドレスのルールや他の仮想ネットワークインターフェースを確認してください。

System Proxy

システムプロキシ

システムプロキシはOSにプロキシアドレスを登録し、その設定に従うアプリのリクエストをローカルのプロキシ入口へ送る機能です。アプリ独自のプロキシ設定を使うものもあれば、システムプロキシを無視するものもあります。すべての通信が処理されるわけではなく、ルーティングルールとも異なります。クライアント終了後は、必要に応じてシステムプロキシ設定が元に戻っているか確認してください。

Domain Name System

DNSによる名前解決

DNSはドメインをIPアドレスなどに変換し、アプリが接続する前によく使われる仕組みです。OS、ブラウザー、プロキシコアがそれぞれ異なるリゾルバーを使う場合があるため、クライアントのDNS設定だけを変更しても、すべての問い合わせに反映されるとは限りません。トラブル対処では、どのコンポーネントが名前解決を行うか、問い合わせがどのアウトバウンドを通るか、返されたアドレスがルーティングにどう使われるかを確認してください。

FakeDNS

FakeDNSマッピング

FakeDNSはアプリに合成IPを返し、そのIPと元のドメインの対応を保存して、後続の接続でコアが接続先を復元できるようにします。通常のパブリックDNSサーバーとは異なり、対象の接続を対応するコアで処理する必要があります。互換性のないDNS、ルーティング、キャッシュ設定を組み合わせるとマッピングが機能しないことがあります。モードを切り替えた後は、古い名前解決結果にも注意してください。

DNS Leak

DNSリーク

DNSリークとは、たとえばアプリの接続はプロキシ経由なのに、名前解決は別のネットワークインターフェースから行われるなど、DNS問い合わせが想定した経路を通らない状態です。想定するポリシーに照らして判断する必要があり、ローカルでの名前解決がすべて問題とは限りません。ブラウザー独自の暗号化DNS、システムの名前解決設定、インターフェースの優先順位も確認してください。暗号化された問い合わせでも、必ずプロキシ経由になるとは限りません。

暗号化とハンドシェイクセキュリティ設定の合わせ方

セキュリティ項目はサーバーから提供された設定を基準にしてください。証明書名、プロトコルネゴシエーション、フィンガープリントはそれぞれ用途が異なり、互いに置き換えることはできません。

Transport Layer Security

TLS

TLSは通信の暗号化と認証を行うセキュリティプロトコルです。ハンドシェイクでパラメーターをネゴシエートし、サーバーの身元を確認します。証明書を使う接続では、信頼チェーン、有効期限、名前の一致を確認してください。証明書検証とプロキシプロトコルの認証は別の段階です。証明書検証を無効にすると身元確認が弱まるため、名前や証明書の設定ミスを直す代わりにはなりません。

REALITY

REALITYセキュリティ層

REALITYはXrayエコシステムのトランスポート層セキュリティ方式で、独立したプロキシプロトコルではありません。一般的にはVLESSと組み合わせます。クライアント側ではサーバー設定に合わせて、公鍵、shortId、サーバー名、フィンガープリントなどを一致させてください。通常のTLS証明書の手順をそのまま適用できるとは限りません。利用前にコアのバージョンと各項目の対応状況を確認してください。

XTLS Vision

XTLS Visionフロー制御

VisionはXrayでVLESSの特定の接続構成に使われるフロー制御方式です。クライアントではflowの値にxtls-rprx-visionを指定するのが一般的です。伝送方式とセキュリティ層に適合条件があり、任意の組み合わせで使えるわけではありません。サーバーで明示的に設定され、選択したコアが対応している場合にのみ指定してください。汎用の高速化スイッチではありません。

Server Name Indication

SNI(サーバー名)

SNIはTLS ClientHelloでサーバー名を示す拡張機能で、サーバーはその情報を使って適切な設定や証明書を選択できます。接続先がIPアドレスでも、ハンドシェイクで送る名前と文字列が一致する必要はありませんが、サーバーの指定に従う必要があります。SNIとHTTP Hostは別の項目なので、一方を変更しても、もう一方が自動で正しくなるわけではありません。

TLS Client Fingerprint

クライアントフィンガープリント

クライアントフィンガープリントは、拡張機能や暗号スイートなど、TLSハンドシェイクのパラメーター構成を表します。対応コアでは、たとえばchromeのような指定スタイルでハンドシェイクを構成できますが、実際にそのブラウザーが端末で動作しているという意味ではありません。フィンガープリント設定は証明書検証やノード認証の代わりにはならず、コアのバージョンが異なれば同じハンドシェイクになるとも限りません。

Application-Layer Protocol Negotiation

ALPNネゴシエーション

ALPNはTLSハンドシェイク中にアプリケーション層プロトコルをネゴシエートする拡張機能です。一般的な値にはh2やhttp/1.1があります。以降の通信で双方がどのアプリケーションプロトコルを使うかを決めるもので、VMessやVLESSなどのプロキシプロトコルとは別の層です。サーバーが対応していない値を設定すると、ハンドシェイクや後続のリクエストが失敗する場合があります。実際の設定に従ってください。