Windows
設定を読み込み、システムプロキシを有効にします。TUNを使う場合は、クライアントの案内に従ってサービスを導入し、必要な権限を許可してください。
ダウンロードページへ ↗Clashでは、接続の取り込み方法、ドメインの名前解決、通信の出口を分けて設定します。まずアプリからの通信をどう取り込むかを決め、次に接続に適用するルールを指定し、最後にポリシーグループで利用する出口を選びます。以下の例はmihomoの設定構文を使用しています。画面上の名称は利用するクライアントによって異なります。
ルール分岐では、ドメイン、接続先IP、ルールセットに応じて通信先を決めます。同じ設定ファイルで、特定のサービスをプロキシ経由にしたり、LAN内の通信を直接接続にしたり、条件に合致したリクエストを拒否したりできます。ルールは上から順に評価され、最初に一致した項目が適用されるため、細かいルールを広い条件のルールより前に置き、最後にMATCHで残りの接続を処理します。出口を全体で切り替える方法と異なり、アプリごとの通信要件を個別に設定できます。初めて編集する場合は、まずドメインルールを1つだけ追加し、接続ログで一致結果を確認しましょう。一度に複数箇所を変更すると、原因の特定が難しくなります。
↗ポリシーグループは、ノードやほかのポリシーをまとめ、ルールから参照できる名前を付ける仕組みです。selectは手動選択、url-testは検査結果に基づく出口選択、fallbackは上から順に利用可能な項目を探す方式、load-balanceは接続を振り分ける方式です。まずノードの参照元を設定し、ポリシーグループを作成してから、rulesでグループ名を参照すると設定の関係が分かりやすくなります。各ルールにノード名を直接書く場合に比べ、出口を切り替える際の修正箇所を減らせます。自動検査で分かるのは検査先への到達性です。実際の使用感も確認し、一度の検査結果だけで全接続の出口を決めないようにしましょう。
↗TUNモードは仮想ネットワークインターフェースを通じて通信を取り込みます。システムプロキシ設定を参照しないアプリや、より多くの通信を取り込む必要がある場合に適しています。TUNとルールモードは二者択一ではありません。TUNは通信をカーネルに取り込む方法、ルールは取り込んだ通信の振り分け方法を決めます。有効にする前に、クライアントに必要な権限があることを確認し、ほかのVPN、ルーティング設定、セキュリティソフトとの競合がないか調べてください。通常のシステムプロキシより関係するネットワーク層が多いため、まず基本的なプロキシ接続を確認し、その後ルーティングやDNSの制御を一つずつ有効にします。元のネットワーク設定に戻す方法もあらかじめ確認しておきましょう。
↗DNSはドメイン名を解決します。Fake-IPは仮想アドレスにドメイン情報を対応付け、後続のルール判定でドメインを利用できるようにする仕組みです。プロキシノードではなく、出口の選択を代替するものでもありません。設定時はDNSサーバーへの到達性、DNSリクエストの経路、LAN内サービスとの互換性をあわせて確認します。特定の端末やアプリが仮想アドレスを扱えない場合は、状況に応じてフィルター項目を追加できます。システムDNSを変更するだけの場合と異なり、クライアント内蔵のDNSはルール分岐やTUNによる通信の取り込みとあわせて確認が必要です。変更後は接続を作り直し、古いキャッシュがテスト結果に影響しないようにしてください。
↗Profileは、クライアントで設定を保存・切り替えるための機能です。ローカルのYAMLファイルを読み込む方法と、リモートのサブスクリプションから作成する方法があります。読み込み後は使用する設定を選び、カーネルへの読み込みが完了したことを確認してください。ファイルが一覧にあるだけでは、使用中とは限りません。リモート更新でサブスクリプションの内容が置き換わる場合があるため、長期的に保持するルールはクライアントのオーバーライド機能やマージ機能で管理しましょう。ダウンロードしたファイルを直接編集し続けるより、サブスクリプションの内容とローカル変更を分けておくと、元に戻しやすくなります。複数の設定には用途が分かる名前を付け、更新日時も記録してください。サブスクリプションURLにはアクセス用の認証情報が含まれることがあるため、公開画像やログに載せないよう注意しましょう。
↗設定例:PROXYは定義済みのノードまたはポリシーグループに対応させてください。ルールの順序が優先順位を決めます。この例は完全な設定ではありません。
設定例:subscriptionはproxy-providersで定義してください。検査先には、現在のネットワークからアクセスできるアドレスを選びます。
設定例:必要な権限、ルーティング、ネットワークスタックの対応状況はOSによって異なります。DNSの制御は内蔵DNSの設定とあわせて行ってください。
設定例:DNSサーバーはネットワーク環境に合わせて選びます。フィルター項目は、実際のドメインとアプリの動作を確認して調整してください。
設定例:providerファイルが実際に存在し、互換性のあるノードを含む必要があります。Profileの管理画面はクライアントの機能です。
クライアントは画面表示、OSの権限、設定管理を担当し、カーネルはプロトコル処理とルールの実行を担当します。選ぶ際は、まずOSとCPUアーキテクチャを確認し、次に必要な接続方式を検討してください。ダウンロードページではプラットフォーム別にクライアント、メンテナンス状況、インストール方法を掲載しています。トップページのリンクから各プラットフォームの案内に移動し、比較してからインストーラーを選べます。
設定を読み込み、システムプロキシを有効にします。TUNを使う場合は、クライアントの案内に従ってサービスを導入し、必要な権限を許可してください。
ダウンロードページへ ↗Apple SiliconまたはIntel用を選び、ネットワーク拡張機能の権限を確認します。乗り換える前に旧クライアントのプロキシを無効にしてください。
ダウンロードページへ ↗端末に合うインストーラーを選び、設定を読み込んでVPN接続を許可します。継続利用にはバッテリー最適化とバックグラウンド動作の権限も確認しましょう。
ダウンロードページへ ↗App Storeまたは公式サイトclashplus.ioでClash Plusを確認できます。対応するサブスクリプションを読み込み、初回接続時にVPNの利用を許可してください。
ダウンロードページへ ↗GUIクライアントまたはカーネルのサービス運用を選べます。パッケージ形式とCPUを確認し、リモート操作では別の管理用接続を確保してください。
ダウンロードページへ ↗同じサブスクリプションでも、カーネルの対応状況、オーバーライド機能、権限設定によってクライアントごとに動作が異なる場合があります。移行時はまず元の設定を読み込んで基本的な接続を確認し、その後カスタムルール、DNS、TUNの設定を一つずつ戻してください。サブスクリプション自体の問題とクライアント設定の違いを切り分けやすくなり、動作する設定に戻せるようバックアップも残せます。
すべてのクライアントを見る →まず、経路を説明できるシンプルな接続を作ってから、複雑なルールを追加しましょう。以下の3ステップは初期設定向けです。サブスクリプションは自分で用意する必要があり、クライアントをインストールしてもプロキシサービスが自動で利用可能になるわけではありません。ローカル設定をお持ちの場合は、ファイルの読み込みから始められます。
クライアントの設定またはProfile画面を開き、リンクから読み込むか、ローカルのYAMLファイルを選択します。用途を区別できる名前を付け、ダウンロードと解析が完了するまで待ってから、その設定を選択します。一覧に表示されない場合は、まず読み込みエラーを確認してください。リンクに余分な空白がないこと、アクセス用の認証情報が有効であること、取得した内容が現在のカーネルに対応する形式であることを確認します。
完了の目安:設定が有効になり、ポリシーグループに参照先のノードが表示される。読み込み直後は元のファイルを残し、ポートやDNSを急いで変更しないでください。
まずはルールモードを使い、ポリシーグループで出口を選んで、クライアントのシステムプロキシまたはシステムVPNを有効にするのが一般的です。ルール、全体、直接接続は出口の選択方法を決め、システムプロキシとTUNはアプリの通信をカーネルに取り込む方法を決めます。これらは別々の設定として理解してください。全体モードは比較テストに利用できますが、日常的に使うかどうかは用途に応じて判断します。
完了の目安:対象アプリの通信が選択した方式で取り込まれ、ポリシーグループが想定した出口を指している。クライアントが起動しているだけでは不十分です。
どの種類の出口を使うべきか明確な接続先にアクセスし、接続画面でドメイン、一致したルール、ポリシーの経路を確認します。問題が起きたら、名前解決の失敗、接続タイムアウト、ルールの誤一致を切り分け、それぞれに対処してください。接続ボタンがオンでも、すべてのアプリの通信が取り込まれているとは限りません。Webページが表示されるかどうかだけで、すべてのルールを判断するのも避けましょう。
完了の目安:接続ログが想定どおりで、通信制御を停止するとネットワークが元に戻る。その後、自動更新、オーバーライド、より細かなルールを追加します。
機能が使えるか判断するには、クライアントの画面、実際に動作しているカーネル、読み込み中の設定をあわせて確認する必要があります。オープンソースのリポジトリでは実装や変更履歴を、日本語ガイドでは設定間の関係を確認できます。名称や画面が似ていることだけで互換性を判断するより、両方を参照するほうが確実です。
Clashのエコシステムには、異なる時期に開発された複数のカーネル派生版やGUIクライアントがあります。以前のクライアントがメンテナンスを終了した後も、関連ガイドが検索結果に残ることがあります。しかし、古いガイドにあるボタンの位置、プロトコルの対応状況、権限の設定方法が現在の環境にも当てはまるとは限りません。このサイトではインストール案内と上級設定を分けています。まず利用中のクライアントとカーネルを確認し、対応する構文の資料を参照してください。名前が似ているだけの別プロジェクトを、同じ実装とみなさないようにしましょう。
mihomoは、Clashエコシステムで継続的にメンテナンスされているオープンソースカーネルの一つです。プロトコル、接続、ルール、DNSなどの基盤機能を担い、GPL-3.0ライセンスで公開されています。GUIクライアントは通常、サブスクリプション管理、トレイメニュー、システムプロキシ、サービスのインストールなどを担当します。画面にスイッチがあっても、すべてのOSで同じように動作するとは限りません。カーネルが特定の項目に対応していても、クライアントが手動変更を自動で保持するとは限りません。
設定項目の意味、読み込みエラー、動作の変化を調べる場合は、対象カーネルのドキュメント、リポジトリの説明、Issueを確認してください。質問する際は、クライアント名、カーネル情報、OS、最小限の再現設定を用意し、サブスクリプションURL、ノードの認証情報、個人を特定できるネットワーク情報を削除しましょう。公開されている記録から、既知の制限、設定の誤り、再現確認が必要な不具合を切り分けられます。エラー画面のスクリーンショット1枚だけでは、接続経路全体を把握できないことがあります。
クライアント、カーネル、サブスクリプションの更新は、それぞれ別の操作です。クライアントの更新では画面やOSとの連携が変わることがあり、カーネルの更新では設定項目の対応や処理が変わる場合があります。サブスクリプションの更新ではノード、ルール、ポリシーグループが置き換わることがあります。重要な設定は更新前にバックアップし、ローカルのオーバーライドも別に記録してください。更新後は同じ接続先で再確認し、動作に差があれば変更履歴を調べましょう。すぐにすべての設定を初期値に戻す必要はありません。
おすすめの読み進め方:初めて使う場合は、インストールとサブスクリプションの読み込みから始めます。Profile、ポリシーグループ、ルールセット、Fake-IPの違いを確認するには、まず用語集を参照してください。基本的な接続ができたら、上級設定ガイドのポリシーグループ、DNS、TUN、ローカルオーバーライドの各項目を読み進めます。設定例は構造の説明を目的としています。既存の設定に追加する前に、同名の項目や参照関係を確認し、重複定義によって元の動作が上書きされないようにしてください。
クライアントはネットワークプロキシ機能を提供しますが、接続品質はローカルネットワーク、リモートサービス、出口の状態に左右されます。再現できる問題に基づいて設定を調整してください。まず、どのアプリ、接続先、接続方式で問題が起きるかを記録し、テスト範囲を絞ります。使用や設定の共有にあたっては、居住地の法令、ネットワーク管理上のルール、サービスの利用規約を守ってください。
読み込み形式から設定項目まで、技術ノートでは具体的な疑問を取り上げます。まず現在の作業段階を確認し、該当する記事を選んでください。ローカル設定を変更する場合は、元の設定と、正常に接続できるバックアップを残しましょう。
Clash設定ファイルのトップレベル項目を登場順に解説し、それぞれの役割、一般的な記述方法、相互の参照関係を紹介します。設定の読み方と安全な変更方法が分かります。
技術ノートを読む →Profileとconfig.yamlの関係を解説し、複数設定の命名、切り替え、更新間隔の設定、バックアップ方法を紹介します。サブスクリプションの元ファイルを誤って編集するのを防げます。
技術ノートを読む →サブスクリプションURLのコピー、貼り付け、更新までの手順を解説します。よく使われる3種類の形式の判別方法と互換性の違いに加え、読み込み後にノードが表示されない場合の確認方法も紹介します。
技術ノートを読む →