オープンソースコア mihomo · 各プラットフォームのクライアントを随時更新

Clash公式サイト · クライアントダウンロード

OSに合ったクライアントを選び、サブスクリプションを取り込み、ルールによる振り分けとプロキシグループを設定します。

  • 完全無料
  • オープンソース
  • 中国語ドキュメント

CONFIGURATION / 設定の概要

Clashの設定と通信の振り分け

まず、通信をどのようにコアへ取り込むかを決め、次にリクエストに適用するルールを設定します。以下の設定例は項目間の関係を示すものです。ノード情報や待ち受けアドレスは、実際の環境に合わせて設定してください。

ルールの順序で接続先が決まる

ルールモードではリクエストを上から順に照合し、最初に一致したルールの接続先へ振り分けます。明示的なドメインルールを先に置き、次に地理情報による判定を設定し、最後にMATCHで残りの通信を処理します。誤った接続先にアクセスする場合は、接続ログで適用されたルールを確認してから、プロキシグループの選択状態を調べてください。グローバルモードと異なり、ルールモードでは通信ごとに経路を分けられます。ただし、通信がコアに取り込まれ、ドメイン名が正しく認識されていることが前提です。

rules:
  - DOMAIN-SUFFIX,github.com,PROXY
  - GEOIP,CN,DIRECT
  - MATCH,PROXY
ルールによる振り分け手順を見る →

DOWNLOAD / OS別ダウンロード

OSに合ったClashクライアントを選ぶ

まずシステムのアーキテクチャを確認してから、インストーラーを選んでください。GUIクライアントは設定や接続を管理し、mihomoコアはリクエストを処理します。コアの実行ファイルだけでは、設定一覧、システムプロキシの切り替え、サブスクリプション管理画面は利用できません。

Windows

デスクトップでは、Clash Plus、Clash Verge Rev、FlClashから選び、ダウンロードページの説明に従ってインストールします。初回起動後はサブスクリプションを取り込み、コアの起動を確認してからシステムプロキシを有効にしてください。ブラウザーからアクセスできても、すべてのアプリがプロキシ経由とは限りません。コマンドラインツールでは、プロキシ環境変数を別途設定する必要がある場合があります。

TUNを使う場合は、クライアントの案内に従ってサービスと権限を設定してください。最初からすべての通信取り込み方法を同時に有効にする必要はありません。ポートが使用中の場合は、別のプロキシアプリがバックグラウンドで動いていないか確認してください。待ち受けポートを変更したときは、アプリ側の手動プロキシアドレスも更新します。終了前にシステムプロキシを無効にすると、設定が残って接続に問題が起きるのを防げます。

ダウンロードへ

macOS

ダウンロード前にシステム情報でチップの種類を確認し、Apple Silicon用またはIntel用のインストーラーを選んでください。インストール後はアプリを「アプリケーション」フォルダへ移動し、案内に従ってネットワーク拡張機能や補助サービスの権限を設定します。他のネットワークツールを使っている場合は、同じシステム設定を複数のアプリが繰り返し変更しないよう、先にそれらの通信取り込み機能を無効にしてください。

Clash Plus、Clash Verge Rev、FlClashでは設定画面が異なりますが、基本的な手順は共通です。設定を取り込み、選択し、プロキシグループを指定してから通信の取り込みを有効にします。Wi-Fiの切り替えやスリープ復帰後にWebサイトへアクセスできない場合は、現在のネットワークサービスのプロキシアドレスとDNSを確認してから、コアのログを見てください。メニューバーのアイコンだけで接続状態を判断しないようにしましょう。

ダウンロードへ

Android

Androidでは、Clash Plus、Clash Meta for Android、FlClashなどから選べます。インストール時にCPUアーキテクチャを確認してください。不明な場合はダウンロードページでパッケージの種類を確認し、対応しないファイルを繰り返しインストールしないようにしましょう。設定を取り込むと、通常はVPN接続の許可を求められます。許可すると、その方式でアプリの通信を受け取れるようになります。

モバイルOSではバックグラウンド動作が制限されることがあります。画面ロック後に切断される場合は、バッテリー最適化、自動起動、バックグラウンド通信の設定を確認してください。アプリ単位のプロキシ設定とドメインルールは異なる階層の設定です。アプリの通信を取り込むかどうかは接管設定で決まり、取り込まれた後の接続先はルールで決まります。他のVPNや仕事用プロファイルのネットワークと競合しないよう、クライアントの対応状況に合わせて併用方法を決めてください。

ダウンロードへ

iOS

