Shadowsocks、VLESS、Trojan、Hysteria 2 は、どれも通信をリモートサーバ経由で送りますが、通信の隠し方が異なります。 Shadowsocks はすべてを見分けやすいパターンのないバイト列に暗号化し、Trojan と VLESS + REALITY は通信を TLS で包んで HTTPS に見せかけ、Hysteria 2 は HTTP/3 の土台である UDP ベースのプロトコル QUIC の上で動作します。どれが最適かは、ネットワーク環境、サーバ、プロバイダが提供しているものによって決まります。
このページでは、目にする機会の多い 7 つのプロトコルファミリーを 1 つの表で比較し、「こんな場合はこれを選ぶ」という短いアドバイスと、それぞれの詳しい解説や iPhone での設定ガイドへのリンクを紹介します。
プロキシ プロトコル比較一覧
| プロトコル | トランスポート | 暗号化 | 見え方 | UDP | 主な用途 |
|---|---|---|---|---|---|
| Shadowsocks | TCP、UDP | 独自の暗号方式(AEAD または 2022) | ランダムなバイト列、ハンドシェイクなし | 対応(ネイティブ) | シンプルな自前サーバ、幅広い対応 |
| VMess | TCP、または WebSocket / gRPC、TLS は任意 | 独自の暗号方式(AES-GCM、ChaCha20) | ランダムなバイト列、TLS 使用時は HTTPS | 対応 | 古い V2Ray 構成、CDN の背後 |
| VLESS(+ REALITY) | TCP、または WebSocket / gRPC / XHTTP | TLS または REALITY(独自の暗号化なし) | 実在のウェブサイトへの HTTPS | 対応 | 最新の Xray サーバ、REALITY ならドメイン不要 |
| Trojan | TCP + TLS、WebSocket / gRPC は任意 | TLS | HTTPS | 対応(TLS 経由) | 独自のドメインと証明書を持つサーバ |
| Hysteria 2 | UDP 上の QUIC | QUIC 内の TLS 1.3 | HTTP/3、難読化時はかく乱されたデータ | 対応(QUIC データグラム) | 長距離やパケットロスの多い回線 |
| AnyTLS | TCP + TLS | TLS とパディング | HTTPS | 対応(UDP over TCP) | TLS-in-TLS のサイズを隠す TLS プロキシ |
| SOCKS5 / HTTP | TCP(SOCKS5 は UDP も) | なし(TLS を使う場合を除く) | 素のプロキシ | SOCKS5 は対応、HTTP は非対応 | 信頼できるネットワーク、LAN、社内プロキシ |
表で使っている用語の補足です。
- トランスポートは、プロトコルが動作する土台です。TCP ベースのプロトコルは失われたパケットを順番どおりに再送します。QUIC はパケットロスを接続ごとに処理し、品質の悪い回線でもより早く回復します。
- 見え方は、ネットワーク上の観測者からおおよそどう見えるかです。HTTPS に見えると通信の特徴はつかまれにくくなりますが、見えなくなるわけではありません。
- UDP は、音声通話やビデオ通話、多くのゲーム、QUIC で重要です。Potatso を含む一部のクライアントでは、プロトコルによっては、オンにするまで UDP が初期状態でオフになっています。
Shadowsocks・VLESS・Trojan・Hysteria 2 を個別に比較
Shadowsocks
Shadowsocks は、共有パスワードと暗号方式で各接続を暗号化し、TCP または UDP でそのまま送ります。見分けやすいハンドシェイクがないことが強みですが、それが見破られる理由にもなります。何の特徴もない通信に見えるからです。最近のサーバは AEAD または 2022 の暗号方式を使います。オプションのプラグインで、難読化や ShadowTLS といった偽装を加えられます。
Shadowsocks とは?と iPhone で Shadowsocks を使う方法をお読みください。
VMess と VLESS
どちらも V2Ray ファミリーのプロトコルです。VMess は UUID にもとづく独自の暗号化と認証を持ちます。VLESS はその軽量な後継で、VMess の暗号化を省き、代わりに TLS や REALITY に任せます。REALITY を使うとサーバが実在のウェブサイトの TLS 証明書を借用できるためドメインが不要になり、Vision フローはプロキシされた HTTPS に現れる TLS-in-TLS のパターンを隠します。
VMess と VLESS の違い、VLESS Reality とは?、iPhone で VLESS Reality を設定する方法をお読みください。
Trojan
Trojan はパスワードを使って標準的な TLS 接続の中で動作するため、サーバのドメインへの HTTPS アクセスに見えます。シンプルで対応も広いものの、ドメインと有効な証明書、または REALITY が必要です。オプションの WebSocket や gRPC トランスポートを使えば、CDN の背後で動かせます。
Trojan プロキシとは?と iPhone で Trojan を使う方法をお読みください。
Hysteria 2
Hysteria 2 は QUIC の上で動作するため、パケットロスの多いネットワークでも速度を保て、多くの接続が 1 本の QUIC 接続を共有します。弱点は UDP そのものです。UDP を減速・遮断するネットワークがあり、ポートホッピングや、Salamander・Gecko による難読化はそのための機能です。
Hysteria 2 とは?と iPhone で Hysteria 2 を設定する方法をお読みください。
AnyTLS
AnyTLS は、anytls-go、sing-box、mihomo が対応する、比較的新しい TLS ベースのプロトコルです。Trojan と同じく、TLS の中でパスワードを使います。パディングを加えて TLS の中の TLS のパケットサイズを隠し、アイドル状態の TLS 接続を再利用してハンドシェイクを省きます。今のところ、ほかのプロトコルほど広くは提供されていません。
AnyTLS とは?と iPhone で AnyTLS を使う方法をお読みください。
SOCKS5 と HTTP
これらは汎用のプロキシプロトコルで、何かを隠すための設計ではありません。SOCKS5 over TLS や HTTPS プロキシを使わない限り、プロキシまでの接続は暗号化されません。いずれにしても、訪れる HTTPS サイトはエンドツーエンドで暗号化されたままです。HTTP プロキシが運べるのは TCP だけですが、SOCKS5 は UDP も中継できます。
SOCKS5 と HTTP プロキシの違いと iPhone で SOCKS5 プロキシを使う方法をお読みください。
2026 年のおすすめプロキシプロトコルは?
誰にとっても最適なものはありません。まずはサーバやプロバイダが対応しているものを確認し、そのうえで次を目安にしてください。
Shadowsocks を選ぶのは… いちばんシンプルに設定したい、1 行のスクリプトで自前のサーバを立てる、ほぼどのアプリでも使えるものが必要、という場合です。暗号方式は 2022 または AEAD を使ってください。
REALITY 付きの VLESS を選ぶのは… HTTPS に見える通信にしたいがドメインを持っていない、またはプロバイダが推奨している場合です。最新の Xray サーバでもっとも一般的な選択肢です。
Trojan を選ぶのは… 証明書付きのドメインを持っていて、シンプルで実績のある TLS プロキシを使いたい場合、またはサーバの前段に WebSocket で CDN を置きたい場合です。
Hysteria 2 を選ぶのは… サーバまでの接続が長距離であったりパケットロスが多かったりし、なおかつ自分のネットワークで UDP が問題なく使える場合です。
AnyTLS を選ぶのは… パスワードで認証する TLS プロキシを使いたく、サーバが sing-box、mihomo、anytls-go で動いていて、TLS の中の TLS のサイズのパターンを隠すことを重視する場合です。
VMess を選ぶのは… プロバイダが VMess しか提供していない場合です。新しいサーバなら、VLESS のほうが新しい選択肢です。
SOCKS5 や HTTP を選ぶのは… 自宅のラボやオフィスなど信頼できるネットワークにいる場合や、社内プロキシに接続する必要がある場合です。それ以外の場所では TLS 版を使いましょう。
複数のプロトコルが使えるなら:1 つに絞る必要はありません。サブスクリプションがあれば、異なるプロトコルのサーバを「フォールバック」や「最速」のグループにまとめておくと、アプリがその時点でいちばんうまく動くものを使います。
プロトコルより大事なこと
- サーバまでの経路:接続環境のよいネットワーク上にある、近くて混雑していないサーバのほうが、経路の悪い「速い」プロトコルより、たいてい速く快適です。
- 設定:暗号方式、サーバ名、証明書のピンを間違えれば、どのプロトコルも動きません。証明書の検証をオフにしたままだと、TLS ベースのプロトコルはどれも安全性が下がります。
- サーバソフトウェア:特定のサーバでしか動かない機能があります。たとえば、AnyTLS と REALITY の組み合わせは sing-box の機能です。
iPhone でこれらのプロトコルを使う
Potatso は、Mihomo/Clash 互換の iPhone・iPad 向け無料プロキシクライアントで、上で紹介したすべてのプロトコルに加え、ShadowsocksR と Snell にも対応しています。サーバは、共有リンク、QR コード、Clash や Mihomo のサブスクリプションから追加するか、手動で入力できます。
プロバイダから多数のサーバを含むサブスクリプションを受け取った場合は、まず プロキシのサブスクリプションとは?と iPhone に Clash サブスクリプションを読み込む方法をお読みください。各プロトコルで使えるすべての設定は、ドキュメントのプロトコルのリファレンス(VLESS、Trojan、Hysteria 2 など)をご覧ください。
よくある質問
- 2026 年に最適なプロキシプロトコルはどれですか?
- 唯一の正解はありません。普通の HTTPS に見える通信にしたいなら REALITY 付きの VLESS、Trojan、AnyTLS がよい選択肢で、長距離やパケットロスの多い回線では Hysteria 2 が強く、Shadowsocks はもっともシンプルで対応範囲も広いプロトコルです。どれが適しているかは、ネットワーク環境と、サーバやプロバイダが提供しているものによって決まります。
- VLESS は Shadowsocks より速いですか?
- 本質的に速いわけではありません。VLESS は独自の暗号化を持たずに TLS や REALITY に任せ、Shadowsocks は独自の暗号方式で暗号化しますが、どちらも最近のデバイスでは負荷が軽いです。実際には、プロトコルよりもサーバまでの経路やネットワーク環境のほうがはるかに影響します。
- いちばん検出されにくいプロキシプロトコルはどれですか?
- REALITY 付きの VLESS、Trojan、AnyTLS のように TLS の中で動作するプロトコルは、普通の HTTPS に見えるため、見分けやすいハンドシェイクを持たないプロトコルより特徴をつかまれにくくなります。ただし検出されないプロトコルはなく、どこまで通用するかはネットワークによって異なります。
- SOCKS5 は暗号化されていますか?
- されていません。素の SOCKS5 や HTTP プロキシは、プロキシまでの通信を暗号化しません。ただし HTTPS サイトはエンドツーエンドで暗号化されたままです。信頼できないネットワークでは、SOCKS5 over TLS や HTTPS プロキシ、または暗号化されたプロトコルを使ってください。
- UDP に対応しているプロトコルはどれですか?
- Shadowsocks、VMess、VLESS、Trojan、Hysteria 2、AnyTLS、SOCKS5 はいずれも、通話やゲームに必要な UDP を運べます。HTTP プロキシが運べるのは TCP だけです。この中で UDP そのものの上で動作するのは Hysteria 2 だけです。