mihomoコア · オープンソースクライアント

Clash クライアント/ダウンロードと設定

Clash百科では、OSに合ったクライアントを選び、サブスクリプションの読み込み、ルールによる振り分け、mihomoの設定を確認できます。

オープンソースコア日本語設定ガイド実際のルール構文

OS・ルール・コア

クライアントは操作画面を、コアは接続とルールの処理を担います。まず役割の違いを把握してから、インストールするアプリと設定方法を選びましょう。

5つのOS使用するデバイスから選択Desktop / Mobile / Linux
ルールモード最初に一致したルールを適用rules → policy
mihomoオープンソースのプロキシコアconfig.yaml / GPL-3.0

CLIENT / PLATFORM

Clash クライアントのダウンロード先

まずOSとCPUアーキテクチャを確認し、クライアントを比較しましょう。ダウンロードページでは、OSごとの入手先、対応条件、配布状況を案内しています。このページからインストーラーへ直接リンクすることはありません。

Windows

まずClash Plusを確認し、Clash Verge Rev、FlClash、Clash Nyanpasuと比較しましょう。初回接続では、設定を読み込んでシステムプロキシを有効にするのが一般的です。システムプロキシを使わないアプリの通信も取り込みたい場合は、TUNを検討してください。ダウンロード前に、システム設定の「情報」でCPUの種類を確認しましょう。パソコンのメーカー名だけでアーキテクチャを判断しないでください。

ダウンロード

macOS

Apple SiliconとIntelでは、対応するインストーラーが異なります。Clash Plus、Clash Verge Rev、FlClashを比較し、ClashX Metaはアーカイブ版として確認できます。まず「このMacについて」でチップを確認し、クライアントの案内に沿ってネットワーク権限を設定してください。インストール後は、現在使用中のネットワークサービスのプロキシ設定を確認し、以前のクライアントの設定が接続に影響していないか確認しましょう。

ダウンロード

Android

Clash Plus、Clash Meta for Android、FlClash、Surfboardを比較できます。スマートフォンでは通常、システムのVPN権限を使って通信を取り込みます。ブラウザーのプロキシを設定するデスクトップとは手順が異なります。初回起動時に権限を許可してから、設定とプロキシグループを選びましょう。画面ロック後に接続が切れる場合は、バッテリー最適化とバックグラウンド実行の制限を確認してください。クライアントによって対応する設定形式は異なります。

ダウンロード

iOS

ダウンロードページからClash PlusのApp Storeページと公式サイトclashplus.ioにアクセスできます。インストール後、アプリの案内に従って設定を読み込み、VPN構成の追加を許可してください。接続できない場合は、まずサブスクリプションの内容がアプリに対応しているか確認し、次にプロキシグループの選択とシステムVPNの状態を確認しましょう。デスクトップ版のサービスインストール、待ち受けポート、ファイアウォールの設定をそのまま流用しないでください。

ダウンロード

Linux

デスクトップ環境ではClash Verge RevとFlClashを比較できます。まずディストリビューションに合ったパッケージ形式を確認し、次にCPUアーキテクチャを確認してください。サーバーやルーターなどでは、mihomoコアを直接使うことが多く、設定ディレクトリ、プロセス権限、サービスの起動を自分で管理する必要があります。端末上のアプリがデスクトップ環境のシステムプロキシを参照するとは限りません。各アプリのドキュメントを確認し、プロキシ環境変数を設定するか、プロキシアドレスを明示してください。

ダウンロード

CONFIG / GLOSSARY

Clash 設定用語ブラウザー

まず通信がどのようにコアへ届くのかを把握し、次にルールが出口をどう選ぶのかを確認しましょう。以下の断片は各項目の説明用であり、単独で動作する完全な設定ではありません。Proxyは別途定義が必要なプロキシグループの例です。

ルールによる振り分け:条件に応じて接続先を選ぶ

