設定用語クイックガイド・24項目
V2Ray用語集
プロトコル・コア・サブスクリプション・ルーティング
設定を変更する前に、対象の項目がどの層に属するか確認しましょう。下の分類から用語を調べられます。各項目には個別のアンカーがあり、保存や共有にも便利です。
接続設定
プロトコルと通信方式
プロトコル、通信方式、セキュリティ層はそれぞれ異なる要素です。同じ名前のノードでも、通信方式やセキュリティ設定が異なる場合があります。
- VMess
- VMessはProject Vエコシステムのプロキシプロトコルで、認証とデータ保護の仕組みを備えています。設定ではユーザーID、サーバーアドレス、ポートなどを指定します。異なる下位の通信方式と組み合わせられるため、プロトコル名だけで必要な通信設定は判断できません。接続できない場合は、認証情報をむやみに変更せず、両端の設定とシステム時刻を確認してください。
- VLESS
- VLESSは軽量なプロキシプロトコルで、プロトコル自体はデータを暗号化しません。通常はTLSやREALITYなどのセキュリティ層と組み合わせて使います。ユーザーID、通信方式、セキュリティ層、フロー制御の設定をサーバー側と一致させる必要があり、すべての設定項目があらゆる組み合わせで使えるわけではありません。VLESSを使う場合は、具体的な構成とコアの対応状況を確認してください。VMessの設定名をVLESSに変えるだけでは使えません。
- Trojan
- Trojanは通常、TLSで安全な接続を確立し、パスワードで認証するプロキシプロトコルです。設定ではアドレスとポートに加え、パスワード、サーバー名、証明書関連の項目も確認してください。証明書エラーが発生した場合は、時刻、サーバー名、サーバー側の設定を先に確認しましょう。証明書の検証を無効にする方法を常用するのは避けてください。
- REALITY
- REALITYはXrayエコシステムの通信セキュリティ機能で、VLESSと並ぶ独立したプロキシプロトコルではありません。一般的にはVLESSと組み合わせて使います。クライアントには、サーバーから提供された情報に基づき、サーバー名、公開鍵、ショートIDなど必要な項目を設定します。項目名は画面のバージョンによって異なる場合があります。インポート後に項目が不足している場合は、別のセキュリティ層の値で代用せず、クライアントとコアの対応状況を確認してください。
プログラムの役割
コアとエコシステム
画面は設定を管理し、コアは接続を処理します。何度も再インストールするより、問題がどちらの層にあるかを確認することが大切です。
- Project V
- Project Vは、V2Rayを代表例とするネットワークプロキシツールのエコシステムです。一般的な設定はインバウンド、ルーティング、アウトバウンドで構成されます。インバウンドはアプリのトラフィックを受け取り、ルーティングは処理方法を判断し、アウトバウンドは直接接続、プロキシなどの処理を行います。この流れを理解すると、画面上のリスニングポート、ルール、サーバー設定を適切な位置づけで確認できます。
- V2Fly
- V2FlyはV2Rayの開発を引き継ぐコミュニティプロジェクトです。コアはプロトコルの実装、接続処理、DNS、ルーティングなどを担います。v2flyNGはこのコア系統を利用するAndroid向けGUIクライアントの一つです。クライアント名とコア名は区別してください。機能が利用できるか判断するには、コアの対応状況とクライアントに設定項目があるかの両方を確認する必要があります。
- Xray
- XrayはV2Rayから派生したプロキシコアで、独自の機能開発が進められています。v2rayNGはXrayコアを使用します。両コアには共通する設定概念もありますが、プロトコルの機能、セキュリティ層、設定項目の対応状況は完全には一致しません。設定を移行する際は項目ごとに確認し、関連するエコシステムだからといって、そのまま互換性があると判断しないでください。
- クライアントとコア
- クライアントはユーザーが操作するGUIプログラムで、サブスクリプション管理、設定編集、起動制御を行います。コアは実際にトラフィックとプロトコルを処理します。v2rayN、v2rayNG、v2flyNGはいずれもクライアント名で、コアの更新と画面の更新では解決する問題が異なる場合があります。トラブル時はまずログを確認してください。画面が起動していてもコアが正常に起動したとは限らず、コアが起動していてもアプリがプロキシを使っているとは限りません。
トラフィックの入口
クライアント機能
まずアプリのトラフィックがクライアントに届いているかを確認し、次にどのアウトバウンドへ送られているかを調べましょう。
- システムプロキシ
- システムプロキシは、OSにローカルプロキシのアドレスを登録する機能です。通常、この設定を参照するアプリだけがプロキシを使います。v2rayNでシステムプロキシの自動設定を選んでも、コアが正常にローカルポートをリッスンしている必要があります。設定だけで接続が確立するわけではありません。アプリによっては独自のプロキシ設定もあるため、ブラウザーでアクセスできても、すべてのプログラムがプロキシを経由しているとは限りません。
- TUNモード
- TUNモードは仮想ネットワークインターフェースを通じてトラフィックを受け取り、システムプロキシ設定を参照しないアプリの通信にも利用できます。ただし、適用範囲はシステムのルーティングやクライアントの実装によって異なります。有効にするには追加の権限が必要な場合があり、DNS、ルーティング、ほかのネットワークソフトの設定も連携させる必要があります。まず通常のプロキシ接続を確認し、その後TUNを個別に有効にして問題を切り分けてください。複数のトラフィック制御ツールを同時に使うと、通信経路が変わるおそれがあります。
- ローカル混合リスナー
- 混合リスナーは、同じローカルポートでHTTPプロキシとSOCKSプロキシのリクエストを受け付ける機能です。アプリは対応するプロキシ方式でそのポートに接続します。ここで指定するのは端末側の入口ポートで、リモートノードのサーバーポートとは用途が異なります。リッスンアドレスがローカルループバックだけの場合、ほかの端末からはアクセスできません。LANから接続できるようにする場合は、ファイアウォールとアクセス制御にも注意してください。
- 複数コアの切り替え
- 複数コアの切り替えは、設定に応じて異なるプロキシコアを呼び出すクライアント機能です。選択できるコアは、クライアントのバージョンとインストール内容によって異なります。切り替えると、対応するプロトコル、セキュリティ層、ルール機能も変わります。表示名を変更するだけではありません。設定がサポートされない場合は、必要な機能を確認して適切なコアを選び、切り替え後に起動ログと実際の接続を確認してください。
設定の取得元
サブスクリプションとノード
インポート成功は、設定を読み込めたことを示すだけです。接続を利用するには、設定内容、テスト先、現在のネットワークも確認してください。
- サブスクリプション
- サブスクリプションは、サーバー設定をまとめて取得するためのリンクまたはデータソースです。クライアントが読み込むと、管理可能なノードに変換されます。更新は通常、設定を再取得する操作であり、自動更新、ノードの修復、接続の保証を意味しません。サブスクリプションURLには個人用の認証情報が含まれる場合があるため、公開しないでください。読み込みに失敗した場合は、URLの有効性、返される形式との互換性、更新リクエストが完了しているかを確認しましょう。
- ノード
- ノードは、リモートサーバーへの接続設定を指す一般的な呼び方です。通常、アドレス、ポート、プロトコル、認証、通信方式が含まれます。表示名は管理用のラベルにすぎず、実際の出口の場所、帯域幅、安定性を示すものではありません。インポート後は実際に接続をテストし、選択中のノードと使用中のアウトバウンドが一致しているか確認してください。
- サブスクリプショングループ
- サブスクリプショングループを使うと、設定を提供元や用途別に整理し、ノードを個別に更新、絞り込み、管理できます。グループに自動負荷分散やフェイルオーバー機能が備わっているわけではありません。これらの動作には、クライアント側の対応と設定が必要です。手動で追加した設定は自動更新されるサブスクリプションと分けて管理すると、更新時の重複や意図しない変更を避けられます。
- 実接続遅延
- 実接続遅延は通常、選択中のプロキシを通じてテスト先に接続したときの所要時間を指します。ポートだけを調べる方法より、実際のアクセスに近い指標です。テスト方法はクライアントによって異なり、テスト先、接続確立の時間、そのときのネットワーク状況にも左右されます。ノードを比べる場合は同じテスト先を使い、複数回測定してください。1回の測定値が低くても、継続的なダウンロード速度が速いとは限りません。
アウトバウンドの選択
ルーティング
ルールには判定条件と利用可能なアウトバウンドが必要です。ルール名、データのバージョン、並び順も結果に影響することがあります。
- ルーティングルール
- ルーティングルールは、ドメイン、IPアドレス、ポート、プロトコルなどの条件に基づいて、接続を処理するアウトバウンドを選びます。多くのコアはルールを上から順に判定し、最初に一致したものを適用します。そのため、条件が広いルールが後続の細かいルールに先に適用される場合があります。変更後はアウトバウンドのタグが存在するか確認し、ルールが保存されたかだけでなく、ログで実際の適用結果も確認してください。
- GeoIP
- GeoIPは、IPアドレス範囲を地域や用途別にまとめたデータセットです。ルールからタグを指定してアドレス群を参照できます。IPアドレスの照合に使うもので、サーバーの物理的な場所をリアルタイムで測定するものではありません。ネットワーク事業者の変更によって、アドレスの割り当て先が変わることもあります。利用前に、使用中のデータファイルに必要なタグが含まれるか確認してください。接続先のIPアドレスがまだ取得されていない場合は、名前解決の方式が照合に影響する可能性もあります。
- GeoSite
- GeoSiteは、ドメインをサイト、サービス、カテゴリ別にまとめたデータセットで、ドメイン条件によるルーティングに利用できます。カテゴリ名や収録内容はデータファイルによって異なり、提供元が違えば同じ内容とは限りません。コアに接続先のIPアドレスだけが渡され、ドメイン名を利用できない場合、ドメインルールが期待どおりに適用されないことがあります。DNSの経路や、ドメイン名を識別する設定を確認してください。
- ルーティングとグローバルプロキシ
- ルーティングでは、条件に応じて接続を異なるアウトバウンドへ振り分けます。たとえば、LAN内のアドレスは直接接続し、指定したドメインはプロキシを使う設定ができます。グローバルプロキシは通常、対象範囲のトラフィックをまとめてプロキシへ送る機能ですが、画面上での具体的な意味は設定内容によって異なります。すべてのアプリの通信がクライアントに取り込まれるとは限らないため、トラフィックの取り込み範囲と、取り込み後のルーティングを分けて確認してください。
名前解決と通信性能
ネットワークの基礎
Webサイトへのアクセスには、名前解決、接続、データ転送など複数の段階があります。1つのテスト結果だけでは、その一部しか分かりません。
- DNS
- DNSはドメイン名をIPアドレスに変換するシステムです。クエリはOS、アプリ、プロキシコアのいずれかから送信されることがあります。どこで名前解決するか、どのDNSサーバーを使うかによって、結果や後続のルーティング判定が変わる場合があります。ドメインにアクセスできない場合は、名前解決と接続の成否を分けて確認してください。どちらの問題もノードの障害と決めつけないようにしましょう。
- FakeDNS
- FakeDNSはアプリに対応付け用のアドレスを返し、接続処理時にプロキシコアが元のドメイン名を復元することで、ドメイン情報を保持します。対応付け用のアドレスは接続先サービスの実際のアドレスではありません。DNSクエリと後続のトラフィックが連携した処理経路に入って初めて機能します。この機能を無効にしたり方式を変更したりした後も、アプリに以前の対応付けがキャッシュされていることがあります。必要に応じてアプリを再起動し、関連するキャッシュを削除してください。
- DNSリーク
- DNSリークは、DNSクエリが想定した名前解決経路を通らず、OS、ブラウザー、その他の経路で処理される現象です。リークに該当するかどうかは、あらかじめ設定したDNSポリシーに基づいて判断してください。ルールに従って直接接続するドメインをローカルDNSで解決していても、必ずしも設定ミスとは限りません。調査時はブラウザーのセキュアDNS、OSの名前解決設定、クライアントのDNSポリシーをあわせて確認し、出口のIPアドレスだけでクエリの経路を判断しないでください。
- 遅延と帯域幅
- 遅延は通信の待ち時間、帯域幅は単位時間あたりに転送できるデータ量を表し、それぞれ異なる指標です。Webページの初回表示には、DNS、接続のハンドシェイク、サーバーの応答、パケットロスも影響するため、遅延が小さくてもダウンロードが速いとは限りません。利用感を比べる際は、同じテスト先とできるだけ同じネットワーク条件で繰り返しアクセスし、継続的なデータ転送も確認してください。