プロトコルとトランスポート · プロキシプロトコル
VMess
VMessはProject Vエコシステムのプロキシプロトコルで、認証とデータ暗号化の仕組みを備えています。一般にユーザーIDで利用者を識別します。クライアントとサーバーでユーザーID、トランスポート方式、関連パラメーターを一致させる必要があり、時刻のずれも認証失敗の原因になることがあります。VMessという名称だけを見て、別のノードのポートやパス、安全層の設定を流用しないでください。
プロトコルの選び方を見る →V2Ray・設定用語集
プロトコル、コア、ルーティング、安全層を解説。クライアントの設定項目から用語を調べ、意味を確認してからパラメーターを調整できます。
「VLESS + TCP + REALITY」の3つの名称は、それぞれプロキシプロトコル、トランスポート方式、安全層を表します。互いに置き換えられる3種類のクライアントではありません。
プロトコルとコアの解説を見る →PROTOCOL / TRANSPORT
プロトコルは接続する双方がプロキシリクエストをやり取りする方法を定めます。TCPやWebSocketなどのトランスポート方式は別の層です。設定時は安全層とサーバー側の設定も確認してください。
プロトコルとトランスポート · プロキシプロトコル
VMessはProject Vエコシステムのプロキシプロトコルで、認証とデータ暗号化の仕組みを備えています。一般にユーザーIDで利用者を識別します。クライアントとサーバーでユーザーID、トランスポート方式、関連パラメーターを一致させる必要があり、時刻のずれも認証失敗の原因になることがあります。VMessという名称だけを見て、別のノードのポートやパス、安全層の設定を流用しないでください。
プロトコルの選び方を見る →プロトコルとトランスポート · プロキシプロトコル
VLESSはプロトコル層をシンプルにする設計で、プロトコル自体はデータを暗号化しません。TLSやREALITYの役割は、実際の構成に応じて確認してください。ユーザーID、フロー制御、トランスポートプロトコル、安全層はそれぞれ別の項目です。ある項目で別の項目を代用することはできません。xtls-rprx-visionを使う場合は、サーバーの指定どおりに設定し、コアがその組み合わせに対応していることを確認してください。
プロトコルとトランスポート · プロキシプロトコル
Trojanは通常、TLSで安全な接続を確立し、パスワードで認証します。VMessやVLESSのユーザーIDを認証項目として使う方式ではありません。読み込み後はパスワード、サーバー名、トランスポート設定を確認してください。ポートが同じという理由だけで、設定に互換性があるとは判断できません。接続できない場合は、TLSハンドシェイクとパスワード認証のどちらで失敗しているかを切り分けてから、該当する項目を確認します。
TLSと証明書検証について →プロトコルとトランスポート · プロキシプロトコル
ShadowsocksはSSとも略され、事前共有した認証情報と指定の暗号化方式でプロキシ通信を処理します。暗号化方式、パスワード、ポートはサーバー側と一致させる必要があります。方式によって鍵の形式やコアの対応状況が異なる場合があります。共有リンクを読み込んだ後も、暗号化方式が正しく認識されたか確認してください。すべてのSS設定が同じ形式とは限りません。
プロトコルの互換性を見る →CORE / CLIENT
クライアントは画面表示と設定管理を担い、コアは実際の接続処理を担います。クライアントに項目が表示されていても、現在のコアが必ず対応しているとは限りません。
コアとエコシステム · 接続処理
XrayはV2Rayエコシステムから発展したプロキシコアで、プロトコル処理、ルーティング、アウトバウンド接続などを担います。VLESS、REALITY、Visionなどの設定が使えるかどうかは、クライアント名だけでなく、Xrayのバージョンをもとに判断してください。コアを切り替えた後は接続を再確認しましょう。既存の設定項目の意味や利用可能な範囲が変わる場合があります。
コアの違いを見る →コアとエコシステム · コアプロジェクト
V2FlyはV2Rayコアの開発を引き継ぐコミュニティプロジェクトです。画面上ではv2flyやV2Ray Coreと表示されることもあります。Xrayと共通の歴史がありますが、その後の機能、設定項目、対応範囲は完全には一致しません。設定がJSON形式だからといって、2つのコア間でそのまま切り替えられるとは限りません。特にプロトコル、安全層、ルーティングへの対応を確認してください。
Xrayコアとの違いを見る →コアとエコシステム · デスクトップクライアント
v2rayNは、サーバー一覧、サブスクリプションの読み込み、ルーティング、システムプロキシなどを管理できるデスクトップ向けGUIクライアントです。画面で行った設定は、最終的にコアが実行できる設定に変換されます。トラブル対処の際は、クライアントと使用中のコアの両方のバージョンを記録してください。デスクトップ版と従来のWPF版では画面上の操作手順が異なる場合があるため、実際のバージョンに合わせてメニューを探しましょう。
デスクトップ版のインストーラーを見る →コアとエコシステム · Androidクライアント
v2rayNGとv2flyNGはいずれもAndroid向けGUIクライアントで、主にそれぞれXrayとv2flyをコアとして採用しています。サーバー設定を管理できますが、すべての共有リンク、サブスクリプション形式、プロトコル拡張に相互対応しているわけではありません。初回の接続時には通常、システムVPNの使用許可が必要です。この許可は通信の取り込みを認めるもので、接続先のサーバーに接続できたことを示すものではありません。
Androidクライアントを見る →CLIENT / SETTINGS
通信を取り込む範囲、接続の多重化、テスト指標にはそれぞれ適用範囲があります。機能を切り替える前に、アプリがプロキシを経由しない問題なのか、接続先への接続に失敗しているのかを確認しましょう。
クライアント機能 · 通信の入口
システムプロキシは、OSのプロキシ設定でクライアントのローカル待受ポートを指定し、その設定に従うブラウザーやアプリに適用します。v2rayNの「システムプロキシを自動設定」を有効にしても、すべてのアプリがプロキシを経由するわけではありません。また、通信が最終的にどの出口を使うかも決まりません。ローカルポートを手動で変更した場合は、システムプロキシのアドレスも確認してください。古いポートにリクエストが送られ続けることがあります。
TUNの通信取り込み範囲を見る →クライアント機能 · 仮想ネットワークインターフェース
TUNモードは仮想ネットワークインターフェースを使って通信を取り込みます。システムプロキシ設定を参照しない一部のアプリにも対応できますが、対象範囲はルーティングと除外設定によって異なります。有効化には管理者権限が必要な場合があります。DNS、ほかのVPNソフト、仮想ネットワークアダプターとの競合も確認してください。TUNは通信の入口にすぎず、ノードの設定ミスを自動で修正したり、すべての通信をリモート側の出口に送ったりするものではありません。
接続と確認の手順を見る →クライアント機能 · 接続の多重化
Muxは複数の論理接続を少数の下位接続にまとめ、特定の状況で接続を繰り返し確立する負荷を減らします。効果はコア、プロトコル、フロー制御、通信の種類によって異なり、常に速度が上がる設定ではありません。Visionなどと組み合わせる場合は、まず互換性を確認してください。問題が発生したら複数の項目を同時に変更せず、元の設定に戻して比較します。
プロトコルと機能の組み合わせを見る →クライアント機能 · リクエストテスト
実接続遅延は通常、クライアントがプロキシ経由でテスト先に実際のリクエストを送り、指定した段階までの所要時間を記録した値です。サーバーのポートに接続できるか調べるだけのテストより実利用に近い一方、テスト先、DNS、ハンドシェイク、現在のネットワーク状況にも左右されます。数値が小さくても大容量ファイルのダウンロードが速いとは限りません。テストに失敗した場合も、ログを確認せずサーバーが停止していると決めつけないでください。
遅延テストの違いを見る →ROUTING / DNS
ルーティングは通信の出口を決め、DNSはドメイン名を名前解決します。ドメイン名が保持されているか、ルールのデータが利用できるかによって、最終的な照合結果が変わります。
ルーティングとDNS · 出口の選択
トラフィック振り分けは、ドメイン名、宛先IPアドレス、ポートなどの条件に応じて、通信を直結、プロキシ、遮断のいずれかに振り分ける仕組みです。通常はルールの順に照合されます。範囲の広いルールを先に置くと、後続の詳細なルールが適用されない場合があります。「中国本土を除外」などのモードは定義済みのポリシー名です。トラブル対処では、どのルールにも一致しない通信のデフォルト出口と、DNSが照合に必要な情報を提供しているかも確認しましょう。
ルーティング方式の選び方を見る →ルーティングとDNS · IPアドレスの集合
プロキシ設定でGeoIPという場合、通常はルーティングルールから参照できるIPアドレスの集合を指し、アドレスの分類に応じて出口を決める際に使います。分類結果はデータファイルの種類や更新時期、タグの定義によって異なり、端末の物理的な位置を正確に示すものではありません。動的IPアドレスや共有インフラを使うサービスでは、IP分類だけでは不十分な場合があります。ドメインルールと実際の接続記録も確認してください。
ドメイン名の集合GeoSiteと比較する →ルーティングとDNS · ドメイン名の集合
GeoSiteはルールから参照するドメイン名の集合です。サービス、用途、地域などの基準で分類でき、具体的なタグはデータの提供元によって異なります。使用前に、クライアントが対応するデータファイルを備えているか、現在のコアが照合対象のドメイン名を取得できるか確認してください。アプリがIPアドレスへ直接接続する場合や、ドメイン名の情報がない場合、新しいドメイン名がデータに含まれていない場合は、ルールに一致しなくてもプロキシ接続自体に問題があるとは限りません。
ルールの照合順序を確認する →ルーティングとDNS · 仮想アドレスの対応付け
FakeDNSはアプリに仮想IPアドレスを返し、コアが対応表からドメイン名を復元して後続の通信を処理します。TUNと組み合わせる設定でよく使われます。パブリックDNSサーバーのアドレスではなく、すべての名前解決方式を自動的に置き換えるものでもありません。クライアント終了後も、アプリやシステムに残った仮想アドレスのキャッシュがアクセスに影響する場合があります。無効にする際は、関連するキャッシュと通信の取り込み状態を確認してください。
DNSの経路に関する問題を確認する →SUBSCRIPTION / SERVER
サブスクリプションは設定の配布方式、ノードは1つの接続設定です。読み込みに成功しても、認証情報が有効で接続が確立したとは限りません。
サブスクリプションとノード · 設定の配布
サブスクリプションは通常、サーバー設定の一覧を取得するためのURLです。クライアントが更新すると、内容を読み込んで該当するグループを更新します。内容の変更や既存項目の削除が発生する場合があり、手動で加えた変更が維持されるかはクライアントの管理方式によって異なります。URLにアクセス用の認証情報が含まれることがあるため、パスワードと同様に扱ってください。トラブル対処のために情報を共有するときは、サブスクリプションのURL全体を送信しないでください。
サブスクリプションの読み込み手順を見る →サブスクリプションとノード · サーバー設定
ノードはクライアントで選択できるサーバー接続設定の1つで、通常はアドレス、ポート、プロトコル、認証情報、トランスポート方式、安全層のパラメーターが含まれます。一覧に表示される名前はメモにすぎず、実際のサーバー所在地や接続の出口と一致するとは限りません。ノードを切り替えてもシステムプロキシは自動的に有効になりません。ノードが選択されていること、コアが起動していること、アプリからウェブサイトにアクセスできることは、それぞれ別の状態です。
アプリの通信経路を確認する →サブスクリプションとノード · パラメーターの形式
共有リンクは、接続パラメーターを特定のURI形式で表します。一般的な例として、vmess://、vless://、ss://の形式があります。拡張項目の対応状況はクライアントによって異なるため、読み込み後にトランスポート、安全層、サーバー名が正しく設定されているか確認してください。リンクにパスワードやユーザーIDが含まれる場合があります。スクリーンショットやログの共有、質問をする前に認証情報を削除してください。
サブスクリプションとノード · 測定指標
遅延は特定のテストにかかる時間を表します。ICMPの往復時間、TCP接続の確立時間、プロキシ経由のリクエスト時間は、それぞれ別の指標です。ノードを比較する際は、同じ測定方法とテスト先を使い、時間帯もなるべくそろえてください。サーバーが特定のテストに応答しなくても、実際の通信に必ず失敗するとは限りません。遅延が小さくても、帯域幅が広い、または長時間接続が安定しているとは限りません。
実接続遅延の定義を見る →ENCRYPTION / SECURITY
安全層、サーバー名、名前解決の経路はそれぞれ個別に確認する必要があります。設定項目が有効になっていても、接続全体が想定どおりとは限りません。
暗号化と安全層 · 接続の保護
TLSは接続の暗号化と認証に使うトランスポート層のセキュリティプロトコルで、さまざまなプロキシプロトコルやトランスポート方式と組み合わせて使われます。設定時は証明書の有効性、サーバー名との一致、システム時刻の正確さを確認してください。「証明書の検証をスキップ」すると認証が弱まります。ハンドシェイクに失敗した場合は、検証のスキップを恒久的な対策にせず、まず証明書とサーバー名の設定を確認しましょう。
サーバー名SNIを見る →暗号化と安全層 · Xrayの方式
REALITYはXrayエコシステムのトランスポート層セキュリティ方式で、VLESSと組み合わせて使われることが多く、VLESSと完全に同じ層の代替プロトコルではありません。クライアントではサーバー設定に合わせてSNI、PublicKey、ShortId、必要に応じてFingerprintなどを指定します。Fingerprintはクライアントのハンドシェイクの特徴を表します。項目がすべて埋まっていても、値が正しいとは限りません。サンプルの公開鍵や任意のサーバー名を実際の接続に使うことはできません。
VLESSのプロトコル層と比較する →暗号化と安全層 · ハンドシェイク時のサーバー名
SNIはTLSハンドシェイクで接続先のサーバー名を示す拡張機能です。クライアントの画面では「サーバー名」やserverNameと表示される場合があります。接続アドレスとは別の項目です。接続アドレスはサーバーの特定に使い、サーバー名はハンドシェイクと認証の処理に使います。両者が一致しなくても必ずしも誤りではありませんが、任意の値に変更せず、サーバーの指定に従って証明書やREALITYのパラメーターとの対応を確認してください。
暗号化と安全層 · 名前解決の経路
DNSリークとは通常、ドメイン名の問い合わせが想定した名前解決経路から外れている状態です。指定した出口を経由して名前解決する設定なのに、システムのデフォルトのリゾルバーが使われるケースなどが該当します。ブラウザーのセキュアDNS、システムDNS、クライアントのDNS、ルーティング設定をあわせて確認してください。ウェブサイトへの接続元IPアドレスだけでは判断できません。ルールに従った直結の名前解決は必ずしもリークではなく、実際の名前解決経路が事前に定めた方針に沿っているかが重要です。
DNSのトラブル対処を見る →