iPhone・iPadでは、ダウンロードページからClash PlusのApp Storeページを開けます。製品の公式サイトはclashplus.ioです。インストール後、クライアントに対応したサブスクリプションまたは設定を取り込み、システムの案内に従ってVPN構成を追加してください。許可しただけでは通信の取り込みは完了しません。設定とプロキシグループを選択し、実際にアクセスできることを確認しましょう。

モバイルデータ通信とWi-Fiでは接続条件が異なる場合があります。一方のネットワークでしか使えないときは、サブスクリプションの更新、ノードへの接続、DNS名前解決をそれぞれ確認してください。自動選択はテスト先に基づくため、すべてのWebサイトで同じ結果になるとは限りません。原因を調べる間は手動で接続先を一つに固定し、問題の範囲を確認してから自動選択に戻すと、接続先が変わり続けるのを防げます。

ダウンロードへ

Linux

デスクトップ環境ではClash Verge RevまたはFlClashを選び、ディストリビューションに合ったパッケージをインストールできます。デスクトップ環境のシステムプロキシ設定をすべてのプログラムが参照するとは限りません。ターミナル、コンテナ、バックグラウンドサービスが独自のネットワーク設定を使う場合もあります。まず通常のユーザーセッションで接続を確認してから、TUNやサービスとしての実行が必要か判断すると、権限と設定の問題を切り分けやすくなります。

サーバーやルーターで使う場合は、ダウンロードページのコア一覧からCPUと実行環境に合ったmihomoを選んでください。コアを自分で実行する場合は、設定ファイルのパス、サービスの起動順序、ログ出力を管理する必要があります。コントロールインターフェースは通常、ローカルからのアクセスに制限してください。リモート管理が必要な場合は、認証とアクセス範囲を先に設計しましょう。コンテナ内のループバックアドレスはコンテナ自身を指し、ホストのアドレスとしては使えません。

ダウンロードへ

SOURCE / オープンソースとメンテナンス

mihomoコアとClashエコシステム

公開ソースコード、設定ドキュメント、リリースノートから機能の範囲を確認できます。クライアント、コア、サブスクリプションはそれぞれ別に管理されているため、選択やトラブル対応では分けて考えましょう。

プロジェクトの沿革と設定形式

Clashは当初、ルールベースのプロキシコアとYAML設定を中心にエコシステムを築き、その後、さまざまな派生プロジェクトやGUIクライアントが登場しました。元のプロジェクトと後継プロジェクトではメンテナンス状況が異なります。古いクライアント向けの手順を、すべての新しいクライアントにそのまま当てはめることはできません。mihomoはClash Metaプロジェクトの技術的な流れを引き継いでいます。動作の詳細は、現在のプロジェクトドキュメントとクライアントへの実装状況を確認してください。過去の記事を参照するときは画面の画像だけでなく、設定項目の意味と対象コアを確かめましょう。

設定ファイルでは、インデント、リスト、参照関係も解析に影響します。変更前に動作するコピーを保存し、一度に一つの設定項目だけを変更してください。解析エラーが発生したら、まずログに示された項目と周辺の記述を確認し、その項目が使用中のコアでサポートされているか調べます。ファイルを読み込めても、確認できたのは構文上のチェックに通ったことだけです。ノードへの接続、ルールの適用、システム通信の取り込みは別々に確認する必要があります。

GUIクライアントとプロキシコア

GUIクライアントは設定の表示、プロセスの管理、システム機能との連携を担い、コアはルールの解析、接続の確立、DNS処理を行います。それぞれ別に更新される場合があるため、GUIを変更してもコアの動作が変わるとは限りません。コアを更新してもサブスクリプションの取り込み画面が変わらない場合があります。クライアントを選ぶ際は、対応プラットフォームやインストール方法に加え、サービスモード、オーバーライド機能、ログの確認場所、設定のエクスポート方法も確認してください。問題の特定や設定の移行に役立ちます。

プロジェクトごとに公開範囲やライセンス条件を確認してください。同じコアを使っていても、アプリ全体が同じライセンスとは限りません。mihomoのリポジトリではソースコードとライセンス情報を公開しており、機能の実装、問題の議論、リリース履歴を確認できます。当サイトではダウンロード先と中国語の操作ガイドをまとめています。各プロジェクトのリリース、ストアでの配布、サブスクリプションサービスは、それぞれのメンテナーが管理しています。

更新対象を3つに分けて考える