ルールによる振り分けでは、接続ごとに異なる出口を選べます。設定ファイルのrulesリストには、ドメインの末尾やキーワード、接続先アドレスなどの条件を指定できます。コアは上から順に確認し、最初に一致したルールで処理を決めます。それ以降のルールは判定されません。ルールとプロキシグループは役割が異なります。ルールは接続をどのグループに渡すかを決め、プロキシグループは実際に使うノードを決めます。細かく指定したいドメインは、範囲の広いルールより前に置きましょう。MATCHは通常、末尾に配置します。問題を調べるときは、接続ログで適用されたルールを確認してから、順序を変えるかグループ内の選択を見直してください。

config.yaml · rules
mode: rule
rules:
  - DOMAIN-SUFFIX,github.com,Proxy
  - DOMAIN-KEYWORD,adservice,REJECT
  - GEOIP,CN,DIRECT
  - MATCH,Proxy
関連記事を読む →

クリックするかキーボードでフォーカスすると自動閲覧が停止します。矢印キーで用語を切り替え、HomeとEndで先頭または末尾に移動します。

SOURCE / PRACTICE

オープンソースのエコシステムと設定の根拠

Clash百科は、クライアントの入手先と設定方法を紹介するサイトです。コアの機能はプロジェクトのドキュメントを、画面操作は利用するクライアントの案内を基準にしてください。名前の似たクライアントでも、設定項目やメンテナンス状況、必要な権限が同じとは限りません。

Clash、Clash Meta、mihomoの関係

Clashでは当初、YAML設定、プロキシグループ、ルールによる振り分けを中心とした使い方が広まりました。オリジナルのプロジェクトがメンテナンスを終了した後も、互換性のあるエコシステムはコミュニティで発展を続けています。mihomoはClash Metaのプロジェクト路線を引き継ぎ、プロキシプロトコル、ルールセット、ドメインスニッフィング、ネットワークへの接続方式などを継続的に進化させています。そのため、古いガイドにあるClash Metaと現在のドキュメントに記載されたmihomoは、同じコアの開発系譜を指すことがよくあります。ただし、古い設定項目がすべて現行の実装でも使えるとは限りません。

クライアントは画面を備えたアプリで、コアはネットワーク接続を実際に処理するプログラムです。クライアントには特定のコアが組み込まれている場合もあれば、ユーザーがコアを変更できる場合もあります。機能が使えるか判断するには、コアが対応しているか、クライアントに設定項目が用意されているか、利用中のOSで必要な権限を得られるかを確認する必要があります。アプリ名だけでは実行環境が分からず、設定がそのまま使えるか判断できないことがほとんどです。iOSなどには独自のネットワーク接続方式があるため、デスクトップ版の仕組みをそのまま当てはめないでください。

公開ドキュメントで設定項目を確認する

設定項目を確認するときは、まずmihomoの設定ドキュメントを参照し、次にmihomoのソースコードリポジトリで解説やリリース情報、課題の議論を確認してください。公開ソースコードは実装の理解や問題の切り分けに役立ちますが、すべてのGUIクライアントで同じ名前の設定項目が使えるとは限りません。当サイトでは、よく使う概念を用語ごとに解説し、設定全体の手順は応用マニュアルにまとめています。画面上の操作手順と内部パラメーターを、ひとつの固定手順として混同しないためです。

サンプルを読むときは、完全な設定ファイルと部分的な記述を区別してください。rulesで指定するプロキシ名は設定内で定義されている必要があります。rule-providersが参照するファイルは実際に存在しなければなりません。DNSの待ち受けポートと制御インターフェースのポートは、他のプログラムと競合しないようにしてください。YAMLの階層はスペースで表し、インデントにタブを使わないでください。保存前にクライアントの設定チェック機能を実行し、再読み込み後にログで成功したことを確認しましょう。画面に古い設定が表示される場合は、同じリンクを何度も読み込むのではなく、現在有効な設定を確認してください。

設定更新とローカル変更の使い分け

アプリ、コア、サブスクリプションの更新は、それぞれ異なる部分に影響します。アプリの更新では画面やサービスコンポーネントが変わる場合があり、コアの更新ではプロトコルの実装や設定項目の動作が変わる場合があります。サブスクリプションの更新ではサーバーやプロキシグループ、ルールが置き換わることがあります。アップグレード前に現在使える設定とローカルオーバーライドを保存し、関連するリリースノートを確認しましょう。アップグレード後は、まず従来の接続を確認してから新機能をひとつずつ有効にしてください。「サブスクリプションの更新成功」はサーバーの稼働を保証せず、「インストール完了」はシステムプロキシがすべてのアプリの通信を取り込んだことを意味しません。

