プロキシプロトコル比較:SS・VMess・Trojan・VLESSの選び方

プロトコルとは何か

Clashのサブスクリプションを使用する際、Shadowsocks・VMess・Trojan・VLESSなどの名前をよく目にします。これらはClash独自の概念ではなく、プロキシプロトコルです。クライアントとリモートサーバーの間でどのように接続を確立するか、データをどのように暗号化するか、どのように転送をカプセル化するかを規定するものです。

プロトコルは「配送の梱包方式」と考えるとわかりやすいです。同じ荷物(あなたのネットワークトラフィック)でも、異なる梱包方法と輸送ルートを使えば、目的地への到達速度・安全性・検査を受ける確率が変わります。Clashはマルチプロトコルクライアントとして複数のプロトコルのノードを同時に管理でき、その上でルール分流・プロキシグループなどの高度な機能を提供します。

プロトコルの違いを理解することで、サブスクリプション内からより安定した・高速なノードを選びやすくなり、「同じプロバイダーでもプロトコルによって遅延が大きく異なる理由」や「なぜある回線が突然つながらなくなったのか」といった疑問も理解できるようになります。以下では主要なプロトコルの特徴と適用シーンを順に紹介します。

Shadowsocks(SS)

Shadowsocksは比較的早期に登場し、広く使われている軽量プロキシプロトコルです。その設計思想はシンプル・高効率:TCP/UDPレイヤーでトラフィックを暗号化・難読化し、実装コストが低く、クライアントとサーバー双方のリソース消費も少なめです。

メリット:ハンドシェイクが速くスループットが高く設定がシンプルで、2020年以前はプロキシサービスの主流の選択肢でした。多くの古参ユーザーはその安定性に良い印象を持っています。ClashのSSサポートは成熟しており、AEAD暗号化(aes-256-gcm・chacha20-ietf-poly1305など)のセキュアなアルゴリズムをサポートしています。

デメリット:トラフィックの特徴が比較的固定的で、DPI(ディープパケットインスペクション)環境で識別・妨害されやすいです。お使いのネットワークがSSを集中的にブロックしている場合、頻繁な切断や速度の急激な低下が起きることがあります。ネットワーク環境が比較的自由で、速度を最優先するシーンに適しています。

VMess(V2Rayエコシステム)

VMessはV2Rayプロジェクトのコアプロトコルで、設計目標は柔軟性・拡張性です。複数の転送方式(TCP・mKCP・WebSocket・gRPCなど)をサポートし、TLS・CDNと組み合わせることで、プロキシトラフィックを通常のHTTPSやCDNアクセスのように見せかけることができます。

典型的な組み合わせはVMess + WebSocket + TLS + CDNです:トラフィックがCloudflareなどのCDN経由で中継され、サーバーのIPが隠蔽され、検閲回避能力が著しく向上します。プロキシサービスは厳格な検閲への対策としてこの方法をよく採用しています。

デメリットとして、設定が複雑でハンドシェイクのオーバーヘッドがやや大きく、サーバーとクライアントのパフォーマンスへの要求が高めです。Clash MetaコアはVMessおよびV2Rayエコシステムを十分にサポートしています。柔軟な偽装やCDN接続が必要な上級ユーザー、またはプロバイダーの提供する「プレミアム回線」に適しています。

Trojan

Trojanのコアアイデアは通常のHTTPSトラフィックに偽装することです。TLSプロトコルをそのまま再利用することで、プロキシ接続のトラフィック特徴が普通のウェブサイトへのアクセスとほぼ区別がつかなくなります。通常のHTTPSを誤検知せずに正確に識別することが難しいため、検閲回避能力に優れています。

