mihomoカーネル · デスクトップ・モバイル向けクライアント
Clash クライアントダウンロードステーション
OSに合ったクライアントを選び、サブスクリプションの取り込みとルール振り分けで接続を管理。日本語の設定ガイドも確認できます。
GPL-3.0 オープンソースmihomo / Clash MetaカーネルYAML設定
ルールとメニューは静的な画面例です。設定名は使用するクライアントによって異なります。
Clashの設定と接続管理
サブスクリプションからアウトバウンドポリシーまで、設定項目ごとに解説します。
Clashは、設定ファイルでプロキシ、ポリシーグループ、ルーティングルールを定義するツールのエコシステムです。GUIクライアントは設定の表示やサブスクリプション管理を担い、カーネルは設定の解析、接続の確立、通信の振り分けを行います。クライアントをインストールしたら、まずカーネルに対応したサブスクリプションまたはローカル設定を用意し、アウトバウンドモードを選びます。アプリを起動しただけでは、通信がプロキシを経由するとは限りません。
初めて使う場合は、ルールモードとシステムプロキシから始めるのがおすすめです。まず設定を読み込めることを確認し、次にポリシーグループで利用可能なアウトバウンドが選ばれているかを確認します。最後に接続履歴でルールのマッチ結果を確認しましょう。システムプロキシに従わないアプリを接続する場合は、その後でTUNを検討します。以下の5項目ではよくある設定手順を紹介します。例は各フィールドの用途を示すもので、そのまま接続に使える完全な設定ではありません。
mode: rule
rules:
- DOMAIN-SUFFIX,github.com,PROXY
- DOMAIN-KEYWORD,google,PROXY
- GEOSITE,category-ads-all,REJECT
- GEOIP,LAN,DIRECT
- GEOIP,CN,DIRECT
- MATCH,PROXY
ルール振り分けでは、接続先ごとに異なるアウトバウンドポリシーを適用できます。開発ツール、Webサイト、LAN内のサービスを併用する場合に便利です。ルールは上から順に評価され、最初に一致したルールのポリシーが適用されます。そのため、具体的なドメインのルールは前方に置き、MATCHは末尾のフォールバックとして使うのが一般的です。例のPROXYは、完全な設定内でポリシーグループとして定義する必要があります。DIRECTとREJECTは組み込みポリシーです。変更後は接続画面でマッチしたルールを確認すると、グローバルモードを何度も切り替えるより原因を特定しやすくなります。ドメインセットを使うルールでは、対応するルールデータが利用可能であることも必要です。
https://example.com/profile.yamlサブスクリプションを使うと、指定したURLから設定を取得でき、アウトバウンド情報を手作業で管理する負担を減らせます。クライアントのプロファイル画面で新規作成またはインポートを選び、提供元の対応URLを貼り付けます。ダウンロード後、その設定を現在のプロファイルに指定してください。取り込みに成功しても、設定を取得できただけです。ポリシーグループと接続状態も確認しましょう。更新間隔はクライアントが管理しますが、プロキシ提供元側に独自の更新周期が設けられている場合もあります。URLには個人用の認証情報が含まれることが多いため、ローカルで保管し、ログやスクリーンショットを共有するときは必ず隠してください。例のURLは形式を示すもので、接続サービスを提供するものではありません。
tun:
enable: true
stack: mixed
auto-route: true
auto-detect-interface: true
TUNは仮想ネットワークインターフェースを通じて通信を取り込み、システムプロキシ設定を参照しない一部のアプリにも対応できます。有効にする前に、現在のサブスクリプションで正常に接続できることを確認し、クライアントの案内に従ってサービスのインストールやネットワーク権限の付与を行ってください。stackは使用するネットワークスタックを指定しますが、実装や選択肢はカーネルとOSによって異なります。名称だけで速度を判断しないでください。ほかのVPN、仮想マシン、コンテナのネットワークと併用する場合は、ルートの競合に注意が必要です。LANにアクセスできないときは、ルートとDNSを確認してから設定を一つずつ変更しましょう。複数のスイッチを同時に変えると、原因を特定しにくくなります。
mixed-port: 7890
allow-lan: false
bind-address: "127.0.0.1"
# システムプロキシはGUIクライアントがOSの設定に反映します
# LAN共有には待ち受け範囲とファイアウォールの調整も必要です
システムプロキシとLAN接続の許可は、それぞれ異なる問題を解決します。前者は、OSの設定に従うローカルアプリがプロキシポートを使えるようにします。後者は、ほかのデバイスからこの端末の待ち受けサービスへ接続できるようにします。自分の端末だけで使う場合は、ローカルでの待ち受けを維持してください。共有が必要な場合に限り、クライアントの説明に従ってLANアクセスを有効にし、バインドアドレス、プロキシ認証、ファイアウォールの範囲を確認します。ほかのデバイスには、このPCのLAN内アドレスとポートを設定してください。待ち受けサービスをインターネットに直接公開しないでください。ターミナルツールでは環境変数の設定が必要な場合もあるため、システムプロキシのスイッチだけで接続状況を判断することはできません。
mode: rule
log-level: info
ipv6: false
# クライアントの上書き機能でローカル設定を管理
# サブスクリプション更新で置き換わる元ファイルは直接編集しない
設定の上書き機能を使うと、ローカルポート、ログレベル、カスタムルールなどを保持でき、サブスクリプション更新のたびに変更し直す手間を省けます。対応クライアントでは、設定のマージ、スクリプト、上書き機能などを利用できますが、リストへの追加とフィールドの置き換えでは動作が異なります。作業前に元の設定を保存し、まず確認しやすい項目を一つ変更して、最終的に適用された設定を確認してからほかの内容を追加しましょう。ルールを挿入する位置は評価順に影響します。DNSやポリシーグループを丸ごと上書きすると、サブスクリプションとの依存関係が崩れる可能性があります。別のクライアントへ移行するときは、設定片をコピーするだけでなく、上書きの仕組みも確認してください。
機能名が似ていても、すべてのクライアントで設定方法が同じとは限りません。Clash Verge RevやFlClashなどのGUIでは、一部の項目が設定画面にあり、別の項目は引き続きYAMLで管理します。モバイル版では、OSのVPNインターフェースやバックグラウンド動作の制限も影響します。画面に目的のスイッチが見当たらない場合は、まずクライアントの説明とカーネルの対応範囲を確認してください。ほかのプラットフォームの手順をそのまま当てはめないようにしましょう。手順はClash設定ガイド、プロトコルの互換性とカーネルの違いはプロトコル解説をご覧ください。
OS別にClashクライアントをダウンロード
OSとCPUアーキテクチャを確認してから、インストーラーを選んでください。
インストーラーと動作環境
Windows:初めてインストールする場合は、まずClash Plusを確認し、設定管理の好みに応じてClash Verge Rev、FlClash、Clash Nyanpasuと比較してください。インストール後、サブスクリプションの取り込みとシステムプロキシの設定を行います。TUNやサービスモードが必要な場合に限り、案内に従って必要な権限を設定してください。ブラウザーでは接続できるのに特定のアプリだけ接続できない場合は、まずそのアプリのプロキシ接続方式を確認しましょう。ストアアプリについては、ClashのUWPループバック設定もご覧ください。
macOS:Apple SiliconとIntelではインストーラーのアーキテクチャが異なります。ダウンロード前に「このMacについて」でチップの種類を確認してください。Clash Plus、Clash Verge Rev、FlClashでは、それぞれの説明に従ってサブスクリプションを設定できます。メニューバーから管理したい場合は、クライアントのメンテナンス状況や権限に関する案内も確認しましょう。拡張モードでは追加サービスが必要な場合があります。アプリのインストール許可とネットワークインターフェースの作成許可は別の権限です。
Android:Clash Plus、Clash Meta for Android、FlClash、Surfboardから選べます。前の3つとSurfboardでは設定の構文が異なるため、インポート前に提供元が案内する形式を確認してください。初回接続時には、OSからVPN権限を求められます。ほかのVPNアプリが動作している場合は、先に接続の競合を解消してください。バックグラウンドで切断されるときは、サブスクリプションの更新頻度を上げるだけでなく、OSのバッテリー最適化やバックグラウンド動作の制限を確認しましょう。
iOS:ダウンロードページにはClash PlusのApp Storeリンクと、公式サイトclashplus.ioを掲載しています。インストール後、アプリの画面から対応する設定を取り込み、OSのネットワーク権限を確認してからルールとポリシーグループをチェックしてください。デスクトップ版のサービスインストールやシステムプロキシポートの手順を、そのままスマートフォンに適用することはできません。設定項目の対応範囲は、各アプリの説明で確認してください。
Linux:デスクトップではClash Verge RevまたはFlClashを選べます。インストーラーはディストリビューションのパッケージ形式に合わせてください。サーバーやルーターでは、mihomoカーネルを直接利用し、設定ファイル、サービスの起動、ログを自分で管理できます。GUIクライアントとカーネルの直接運用は異なる方法です。前者は日常的な操作に向いており、後者ではファイル権限やネットワークルーティングの知識が必要です。選び方はクライアント選びのガイドをご覧ください。
旧クライアントからの移行
Clash for WindowsとClashX Metaのアーカイブ版は、以前の利用環境との互換性を保つために提供しています。新規導入では、現在もメンテナンスされているクライアントを優先してください。移行前にサブスクリプションの取得元、ポリシーグループの選択、ローカルの上書き設定を記録し、新しいクライアントに取り込んだ後、設定の解析結果を確認しましょう。旧画面で認識される項目が、現在も推奨される書き方とは限りません。また、新しいプロトコルには、より新しいカーネルが必要な場合があります。更新が停止したクライアントの違いはアーカイブ済みクライアントの解説をご覧ください。
複数のクライアントを同時に起動すると、システムプロキシ、待ち受けポート、TUNルートを奪い合うことがあります。新しいクライアントを試す前に、古いクライアントを終了し、プロキシ設定が元に戻ったことを確認してから、新しい設定を一つずつ有効にしてください。OS起動時に自動起動する場合も、実際に使う項目だけを残しましょう。詳しい手順はClashの自動起動設定をご覧ください。ログイン後にプロキシの接続先が誤ったり、ポートが使用中になったりする問題を防ぎやすくなります。
Clashのオープンソースエコシステムとmihomoカーネル
クライアント、カーネル、設定の取得元を区別し、各プロジェクトの資料で互換性を確認しましょう。
カーネルの系譜とプロジェクトの成り立ち
Clashエコシステムには、オリジナルのカーネル、その後に派生したカーネル、それらを利用して開発されたGUIクライアントがあります。Clash Metaは進化の過程で生まれた主要な派生系で、mihomoは関連するカーネル開発を引き継いでいます。旧名称がクライアントのタイトル、設定ガイド、サブスクリプション形式の選択肢に残っていることもあります。機能を判断するときは、アプリ名だけでプロトコル対応を推測せず、実際に使用しているカーネルを確認してください。
mihomoのソースコードとドキュメントは公開プロジェクトで提供されており、リポジトリにはビルド方法、設定、問題報告に関する資料があります。コードのライセンスはGPL-3.0です。公開コードから機能の実装や変更の背景を確認できますが、GUIクライアントにはそれぞれ独自の画面、リリース方針、権限管理があります。当サイトでは関連プロジェクトへのリンクと日本語の解説をまとめています。クライアントの開発元と具体的なライセンス条件は、各プロジェクトの資料をご確認ください。
設定の互換性と機能の範囲
設定ファイルは通常、プロキシ、ポリシーグループ、ルール、DNSなどで構成されます。カーネルが特定のプロトコルを認識しても、クライアントの画面からその設定を編集できるとは限りません。逆に、画面に項目があっても、実際のカーネルが対応している必要があります。インポートに失敗した場合は、まずログに記録されたフィールド名やプロトコル名を確認し、次にサブスクリプションの出力形式を確認しましょう。YAMLの構文エラー、リンク切れ、ネットワークへの接続不可を混同して対応しないことが大切です。
設定を移行するとき、ドメインルールの基本的な考え方はそのまま使えることが多いものの、プロキシ提供元、地理データ、ネットワークスタック、DNSフィールドには違いがある場合があります。動作する元の設定を保存し、ローカルの変更を一つずつ移行すると、問題を特定しやすくなります。SS、VMess、Trojan、VLESS、Hysteria2、TUICの選択は、サーバー側の対応状況、ネットワーク環境、端末の性能を踏まえて判断してください。詳しくはプロトコルとカーネルの技術資料をご覧ください。
更新の仕組みと接続の確認
クライアント、カーネル、サブスクリプション、ルールデータの更新は、それぞれ別の操作です。クライアントの更新では画面やOSとの連携が変わることがあります。カーネルの更新は設定の解析やプロトコルの実装に影響します。サブスクリプションの更新では提供元から設定を再取得し、ルールデータの更新ではドメインやアドレスのリストが更新されます。特定のWebサイトで振り分けがうまくいかない場合は、すぐにソフトを再インストールせず、まず現在マッチしているルールと使用中のデータを確認してください。
更新前に現在の設定を記録し、更新後は同じ順序で確認しましょう。設定を読み込めるか、ポリシーグループが存在するか、アプリの通信がクライアントに届いているか、接続先にどのルールが適用されたかをチェックします。前後のログと最終的な設定を比較するほうが、Webページが開くかどうかだけを見るより確実です。問題を報告する場合は、OS、クライアント名、再現手順、機密情報を除いたログを添えてください。共有前にサブスクリプションURLと認証情報を削除しましょう。
基本用語は用語集で確認できます。GeoIPとドメインセットでは用途が異なり、更新方法もクライアントごとに管理される場合があります。関連情報はClashのGeoIP更新をご覧ください。サブスクリプションを引き続き利用できるか、サーバーに接続できるかは、設定の取得元とネットワーク環境によって決まります。クライアントをインストールしただけで、利用可能なアウトバウンドが自動生成されるわけではありません。
Clashの設定ガイドとカーネル資料
基本設定からカーネルの違いまで、目的に合わせて解説を選べます。
Clash初心者によくある10の質問:サブスクリプションURL、プロキシモード、ノード選択、自動起動を解説
初心者がよく迷う10のポイントを解説します。サブスクリプションの入手先、ルールモードとグローバルモードの選び方、ノードに接続できない原因、自動起動やカーネルの更新方法を取り上げます。
記事を読む →Clashオリジナル、Clash Meta、mihomoカーネルの違い:機能と設定の互換性を比較
オリジナル、Meta、mihomoの3世代にわたるカーネルの由来と関係を整理し、プロトコル対応、ルールタイプ、設定項目の互換性を比較します。古い設定を移行するときの注意点も解説します。
記事を読む →ルーターやサブルーターでmihomoを実行する方法:導入手順、ハードウェア要件、設定のポイント
OpenWrtルーターやサブルーターでmihomoカーネルを直接実行する方法を紹介します。ハードウェアのアーキテクチャとメモリ要件を比較し、透過プロキシ、DNS、LAN内デバイスを接続する方法を解説します。
記事を読む →