サブスクリプションには複数のプロトコルのノードが混在していることがよくあります。SS、VMess、Trojan……これらにはどんな違いがあり、どれを優先して使うべきなのでしょうか。この記事では5つの主要プロトコルを並べて比較し、読み終える頃には判断がつくようになります。
表で見る5つのプロトコルの違い
| プロトコル | 暗号化 | 偽装能力 | パフォーマンス負荷 | ひとこと評価 |
|---|---|---|---|---|
Shadowsocks |
AEAD対称暗号 | 弱い(暗号化通信の特徴が出やすい) | 非常に低い | 軽快でシンプルな老舗。プラグインと組み合わせれば今も主力級 |
VMess |
動的暗号を内蔵 | 中程度(WebSocket + TLSと組み合わせ可能) | 中程度 | V2Rayエコシステムの中核。機能は充実しているがやや重い |
VLESS |
自身は暗号化せず、TLSに依存 | 強い(Reality/XTLSと組み合わせた場合) | 低い | VMessを軽量化した後継。パフォーマンスに優れる |
Trojan |
TLSで全経路を暗号化 | 強い(見た目はただのHTTPS通信) | 低い | 雑踏に紛れる戦略が秀逸で、検知回避性能に優れる |
WireGuard |
モダンな暗号スイート | 弱い(UDPの特徴が目立つ) | 非常に低い | 速度の頂点だが特徴が目立ち、制限を受けやすい |
それぞれの特徴を詳しく見る
Shadowsocks:シンプルこそ美しい
最も古くから存在するプロトコルで、設計は極めてシンプルです。対称暗号を1層かけてそのまま転送するだけ。軽くて速く省電力で、モバイル端末では特に良好なパフォーマンスを発揮します。欠点は暗号化された通信そのものに「偽装」がないことで、長年使われている分、パターンを狙われやすくなっています。現代的な構成ではshadow-tlsやv2ray-pluginと組み合わせて偽装力を補うのが一般的です。
VMessとVLESS:同じ系譜
VMessはV2Rayの主力プロトコルで、ユーザー認証と動的暗号化を標準搭載しており、WebSocket + TLS + CDNという組み合わせで柔軟に使えます。一方VLESSは引き算の発想で、暗号化を外側のTLSに任せ、自身は認証と転送だけを担当することで、遅延とスループットの両方を改善しています。新しいノードで両方選べる場合はVLESSを優先しましょう。
Trojan:HTTPSに紛れ込む
Trojanの発想は巧妙です。新しいプロトコルを発明するのではなく、最もありふれたHTTPS通信をそのまま模倣します。外から見るとTrojanのノードは一般的なWebサーバーとほとんど区別がつかず、検知回避性能は5つの中でも最上位クラスです。代償として、ドメインと証明書が必須になるため構築の難易度は少し上がりますが、これはサービス提供元側の話であり、利用者側は特に意識する必要はありません。
WireGuard:速度優先
カーネルレベルで動作し、ハンドシェイクが非常に速く、接続の復帰も瞬時に行われるため、素の速度テストではほぼ常に1位になります。ただしUDP上で動作し特徴が目立つため、ネットワーク環境によってはQoSによる帯域制限やブロックの対象になることがあり、メインというよりは補助的な選択肢として向いています。
選び方のおすすめ
- 日常的なブラウジング:TrojanまたはVLESSを優先。安定していて検知回避性能も高いです。
- モバイル端末:Shadowsocksの省電力性が際立ち、電波状況が変わった際の復帰も速いです。
- 大容量ダウンロード:WireGuardまたはVLESS。スループットが最も高くなります。
- ネットワーク環境が厳しい場合:Trojan(443番ポートの「HTTPS」は単独で狙い撃ちしにくいです)。
Clashクライアントの設定では、異なるプロトコルのノードを同じプロキシグループに混在させ、url-testにその時点で最も調子の良いノードを自動選択させることができます。プロトコル論争は実際のデータに語らせましょう。
proxy-groups: - name: "自動選択" type: url-test proxies: [香港-Trojan, 東京-VLESS, シンガポール-SS, ロサンゼルス-WG] url: "http://www.gstatic.com/generate_204" interval: 300 tolerance: 50 # switch only when 50ms+ faster
サブスクリプション内の各ノードがどのプロトコルかを確認する方法
サブスクリプションを読み込むと、Clashクライアントは各ノードのプロトコル種別を自動で解析し、通常はノード名の横や詳細情報にラベル(ss / vmess / vless / trojan / wg)が表示されます。設定ファイルを手書きする場合は、ノードのtypeフィールドがそのままプロトコル名になるので、この記事の表と照らし合わせれば分類できます。複数のプロトコルが混在するサブスクリプションでも悩む必要はなく、すべて同じurl-testプロキシグループに入れて、自動速度テストに選ばせればよいのです。
proxies: - name: "香港-Trojan-01" type: trojan server: example.hk-node.com port: 443 password: "your-password" sni: example.hk-node.com # must match the cert's domain udp: true
よくある2つの誤解
- 「プロトコルは新しいほど良い」——VLESSはVMessより新しいプロトコルですが、サービス提供元の設定が雑(Reality/XTLSを組み合わせていないなど)であれば、丁寧にチューニングされたTrojanノードの方がよほど快適な場合もあります。プロトコルが決めるのはあくまで上限であり、実際の体感は構築の質で決まります。
- 「暗号強度が安全性を決める」——通常の利用シーンでは5つのプロトコルいずれも暗号強度は十分です。「狙われやすいかどうか」を本当に左右するのは偽装能力と通信の特徴であり、暗号アルゴリズムそのものの強さではありません。
したがってプロトコル選びでは「パラメータが強ければ強いほど良い」という発想にはまらず、自分のネットワーク環境と用途に合わせて考えるのが正解です。特に迷わないのであればTrojanかVLESSを選んでおけば、まず外れはありません。
プロトコル以外にも注目すべき要素
プロトコルの比較表だけを見てノードを選ぶのは、実は準備の半分にすぎません。実際の体感には他にもいくつかの要素が影響し、これらは意外と見落とされがちです。
- 回線の種類:同じTrojanプロトコルでも、帯域を占有する高品質な専用回線を使うか、複数ユーザーで共有する一般的な中継回線を使うかで体感は大きく変わります。専用回線は遅延が安定しやすくピーク時にも速度が落ちにくい一方、コストも高くなります。
- サービス提供元の構築品質:暗号パラメータやTLSフィンガープリントの偽装、証明書の設定といった細部の出来栄えが、ノードが狙われて制限を受けやすいかどうかを直接左右します。この部分は完全にサービス提供元の技術力次第で、利用者がノード名だけから判断するのは難しい部分です。
- 出口IPの「クリーンさ」:同じプロトコル、同じ回線であっても、出口IPが多数のユーザーに共有されていたり過去に悪用されていたりすると、一部のサービスでCAPTCHA表示が増えたり、アクセス制限を受けたりすることがあります。これはプロトコル自体とは関係のない問題です。
最後に:無理に覚え込む必要はない
プロトコルについてはおおまかに理解しておけば十分で、日常使いのたびに毎回どれを選ぶか悩む必要はありません。手元のノードをプロトコルごとに混在させたプロキシグループに入れ、自動速度テストに選ばせるのが実用的です。実際にあるノードの体感が悪ければ、そのまま別のノードに切り替える方が、プロトコルのパラメータを研究するより現実的です。この記事はあくまで基本的な判断の枠組みを提供するもので、サブスクリプションに見慣れないプロトコル名が出てきても戸惑わないようにするためのものです。
まとめ
5つのプロトコルにはそれぞれ得意分野があります。Shadowsocksは軽快で省電力、VMess/VLESSは機能が充実していて新旧の組み合わせに柔軟性があり、Trojanは検知回避性能に優れ、WireGuardは速度の頂点にある一方で特徴が目立ちます。日常的なブラウジングではTrojanかVLESSを優先し、モバイル端末ではShadowsocksも検討に値し、大容量ダウンロードにはWireGuardやVLESSを試してみるとよいでしょう。パラメータ表を丸暗記するより重要なのは、異なるプロトコルのノードを同じ自動速度テストのグループに混在させ、実際のパフォーマンスに判断させることです。結局、同じプロトコルでもサービス提供元によって構築の質はまったく異なるため、紙の上のパラメータはあくまで参考であり、唯一の判断基準にはならないのです。