Trojanにはドメイン名と有効なTLS証書(通常Let's Encryptなどの無料発行)が必要で、設定の敷居は中程度です。独自プロトコルのカプセル化が一層少ない分、VMessよりも遅延が低い傾向があります。多くの高品質なプロキシサービスでTrojanが主力プロトコルとして採用されており、特に香港・日本・シンガポールなどの低遅延ノードで安定したパフォーマンスを発揮します。

ブロックが厳しく長期的な安定性を求めるユーザーに適しています。サブスクリプションにTrojanノードがあり速度テストの結果が良好なら、優先的に試してみてください。

VLESSとXTLS / Reality

VLESSはV2Rayの進化版で、VMessにあった一部の冗長な暗号化レイヤーを取り除き、暗号化の責務をTLSに委ねることでコアをより軽量にしています。XTLS技術と組み合わせることで、TLSレイヤーでのストリーム処理が可能になり、CPUオーバーヘッドをさらに削減してスループットを向上させます。高帯域幅のシーンに適しています。

Realityは近年注目されている検閲回避ソリューションです:独自のドメインや証書を用意する必要がなく、実在するウェブサイトのTLSハンドシェイク特徴を「借用」することで、トラフィックを有名サイト(microsoft.comなど)へのアクセスと区別がつかないようにします。設定の敷居はやや高いですが、検閲回避能力が非常に優れており、多くの新しいプロキシサービスで優先的に採用されています。

Clash MetaはVLESS + XTLS・VLESS + Realityを十分にサポートしています。使用するクライアントとサブスクリプションが対応している場合は、これらの新しいプロトコルのノードを優先的に試してみてください。

一般ユーザーとして、プロトコルの詳細に深入りする必要は通常ありません。プロバイダーのサブスクリプション内で速度テストが最も良く安定しているノードをそのまま使えばOKです。プロトコルの選択と最適化は主にプロバイダーの責務であり、ユーザーのタスクは速度テスト・ノード選択・サービスの享受です。

転送レイヤーと偽装

プロトコル自体に加えて、転送方式も体験に影響します。WebSocket(WS)はファイアウォールの通過やCDN接続に便利です。gRPCはHTTP/2ベースで多重化パフォーマンスが優れています。TCP直接接続が最もシンプルですが妨害を受けやすいです。TLS暗号化はHTTPS偽装の基盤であり、必ず有効にすべきです。

Clash設定のnetworkws-optstlsなどのフィールドはこれらの転送パラメータを記述しています。サブスクリプションのインポート後はこれらは通常すでに設定済みであり、ユーザーが手動で変更する必要はありません。転送レイヤーを理解することで、「なぜWS+TLSノードは遅延がやや高いが検閲に強いのか」「なぜgRPCは多重接続シーンでリソース効率が良いのか」といった現象が理解でき、特定のサイトへのアクセス異常が発生した際にもより的確にトラブルシューティングできます。

どう選べばいいか

絶対に「最高」なプロトコルはありません。現在のネットワーク環境に最も適した方案を選ぶことが重要です。以下の原則を参考にしてください:

  • 速度を重視、環境が自由:Shadowsocksはシンプル・高効率で遅延が低いです。
  • CDN偽装が必要、柔軟な組み合わせ:VMess + WS + TLSがより柔軟です。
  • ブロックが厳しく長期安定性が必要:TrojanまたはVLESS + Realityが検閲回避能力に優れています。
  • 高帯域幅・低CPU:VLESS + XTLSがスループット性能に優れています。

実際の使用では、クライアントでサブスクリプション内の各プロトコルのノードをワンクリック速度テストし、遅延が低くパケットロスが少ない回線を選ぶことをお勧めします。同じプロトコルでも異なるノード・異なる地域で性能差が大きく、速度テストの結果がプロトコルのパラメータを暗記するより信頼性があります。あるプロトコルが全面的にタイムアウトになる場合、ローカルネットワークがそのプロトコルを集中的に妨害している可能性があります。他のプロトコルに切り替えるか、プロバイダーのサポートに連絡してください。また、Clash Metaコアは新しいプロトコルへのサポート更新が速く、MetaベースのクライアントClash Verge Revを使うことでVLESS・Realityなどの新方式のメリットをより活かせます。

プロトコルとノードの関係

ノードを選ぶ際、プロトコルは参考要素の一つに過ぎません。遅延・安定性・帯域幅こそが日常体験の主要指標です。ネットワーク環境の変化に合わせて、プロバイダーも回線プロトコルをアップグレードしていきます。クライアントを最新の状態に保ち、定期的に速度テストを行うことで、常に最良の体験を得られます。プロバイダーを選ぶ際は、TrojanやVLESSなどの新しいプロトコルを提供し、ノードのカバレッジが広いサービスを優先的に選ぶと、長期的な柔軟性が高まります。

Clashを始める準備はできていますか?

Clash公式サイトから無料クライアントをダウンロードして、サブスクリプションをインポートするだけ。Windows・macOS・Android・iOS・Linuxに対応し、数分で使い始められます。

ブログ一覧に戻る