Clashは契約サービスではなく通信管理ツール
Clashとは、インターネット通信をプロキシ経由で接続したり、接続先ごとに経路を振り分けたりするためのツールです。最初に理解しておきたいのは、Clashというアプリをインストールしただけで、通信に使えるサーバーや接続契約が自動的に付属するわけではないという点です。Clashは、すでに用意されているプロキシ情報を読み込み、ローカルの通信をその設定に従って転送します。
初心者が混乱しやすい理由は、「Clash」「アプリ」「契約」「購読」「ノード」という言葉が、同じサービスの機能のように紹介されることです。実際には、それぞれ役割が異なります。アプリは操作画面、コアは通信処理、契約サービスは接続先を提供する事業者、購読URLは設定を受け取る入口、ノードは実際に選択できる通信先です。
| 名称 | 役割 | 初心者向けの理解 |
|---|---|---|
| クライアント | 設定や通信状態を操作する画面 | FlClash、Clash Verge Revなどのアプリ |
| カーネル | ルールに従って通信を処理する実行エンジン | Clash、mihomoなど |
| 契約サービス | プロキシサーバーと設定情報を提供するサービス | 利用者が別途申し込む接続先 |
| 購読URL | ノードやルールをまとめた設定を取得するURL | アプリに貼り付けて更新するリンク |
| ノード | 実際に通信を中継する個別の接続先 | 東京、シンガポール、米国などの選択肢 |
アプリとカーネルは別の役割を持つ
FlClash、Clash Verge Rev、ClashX、Clash for Androidなどは、一般にクライアントと呼ばれるアプリです。設定の追加、購読の更新、プロキシの選択、システムプロキシのオン・オフ、ログの確認、TUNの有効化などを、画面から操作できるようにします。利用者が日常的に見るのはクライアントですが、実際に接続を確立してデータを転送するのは、その内部で動作するカーネルです。
カーネルは設定ファイルを読み込み、ローカルポートで通信を受け付けます。一般的な設定では、HTTPとSOCKSをまとめて扱う mixed-port: 7890 が使われます。アプリがシステムプロキシを有効にすると、ブラウザーなどの通信は通常 127.0.0.1:7890 に送られ、カーネルがルールを確認して直接接続するか、選択されたノードへ転送します。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
mixed-portは一般アプリが接続するプロキシポートであり、external-controllerはクライアントがカーネルの状態を操作するための管理用ポートです。この2つは用途が異なります。ブラウザーのプロキシ欄に 127.0.0.1:9090 を入力しても、通常のWeb通信ポートとしては利用できません。
現在のクライアントでmihomoが使われる理由
オリジナル版Clashは、HTTP、SOCKS、Shadowsocks、VMess、Trojanなどを含む基本的な設定体系を広めました。一方、公開保守が終了しているため、新しいプロトコルやOSのネットワーク仕様に対する継続的な対応は期待できません。Clash Metaから改名されたmihomoは、その設定体系との互換性を保ちながら、Hysteria2、TUIC、VLESS、WireGuard、ルールセット、DNS、TUNなどの機能を拡張しています。
ただし、クライアント名に「Clash」と書かれているからといって、必ず同じカーネルが動作しているとは限りません。アプリの設定画面やログで、実際に使用しているコアがClassic Clashなのか、mihomoなのかを確認してください。購読設定に proxy-providers、rule-providers、tun、Hysteria2などの項目が含まれている場合、対応するカーネルを選ばないと、読み込みエラーやノードの欠落が発生することがあります。
プロキシ契約・購読URL・ノードのつながり
プロキシ契約サービスは、利用者が通信に使うサーバーや、そのサーバーへ接続するための情報を提供します。契約後に発行される購読URLには、複数のノード、ノード名、プロキシグループ、ルール、DNS設定などがまとめられていることがあります。サービスによっては、Clash向け、mihomo向け、Sing-box向けなど、クライアントごとに異なる形式のURLを用意しています。
購読URLは、通常のWebページを閲覧するためのURLとは違います。アクセスすると、ブラウザー向けのHTMLではなく、YAML、Base64、またはクライアント用に生成された設定データが返されます。ログイン画面やエラーHTMLが返ってきた場合、URLにはアクセスできていても、Clashの設定としては利用できません。契約サービスの管理画面で「Clash」「Clash Meta」「mihomo」などと表示された形式を選び、対象クライアントに登録してください。
購読設定の中にある個々の接続先がノードです。たとえば「JP-Tokyo-01」「SG-02」「US-West」といった名前はノード名であり、国や都市はサーバーの設置地域を示すことが多い情報です。ただし、ノード名だけで速度や品質を判断することはできません。同じ地域名でも、回線混雑、サーバー負荷、経路、時間帯によって結果は変わります。
| 要素 | 提供または管理する場所 | 変更すると何が変わるか |
|---|---|---|
| 契約プラン | 契約サービスの管理画面 | 通信量、利用期限、同時接続数など |
| 購読URL | 契約サービスから発行 | 取得する設定やノードの一覧 |
| ノード | 購読設定に含まれる | 実際の接続先と経路 |
| プロキシグループ | 購読設定またはローカル設定 | 手動選択、自動選択、フォールバックなど |
| ルール | 設定ファイルやルールセット | ドメインごとの直接接続・プロキシ接続 |
初めて使うときの実践手順
初回設定では、いきなりTUNを有効にするより、まずシステムプロキシだけで基本動作を確認するほうが安全です。TUNはシステムプロキシを参照しないアプリや、より広い通信を取り込める一方、仮想ネットワークインターフェース、ルーティング、DNS、OS権限が関係するため、問題が起きたときの切り分けが難しくなります。
- 対応するクライアントをインストールする:使用するOSに対応したFlClashなどのクライアントを用意し、アプリの設定画面でカーネル名とバージョンを確認します。
- 購読URLを登録する:Profiles、設定、または購読管理の画面を開き、契約サービスから発行されたClashまたはmihomo用URLを追加します。
- 設定を更新する:HTTPステータス、取得時刻、ノード数を確認します。0件の場合は、URLの形式、期限、サービス側の対応形式を確認してください。
- プロキシグループを選択する:「自動選択」「手動選択」「DIRECT」などのグループから、最初は手動で1つのノードを選びます。
- カーネルを起動する:ログにポート競合、設定解析エラー、ノード認証エラーがないことを確認します。
- システムプロキシを有効にする:ブラウザーで確認し、問題がなければ必要に応じてTUNを試します。
ノードの接続テストに成功しても、すべてのWebサイトやアプリが自動的にプロキシ経由になるとは限りません。mode: ruleでは、ルールに一致した通信だけが指定されたプロキシグループへ送られます。ルールに一致しない通信の末尾に MATCH,DIRECT がある設定なら、未分類の通信は直接接続になります。すべてをプロキシ経由にしたい場合でも、契約サービスやネットワーク環境によって推奨設定が異なるため、意味を確認せずにルールを変更しないでください。
mode: rule
rules:
- DOMAIN-SUFFIX,example.com,Proxy
- GEOIP,LAN,DIRECT
- MATCH,Proxy
設定後は、まずプロキシグループの遅延テスト、ブラウザーでのページ表示、IPアドレス確認の順に試します。特定のサイトだけ開けない場合は、ノードそのもの、DNS、ルール、サイト側の制限を分けて確認します。接続テストの数値が低いことは、実際の動画再生や大容量ファイルの速度を保証するものではありません。
初心者がアプリを選ぶときの確認項目
アプリを選ぶときは、画面のデザインよりも、対応カーネル、購読URLの登録方法、システムプロキシの扱い、TUNの対応状況、ログの見やすさを確認してください。特に重要なのは、契約サービスが配布する設定形式と、アプリ内のカーネルが合っていることです。アプリが起動していても、設定を読み込むカーネルが機能不足であれば、一部のノードが表示されなかったり、設定全体が無効になったりします。
| 確認項目 | 見るべき内容 | 問題がある場合の例 |
|---|---|---|
| 対応OS | Windows、macOS、Androidなどの対応バージョン | インストールできてもTUNだけ使えない |
| カーネル | mihomo、Classic Clashなどの実装名 | 新しいプロトコルを読み込めない |
| 購読形式 | Clash、mihomo、汎用リンクなどの表記 | HTMLや共有リンクを設定として読み込んでしまう |
| ログ機能 | 起動、DNS、ルール、接続失敗の記録 | 原因が分からず設定を何度も変更する |
| TUN権限 | VPN構成やネットワーク拡張の許可方法 | システムプロキシでは動くがTUNでは通信できない |
初心者が最初から細かなYAML編集を行う必要はありません。まず購読設定を読み込み、1つのノードを手動で選び、システムプロキシで動作を確認します。その後、必要になった段階でルール、DNS、TUN、プロキシグループを個別に学ぶと、変更の影響範囲を把握しやすくなります。設定ファイルを編集する前には、元の購読設定とローカルの変更内容をバックアップしておきましょう。
導入前に知っておきたい誤解と注意点
「Clashを入れれば無料で通信できる」「ノード名が日本なら必ず速い」「TUNをオンにすればすべて解決する」といった説明は正確ではありません。Clashは通信を管理する仕組みであり、接続先の品質、利用規約、通信量、サーバーの混雑は契約サービスやネットワーク環境に左右されます。無料で配布されている設定や不明な購読URLには、通信内容の扱い、広告挿入、認証情報の漏えい、突然の停止などのリスクがあります。
また、プロキシを有効にしても、HTTPS通信の内容が無条件に安全になるわけではありません。接続先の証明書警告を無視したり、信頼できないアプリに購読URLを入力したりしないでください。Clashのログには接続先ドメイン、エラー、場合によってはURLの一部が表示されることがあります。トラブル解決のためにログを共有する場合は、購読トークン、ユーザー名、個人情報を削除してください。
設定更新に失敗した場合も、すぐにアプリを再インストールする必要はありません。まず購読URLの有効期限、HTTPステータス、レスポンスがClash設定になっているか、カーネルが対応しているかを確認します。アプリの再インストールでは、期限切れのURLや契約側の障害は解決しないためです。基本構造を理解すると、アプリの問題、契約サービスの問題、ノードの問題、DNSやルールの問題を分けて調べられるようになります。
Clashをこれから始める場合は、まず公式のダウンロードページで自分のOSに合うクライアントを確認し、インストール後は初期設定を確認してください。アプリ、カーネル、契約、購読URL、ノードの関係を順番に把握できれば、設定項目が増えても、どの層を確認すべきか判断しやすくなります。