Clashのサブスクリプション形式を解説:Base64ノードリスト・YAML設定・共有リンクの違い
Clashを使ってみたいけれど、VPNやプロキシ、サブスクリプションとの違いがわからない方へ。各サービスの役割を身近な例で解説し、通信を振り分けるルールやクライアントの選び方、公式配布元を確認するポイントまで紹介します。初めての設定前に知っておきたい基本をまとめました。
ClashとVPNは別のもの:アプリ、通信方式、サービスを整理する
Clashを使い始めると、接続ボタンやAndroidのVPNアイコンを見て「ClashはVPNなのか」と疑問に思うことがあります。結論から言うと、Clashは一般に、プロキシ接続や通信ルールを管理するクライアントです。VPNそのものや、接続先サーバーを提供する契約サービスと同じものではありません。画面上の表示が似ていても、それぞれが担う役割を分けて考えると、設定やトラブルの原因を見分けやすくなります。
Clashという名前は、クライアントアプリを指す場合と、設定やコアを含む仕組み全体を指す場合があります。現在のクライアントでは、mihomoコアを利用するものもあります。クライアントは設定を読み込み、プロキシノード、ポリシーグループ、ルールなどに従って通信を処理します。つまり、Clashをインストールしただけで利用可能な接続先が自動的に用意されるわけではありません。
- Clashクライアント:設定の読み込み、ノードやポリシーの選択、通信の振り分け、接続ログの確認などを行うソフトウェアです。
- mihomoなどのコア:ノードのプロトコルや設定を解釈し、実際のプロキシ接続やルール処理を行います。対応する設定形式や機能は、コアの種類とバージョンによって異なります。
- プロキシサービスの事業者:ノードの接続情報やサブスクリプションを提供します。利用できるノード、期限、通信量などは契約内容によって変わります。
- VPNサービス:事業者がVPNサーバーと接続手段を提供し、対応クライアントがVPN接続を確立するサービスです。Clashのサブスクリプションと同じ仕組みとは限りません。
プロキシ事業者が「VPN」と案内していても、実際の接続がどの方式で提供されるかはサービスごとに異なります。名称だけで判断せず、利用できるアプリ、対応プロトコル、対象端末、通信ログの扱いなどを確認してください。
通信経路の違い:アプリのプロキシ設定とVPNトンネル
一般的なプロキシ接続では、対応するアプリが指定されたプロキシ入口へ通信を渡します。たとえば、デスクトップのClashが127.0.0.1:7890で待ち受け、ブラウザーがそのアドレスを使う設定になっていれば、ブラウザーの対象通信をClashへ送れます。ただし、端末内のすべてのアプリが同じ設定に従うとは限りません。アプリ独自の通信処理や独自プロキシ設定によって、Clashを経由しない場合があります。
VPNは通常、OSの仮想ネットワークインターフェースやルーティング機能を使い、端末の通信をVPN接続へ送ります。どの通信が対象になるかは、OS、VPNアプリ、分割トンネル設定などによって異なります。また、「VPN接続中」と表示されても、通信のすべてが必ずリモートサーバー経由になるとは限りません。対象外のアプリや直接接続に設定された通信がある場合は、端末から直接送信されることがあります。
| 比較項目 | Clashの一般的な利用 | 一般的なVPN接続 |
|---|---|---|
| 主な役割 | プロキシノードとルールを管理し、通信経路を選択 | 端末とVPNサーバー間のトンネル接続を確立 |
| 通信の取り込み | システムプロキシ、アプリ設定、またはTUNなどを利用 | OSのVPN機能や専用アプリからVPN経路へ送信 |
| 経路の選択 | ルールによりプロキシグループ、DIRECT、拒否などを選択 | VPNアプリやサービス側の設定により、対象通信や出口を選択 |
| 接続先の用意 | ノード情報を含む設定やサブスクリプションが必要な場合が多い | VPNサービスのアカウントや接続設定が必要な場合が多い |
| 暗号化の範囲 | ノードのプロトコルや設定によって異なる | VPNトンネルの方式と接続設定によって異なる |
ClashのTUNモードは、仮想ネットワークインターフェースなどを使って、通常のアプリプロキシ設定では取り込めない通信を処理するための機能です。TUNを有効にすると、ClashがVPNに変わるわけではありません。取り込まれた通信は、引き続きClashやmihomoの設定、ルール、ポリシーグループに従って処理されます。動作には管理者権限やOS側の許可が必要な場合があり、クライアントごとに設定方法も異なります。
サブスクリプションは接続先の情報:Clashとの関係
サブスクリプションは、通常、事業者からノード情報や設定を取得するためのURLです。クライアントがURLからデータを取得し、形式を解析して設定に登録します。サブスクリプションはClash本体でもVPN接続そのものでもなく、接続先や設定を受け取るための入口です。URLがあるだけで通信が開始されるわけではなく、クライアントの対応形式、コアの対応プロトコル、有効な契約状態などが関係します。
取得データには、ノードの一覧だけが含まれる場合もあれば、プロキシグループ、ルール、DNS設定を含むYAML設定一式が含まれる場合もあります。ノード一覧を読み込めても、最終的にどのノードを使うかを決めるポリシーグループや、通信を振り分けるルールが別途必要なことがあります。読み込みエラーが出た場合は、URLの拡張子だけで判断せず、クライアントのログと提供元の説明で、データ形式と対象クライアントを確認してください。
- 契約先の案内で、Clash、mihomo、または利用するクライアント向けの形式が提供されているか確認します。
- クライアントのインポート機能で登録し、取得結果にノードや設定が表示されるかを確認します。
- ポリシーグループに利用可能なノードがあるか確認し、目的に応じてノードを選択します。
- ログに認証失敗、期限切れ、形式の解析エラーがないか確認してから、対象のサイトやアプリで接続を試します。
サブスクリプションURLには、アカウントを識別するトークンや更新用の認証情報が含まれる場合があります。URL、QRコード、設定ファイル、ログを公開すると、第三者に接続情報を利用されるおそれがあります。問い合わせ用のスクリーンショットを作るときは、URL、パスワード、UUIDなどを隠してください。漏えいが疑われる場合は、提供元の管理画面でURLを再発行するか、サポート窓口に相談します。
用途に合わせた選び方と安全なダウンロード
「どちらが優れているか」ではなく、必要な機能と使う端末から選びます。アプリ別のルーティング、複数ノードの切り替え、ドメインやIPに応じた細かなルールが必要なら、対応するClash系クライアントと設定が候補になります。端末の通信を一括してVPN経路に送ることを重視する場合は、OSに対応したVPNサービスと公式クライアントが分かりやすい選択肢です。どちらの場合も、アプリの対応範囲、プライバシー方針、事業者の信頼性、利用規約を確認してください。
- WindowsやmacOSでルールを調整したい:使用するOSとCPUに対応し、必要なコアを含むクライアントを選びます。設定画面にある「システムプロキシ」と「TUN」は別の機能なので、目的に合う方だけを有効にしてください。
- Androidで端末の通信を取り込みたい:クライアントがAndroidのVpnServiceを利用するか確認します。VPNの許可はOSがアプリに仮想接続を作ることを認めるもので、サブスクリプションの認証とは別です。
- 特定のアプリだけを通したい:対象アプリがシステムプロキシやVPNアプリのアプリ別設定に従うかを確認します。アプリによっては独自の通信経路を使います。
- 設定に詳しくない:公式の手順があり、利用中のサービスが対応クライアントを明示している方式から始めます。TUNやDNSを一度に変更せず、ひとつずつ設定して結果を確認してください。
クライアントは、開発元や配布元が明確な公式サイト、正規のアプリストアなど、信頼できる入手先からダウンロードします。検索結果に表示された広告、第三者の再配布サイト、出所が不明なインストーラーには注意してください。ダウンロードページでは、OSとCPUアーキテクチャ、バージョン、署名やハッシュの確認手段を確認します。インストール時に、不要な拡張機能や証明書、セキュリティ機能の無効化を求められた場合は、続行する前に配布元と必要性を確かめてください。
Clash系クライアントを選ぶ場合は、製品名だけでなく、現在の更新状況、利用するコア、設定形式の対応状況も確認しましょう。「Clash」と名乗るすべてのアプリが同じ開発元、同じ機能、同じ安全性を持つわけではありません。サービスから提供された設定を使う前に、どのアプリ向けに案内されたものかを照合し、必要以上の権限を付与しないことも重要です。
対応するクライアントを探すときは、利用端末に合う配布先を確認してください。