継続して使う場合は、サブスクリプションでリモートの設定を管理し、ローカルオーバーライドで個別の要望を反映する方法がおすすめです。たとえば、少数の業務用ドメインだけにルールを追加したり、ローカルの待ち受けアドレスやDNS設定を保持したりできます。オーバーライドやマージの方法、適用順はクライアントごとに異なります。エディター上の一部分だけで判断せず、最終的に生成された設定を確認してください。複数のサブスクリプションを統合する場合は、名前が重複するプロキシグループ、重複ルール、出口の依存関係にも対処が必要です。詳しい手順は設定応用マニュアルで解説しています。初回接続時にまとめて設定するのは避けましょう。

接続ログから問題を切り分ける

「インターネットに接続できない」という問題は、まず通信の取り込み、名前解決、ルール判定、出口の4段階に分けて考えましょう。ブラウザーがシステムプロキシを参照しているか、コアが接続を認識しているか、ドメインが想定どおりに解決されているか、どのプロキシが選ばれたかを確認すると、設定を何度も変えるより効率的に原因を絞れます。コアに接続ログがない場合は、まず通信の取り込み方法を確認してください。ログはあるもののプロキシの選択が誤っている場合は、ルールの順序とグループ内の選択を確認します。選択が正しいのに接続できない場合は、サブスクリプションの状態、ノードのプロトコル、出口ネットワークを調べましょう。原因を特定するため、設定は一度にひとつだけ変更してください。

レイテンシテストの結果は、特定の測定先、プロトコル、測定時のネットワーク状況を反映するもので、実際の用途での動作確認に代わるものではありません。Webページ、動画、コマンドラインツールでは、DNSや接続の再利用方法、通信プロトコルが異なる場合があります。動作確認では、まず対象アプリをひとつ決め、接続ログを見てから、出口がルールの想定どおりかを確認してください。調査内容を共有するときは、エラーの種類と必要な項目だけを残し、サブスクリプションURLのアクセス情報、サーバーのパスワード、個人を特定できるネットワーク情報を削除しましょう。具体的な手順はよくある質問から確認できます。

初回利用時の設定手順

有効なサブスクリプションをお持ちの場合は、まずOSとCPUアーキテクチャに合ったクライアントをインストールし、設定画面からサブスクリプションを読み込んで現在の設定に選びます。次にRuleモードを選び、実際に使うプロキシグループでノードを選択してから、システムプロキシまたはモバイルのVPN接続を有効にしてください。まず普段使うアプリが接続できるか確認し、その後ルールが想定どおりかを調べます。この順序なら、設定の有効性、通信の取り込み、出口の選択を個別に確認でき、問題が起きたときもどの段階で止まったか判断しやすくなります。ネットワーク設定をすべて一度に有効にして、ひとつずつ原因を推測する必要はありません。

対象アプリがシステムプロキシに従わない場合や、より広い範囲の通信を取り込む必要がある場合に限り、TUNを検討してください。有効にする前に、ルートを変更する可能性のある他のVPNを終了し、現在のDNSとプロキシ設定を記録します。クライアントの案内に従ってサービスをインストールするか、必要な権限を付与してください。ネットワークに問題が起きたら、直前の変更を取り消し、動作が確認できている状態に戻しましょう。使い方ガイドでは、読み込み、選択、通信の取り込み、動作確認までを順に解説しています。用語の確認には用語集をご利用ください。どちらも応用マニュアルとは役割が異なります。

NOTES / RECENT

Clashの設定記事

よくある操作から具体的な設定項目まで解説します。ノードを選ぶ際は測定結果の意味を理解し、設定を移行する際はコアの違いを確認しましょう。初めて使う場合は、サブスクリプションとプロキシモードから始めてください。

LinuxのペンギンアイコンはFont Awesomeに由来し、CC BY 4.0ライセンスに基づいて使用しています。各OSのアイコンは、ダウンロード先を示すために使用しています。