VLESS Reality — ブロックできない理由と2026年の使い方
2023年、あるロシア人開発者がHabrに技術記事を公開した。その内容は、VLESS Realityが他の数百ものVPNサービスを無力化してきた手法では事実上ブロック不可能である理由を解説したものだった。この記事は199,000回ものビューを獲得した——VPNプロトコルの内部構造に踏み込んだ技術的な考察としては、驚くべき数字だ。これほどの注目を集めた理由は実用的なものだ。インターネット規制の下で生活している人々は、なぜ一部のツールが機能し続け、他のすべてが遮断されるのかを理解する必要があったのだ。
このガイドでは同じ内容を扱う。VLESS Realityとは何か、なぜ他のプロトコルが失敗するところで機能するのか、そしてどう使うのか。
問題の本質:ディープパケットインスペクション
VLESS Realityがなぜ重要なのかを理解するには、まず現代のインターネット規制が実際にどのように機能するかを理解する必要がある。
初期のインターネット規制はシンプルだった。特定のIPアドレスとドメイン名をブロックするというものだ。FacebookのIPがブロックされれば、Facebookにアクセスできない。この手法は実装も簡単で、VPNを使えば簡単に回避できた。
次世代のネットワーク規制——ロシア、イラン、中国、トルコなどで現在展開されている——はディープパケットインスペクション(DPI)を使用する。DPIはパケットの送信先を見るだけでなく、ネットワークトラフィックの実際の内容と構造をリアルタイムで分析する。
すべてのVPNプロトコルには特徴的なトラフィックパターン——フィンガープリント——がある。VPN接続が確立されるとき:
- OpenVPNは、特徴的なTLSハンドシェイクに続いて、認識可能なパターンを持つUDPまたはTCPトラフィックを行う
- WireGuardは独自の4メッセージハンドシェイクを持つUDPを使用する——パターンだけで自明に識別できる
- IPsec/IKEv2はRFCに文書化された標準化されたハンドシェイクを持ち、DPIシステムが正確に照合できる
- obfs4やShadowsocksなどの難読化プロトコルでさえ、時間の経過とともにフィンガープリントが取られてきた
DPIシステムがVPNトラフィックを特定すると、接続を完全にブロックしたり、使用不能な速度に絞ったり、アクティブプローブを起動して接続タイプを確認したりできる。
ロシアのTSPUハードウェア(すべての主要ISPに設置されている)と中国のグレートファイアウォールはどちらもこの手法を使用している。これが2026年時点でロシアで469以上のVPNサービスが事実上ブロックされている理由だ。プロバイダーがブロックされたのは、ロシアがIPアドレスのリストを入手したからではない——DPIシステムによってトラフィックがVPNトラフィックとして識別され、その後IPがブロックされたのだ。
標準的なVPNがこの戦いに負け続ける理由
NordVPN、Surfshark、ExpressVPN、そして事実上すべての主流の商用VPNは難読化機能に投資してきた——VPNを使用しているという事実を隠そうとするモードだ。NordVPNはそれを「Obfuscated Servers(難読化サーバー)」と呼び、Surfsharkは「Camouflage Mode(カモフラージュモード)」と呼んでいる。
これらの機能は、標準的なVPNトラフィックに見えにくくするために、VPNトラフィックを追加のレイヤー——通常はobfs4またはTLSラッパー——で包むことで機能する。基本的なパターンマッチングへの耐性は向上する。
しかし根本的な制限がある。難読化レイヤー自体がフィンガープリントを持つのだ。obfs4トラフィックはランダムデータのように見えるが、これ自体が異常だ——正当なインターネットトラフィックにはobfs4トラフィックが欠く構造がある。TLSラッパーは、ブラウザによる本物のTLS接続とは異なるオーバーヘッドパターンを追加する。
さらに重要なことに、規制当局は強力なアドバンテージを持っている:アクティブプローブを実行できるのだ。接続が疑わしく見えると、フィルタリングシステムはIPアドレスを積極的にプローブしてVPNサーバーかどうかを判断できる。細工されたパケットを送信して応答を分析するのだ。難読化されたVPNサーバーは、本物のウェブサーバーのように応答できない(VPNとして露呈する)か、誤った応答をする(同じ結果だ)。一度VPNサーバーとして識別されると、そのIPはブロックされる。
これは非対称な戦いだ。VPNプロバイダーは新しい難読化レイヤーを追加できるが、フィルタリングシステムは新しい検出器を開発できる。時間の経過とともに、ブロック組織はより多くのリソースを持ち、各難読化技術に対して一つの優れた検出器を開発するだけでよいため、勝利を収める。
VLESS Realityはこのダイナミクスを完全に打ち破る。
VLESS Realityとは何か?
VLESS RealityはV2Ray/XrayフレームワークにおけるVLESSプロトコルのトランスポート設定だ。フィルタリングシステムによるアクティブプローブへの耐性を持つよう、特別に設計されている。
Realityの核心にある洞察はこれだ:本物のトラフィックを模倣しようとする代わりに、実際の本物のトラフィックインフラを使用する。
技術的な仕組みはこうだ:
通常のTLSの問題
TLS暗号化を使用してVPNに接続するとき、TLSハンドシェイクには非標準であることを示す情報が含まれている。コンテンツが暗号化されていても、証明書は正当なサイトに接続するときにブラウザが見るものと異なり、ハンドシェイクパラメータがわずかに異なる場合があり、アクティブプローブはサーバーが本物のウェブサーバーのように動作しないことを明らかにする。
Realityがこれをどう解決するか
VLESS Realityは異なる方法で動作する:
1. サーバーは実際のサードパーティドメインを「カバー」として使用する——通常はwww.microsoft.com、www.apple.com、または主要なCDNのような大手サイトだ。これはServer Name Indication(SNI)と呼ばれる。
2. TLSハンドシェイク中、接続が正当なV2Rayクライアントからのものでない場合、サーバーはクライアントのトラフィックを実際の本物のドメインに転送する。正しいV2Rayクライアント認証情報を持たないフィルタリングシステムからのプローブは、MicrosoftまたはApple(あるいはどのドメインでも)の実際のサーバーから本物の応答を受け取ることになる。
3. 正しいUUIDとキーを持つ正当なクライアントの場合、接続が認識され、実際のVPNトラフィックが処理される。クライアントはカバードメインからの本物のTLS証明書を見る。正当なクライアント接続とその実際のサイトへのブラウザ接続との間に、TLSハンドシェイク自体の違いはない。
結果として:外部のあらゆるオブザーバーの視点——最も洗練されたDPIシステムやアクティブプローブインフラを含む——から見ると、VLESS Realityサーバーへの接続は、MicrosoftやApple、またはSNIとして使用されている正当なサイトへの接続と同一に見える。サーバーのTLS証明書は本物で、TLSパラメータは本物で、プローブされると正当なサイトからの本物のコンテンツを返す。
フィンガープリントを取られる追加のTLSラッパーはない。異常なトラフィックパターンはない。フィルタリングシステムが持っていないプライベートなV2Rayクライアントキーなしに、VLESS Reality接続と正当なHTTPS接続を区別する方法はない。
XTLS Vision Flow
Reality設定は通常xtls-rprx-visionフローを使用する。これはもう一つの洗練されたレイヤーを追加する:本物のブラウザトラフィックで見られる自然なばらつきに合わせてTLSレコードサイズをランダム化するのだ。ブラウザは完全に均一なパケットでデータを送信しない——コンテンツとブラウザの実装によって異なる方法でTLSレコードをフラグメント化する。VisionフローはこのTLSレコードの自然なばらつきを再現し、パケットサイズパターンに基づくトラフィック分析を無効にする。
NordVPNがブロックされてもVLESS Realityがブロックされない理由
規制のある国での実際の違いは明確だ:
NordVPNのアプローチ:
- WireGuardを使用する(DPIで簡単に識別される)
- 「難読化サーバー」は独自の難読化ラッピングを使用する
- サーバーは既知のIP範囲——識別されると一度にブロックできる
- アクティブプローブによりVPNサーバーとして露呈する(本物のウェブコンテンツを提供しない)
- 結果:ロシアへの展開から数週間以内、多くの場合数日以内にブロックされる
VLESS Realityのアプローチ:
- TLSハンドシェイクはカバードメイン(例:Microsoft)からの本物のものだ
- サーバー証明書は本物——カバードメインに属する
- アクティブプローブはカバードメインから本物のコンテンツを返す
- このトラフィックと本物のブラウザトラフィックの間に統計的な差異はない
- 結果:あらゆるレベルの分析において、通常のウェブトラフィックと区別がつかない
これはフィルタリングシステムが更新されると消えてしまう一時的なアドバンテージではない。Realityの根本的な性質——接続のフロントとして実際の本物のインフラを使用する——はトラフィック分析によって打ち破ることができない。なぜなら分析するものが何もないからだ。ブロックする唯一の方法は、カバーとして使用されている正当なドメイン(Microsoft、Appleなど)をブロックすることだが、機能するインターネット商取引を維持したい政府にとっては政治的にも技術的にも非現実的だ。
MegaVがVLESS Realityを使用する方法
MegaV VPNは規制地域のユーザーに対して、プライマリプロトコルとしてVLESS Realityを使用している。ロシア、イラン、中国から接続すると、MegaVは自動的に高可用性のカバードメインを指定したReality設定を使用する。
ISPの視点からは、MicrosoftまたはCDNに接続しているように見える。VPNトンネルは不可視だ。
MegaVはReality設定の複雑さを自動的に処理する:
- カバードメインの選択——MegaVは複数のカバードメインを使用し、あなたの地域に適したものを選択する
- サーバーのローテーション——サーバーIPがブロックされた場合(Realityではめったに起きないが、トラフィック分析ではなくIPレンジブロッキングによって発生する場合がある)、MegaVは自動的に新しいサーバーにルーティングする
- キー管理——UUID、公開鍵、ショートIDはアプリによって管理される——手動設定は不要だ
その結果、ユーザーは技術的な詳細を一切理解することなく、VLESS Realityのネットワーク規制耐性を得られる。
手動セットアップガイド
v2rayNG(Android)、Sing-Box、または別のV2Rayクライアントを使用してVLESS Realityを自分で設定する場合は、以下が設定構造だ:
必要な設定パラメータ
Protocol: VLESS
Address: [サーバーのIPまたはホスト名]
Port: 443
UUID: [あなたのユーザーUUID]
Flow: xtls-rprx-vision
Encryption: none
Network: tcp
TLS: reality
Reality Settings:
SNI: [カバードメイン、例:www.microsoft.com]
Fingerprint: chrome
Public Key: [サーバーのx25519公開鍵]
Short ID: [短いhex ID]
v2rayNGでのステップバイステップ
1. v2rayNGを開く → +をタップ → VLESSを選択
2. Address、Port、UUIDを入力する
3. Flowをxtls-rprx-visionに設定する
4. Networkをtcpに設定する
5. TLSをrealityに設定する
6. TLS settingsをタップして設定する:
- Server name (SNI):カバードメイン
- Fingerprint:chrome
- Public key:サーバーのx25519公開鍵
- Short ID:サーバー管理者から提供されたもの
7. 保存して接続する
Sing-Box(iOS / クロスプラットフォーム)でのステップバイステップ
Sing-BoxはJSON設定ファイルを使用する。関連するoutboundセクション:
{
"type": "vless",
"tag": "proxy",
"server": "YOUR_SERVER_IP",
"server_port": 443,
"uuid": "YOUR_UUID",
"flow": "xtls-rprx-vision",
"tls": {
"enabled": true,
"server_name": "www.microsoft.com",
"utls": {
"enabled": true,
"fingerprint": "chrome"
},
"reality": {
"enabled": true,
"public_key": "YOUR_PUBLIC_KEY",
"short_id": "YOUR_SHORT_ID"
}
}
}
YOUR_SERVER_IP、YOUR_UUID、YOUR_PUBLIC_KEY、YOUR_SHORT_IDをサーバープロバイダーからの値に置き換える。
Realityサーバーの生成(セルフホスティング)
自分のサーバーを運用したい上級ユーザー向けに、Xray-coreドキュメントにRealityサーバーの設定が記載されている。主なステップ:
1. 規制国外のVPS(Hetzner、DigitalOcean、Vultrなど)にXrayをインストールする
2. x25519キーペアを生成する:xray x25519
3. ショートIDを生成する:openssl rand -hex 4
4. config.jsonにRealityのinboundを設定する
5. ロシア/イランのIPに解決しない高トラフィックCDNを持つカバードメインを選択する
セルフホスティングは完全なコントロールを与えるが、継続的なサーバーメンテナンスが必要だ。MegaVのようなマネージドサービスは、運用上のオーバーヘッドなしに同じプロトコルを提供する。
VLESS Realityと他のプロトコルの比較
| プロトコル | DPI耐性 | アクティブプローブ耐性 | 速度 | 設定の複雑さ |
|---|---|---|---|---|
| WireGuard | なし | なし(VPNとして露呈) | 優秀 | 低 |
| OpenVPN + 難読化 | 低 | 低 | 良好 | 中 |
| Shadowsocks | 中 | 中 | 良好 | 低 |
| VLESS + TLS | 高 | 低 | 良好 | 中 |
| VLESS Reality | 最大 | 最大 | 良好 | 中〜高 |
VLESS Realityは、ネットワーク規制耐性トンネリングにおいて技術的に達成可能な現在の最高水準を代表する。規制当局が主要テクノロジー企業のドメインをブロックする意志を持つまで——それは実質的な副作用をもたらすだろう——VLESS Realityはあらゆる実用的なDPIベースのフィルタリングシステムに対して信頼性を維持し続ける。
まとめ
VLESS Realityは単なる別の難読化技術ではない。それは根本的に異なるアプローチだ:何か異常なことをしているという事実を隠そうとするのではなく、あなたのトラフィックを世界で最も一般的なウェブサイトへのアクセスと本当に区別がつかないものにする。すべてのアクティブプローブは本物のサーバーから本物のコンテンツを返す。すべてのTLS証明書は有効だ。すべてのトラフィックパターンは本物のブラウザの動作に一致する。
これが、数百もの他のVPNサービスが組織的にブロックされてきた中国、ロシア、イランで機能し続ける理由だ。