クライアントの更新はアプリ本体、コアの更新はプロトコルやネットワーク動作、サブスクリプションの更新はサービス提供元のノードや設定に関わります。ノードに接続できない場合は、すぐにクライアントを再インストールするのではなく、サブスクリプションの期限と、更新後の設定が選択されているかを確認してください。未対応のプロトコルや設定項目がある場合は、コアの対応状況を調べます。更新前に変更内容を読み、現在使える設定を保存してください。更新後は待ち受けポート、通信の取り込み設定、プロキシグループの選択を確認し、既定値の変更が環境に影響していないか確認しましょう。

サブスクリプションには、サービス提供元が設定したDNS、ルール、プロキシグループが含まれることがあります。ローカルで直接編集した内容は、次の更新で置き換わる可能性があります。長期的に保持したいルールは、クライアントが対応するオーバーライドやマージ機能に追加し、適用順序も確認してください。サブスクリプションファイル全体を公開の掲示板にアップロードしないでください。問題を報告するときは、必要な情報を残して設定の一部を抜粋し、OS環境と関連するエラー行を添えましょう。

接続の確認とログの記録

まずコアが待ち受けていることを確認し、次にアプリのリクエストが接続一覧に表示されるかを調べます。最後に適用されたルールと実際の接続先を確認してください。ノードを次々に切り替えるより、問題箇所を特定しやすくなります。レイテンシテストは指定されたアドレスに対して行われるため、成功しても実際のサービスでの動作を保証するものではありません。Webサイトを開けても、すべてのアプリが同じ経路を使っているとは限りません。コマンドラインツールを使う場合は、現在のターミナルにプロキシ環境変数が設定されているか確認し、ブラウザーと同じ方式で通信を取り込んでいるか明確にしてからテストしてください。

デバッグログにはアクセス先のドメイン、接続先アドレス、ローカルパスが含まれる場合があります。共有前に、問題と関係のない情報を削除してください。調査後は日常利用に適したログレベルに戻し、不要なリクエストが長期間記録されないようにしましょう。コントロールポートと混合プロキシポートは用途が異なります。前者は管理インターフェース用、後者はプロキシリクエストの受付用です。管理用アドレスをブラウザーのプロキシ設定に入力しないでください。既定ポートは一般的な設定値なので、実際に待ち受けているポートはクライアントの表示を確認してください。

ダウンロード前によくある質問

クライアントをインストールした後、サブスクリプションも必要ですか?

クライアントは設定と接続を管理するもので、利用可能なプロキシサーバーが自動で提供されるわけではありません。手持ちのサービスのサブスクリプションを取り込むか、自分で管理するノード設定を使ってください。取り込む前に、データの入手元と形式を確認しましょう。公開されている共有リンクは、利用可否やアクセス権が予告なく変わることがあるため、クライアントの動作確認だけに使うのは避けてください。ノードとサブスクリプションについて。

ルールモード、グローバルモード、TUNの違いは?

ルールモードとグローバルモードは、コアに取り込まれたリクエストの接続先を決めます。TUNはシステム通信をどのようにコアへ取り込むかを決めるため、別の設定項目です。TUNを有効にしてもルールによる振り分けは使えます。また、グローバルモードにしても、すべてのアプリが自動で通信を取り込まれるわけではありません。まず取り込み方法を一つに絞って動作を確認し、必要に応じて設定を広げてください。詳しくはプロキシモードとルールのガイドをご覧ください。

サブスクリプションを取り込めたのに、Webページを開けないのはなぜ?

まず設定が選択されているかを確認し、次にシステムプロキシまたはVPNによる通信の取り込みが有効か調べてください。接続一覧にリクエストが表示されない場合は、取り込み方法とポートを重点的に確認します。リクエストが表示される場合は、接続先、適用ルール、DNSエラーを調べてください。ノード、DNSサーバー、プロキシモードを同時に変更すると、どの変更が効果を与えたのか分かりにくくなります。トラブル対処の手順に沿って一つずつ確認しましょう。

GeoIPデータやポートの設定はどこで変更できますか?

まずクライアントに用意されたデータ更新やネットワーク設定の画面を使い、現在の値を確認してから変更してください。GeoIPは主に地理情報に基づくルール判定に使われ、すべてのドメイン名前解決の問題を解決するものではありません。ポートはローカルのアプリとコアの通信に使われるため、変更後は手動プロキシの設定も合わせて更新します。GeoIPの更新方法とポートの設定方法をご覧ください。

NOTES / 使い方とヒント

設定の仕組みと接続トラブルの対処

具体的な症状から手順を確認できます。サブスクリプションの更新、DNSマッピング、通信の取り込みを分けて扱い、ネットワークの問題をすべてノードの不具合と決めつけないようにしましょう。