Clashの設定方法
サブスクリプションの追加、プロキシモード、システム接続、動作確認までを解説します。利用可能なサブスクリプションがあれば、この手順で初回接続を設定できます。プロトコルの仕組みや高度な設定は技術ガイドをご覧ください。
事前準備:クライアントとサブスクリプション
インストーラーに含まれるのはクライアントアプリのみで、インストールしても利用可能なリモートノードは自動で追加されません。開始前に、サービス提供元から案内されたサブスクリプションリンク、またはノード、ポリシーグループ、ルールを含む対応設定ファイルを用意してください。サブスクリプションリンクには個人の認証情報が含まれることがあるため、アカウント情報と同様に慎重に扱いましょう。スクリーンショットの提出が必要な場合は、リンク全体、QRコード、認証パラメーターを隠し、エラーメッセージと必要な設定名だけを残してください。
クライアントを初めて起動したら、メイン画面が正常に表示されることを確認し、設定、プロキシ、オプション、ログの各画面を探します。PC向けクライアントの中には、ウィンドウを閉じてもタスクトレイやメニューバーに常駐するものがあります。ウィンドウを閉じただけではカーネルは終了しません。設定の読み込みが完了するまでは、システムプロキシとTUNをオフにしておきましょう。設定が整う前にプロキシを有効にしてネットに繋がらなくなる事態を防げます。
PCやスマートフォンで別のプロキシ、VPN、ネットワーク制御ツールを使用中の場合は、設定を保存して接続を切ってからテストしてください。複数のツールが同時にシステムプロキシ、ルーティング、DNSを変更すると、実際の接続経路と画面上の表示が一致しないことがあります。組織管理の端末ではプロキシ設定が固定されている場合があります。端末の管理ルールに従い、管理対象のネットワーク設定を上書きしないでください。
ここでは、対応するサブスクリプションをすでに用意しているものとして進めます。各手順の結果を確認してから次へ進みましょう。まず設定が読み込まれたこと、次にポリシーを選択できることを確認します。その後、システム接続を有効にし、最後に実際の接続記録を確認します。「サブスクリプション」「ノード」「カーネル」などの用語を確認したい場合は、先に用語解説をご覧ください。初回接続のためにYAMLファイル全体を編集する必要はありません。
手順1:サブスクリプションを追加して有効化
サブスクリプションリンクを追加する
サービス提供元のアカウントページで、Clashまたはmihomo向けのサブスクリプションリンクをコピーします。クライアントのサブスクリプションまたは設定画面を開き、「追加」「新しい設定」「URLからインポート」などの項目を探してください。設定名を入力してリンクを貼り付け、ダウンロード、インポート、または保存を選びます。リンクを貼り付けたときに無効なアドレスと表示された場合は、説明文や先頭・末尾の空白、改行が混入していないか確認してください。リンク内の認証パラメーターは手動で削除しないでください。
追加後、ダウンロードが終わるまで待ちます。通常は設定一覧に入力した名前が表示され、クライアントによって更新結果、更新日時、ファイルサイズなども確認できます。一覧に表示された時点では、まだインポートの途中です。「使用」「有効化」を選ぶか、設定カードを選択してください。続いてプロキシ画面を開き、サブスクリプションで定義されたポリシーグループとノードが表示されることを確認します。ここまで完了すると、ローカルへの読み込みは終了です。
クライアントによっては、「リモートのサブスクリプション項目」と「現在実行中の設定」が分かれています。リモート項目を更新しても、実行中の設定がすぐに切り替わるとは限りません。初回追加時も、保存されただけで有効化されていない場合があります。プロキシ画面に古いノードが表示されたままなら、設定一覧に戻って現在の選択状態を確認し、新しい設定を手動で有効化してから、ログに解析エラーがないか確認してください。サブスクリプション一覧にカードが増えただけで、設定が反映されたと判断しないでください。
ローカルファイルの読み込みと形式エラーへの対処
ローカルの.yamlまたは.ymlファイルを受け取った場合は、「ファイルをインポート」を選ぶか、クライアントが正式に対応しているドラッグ&ドロップ機能を使います。読み込み後は設定の有効化も必要です。ノードのアドレス一覧と、完全なClash設定ファイルは別の形式です。完全な設定ファイルには、通常ポリシーグループやルールも含まれます。サブスクリプションの種類を選ぶ際は、サービス提供元がクライアント対応を明示している形式を優先してください。
「ダウンロードは成功したが解析に失敗」と表示される場合、サーバーからデータは取得できたものの、現在のカーネルでは読み込めない可能性があります。ログインページや認証期限切れの案内が返された場合、別のクライアント専用形式だった場合、またはカーネルが対応していない項目が含まれている場合などに発生します。まずログに記録された具体的なエラーを確認し、サービス提供元にサブスクリプションの形式を問い合わせてください。プロトコルの対応状況はカーネルと設定の互換性を参照してください。読み込みを強行するために、エラー付近の項目を安易に削除しないでください。
ダウンロード自体に失敗する場合は、リンク、認証、ネットワークのどこに問題があるかを切り分けます。リンクが現在のアカウント用で、まだ有効か確認してから、通常のネットワーク環境でもう一度試してください。クライアントによっては「プロキシ経由でサブスクリプションを更新」する設定がありますが、初回設定時はまだ利用可能なプロキシがないため、有効にすると更新にプロキシが必要になる場合があります。個人用のサブスクリプションを見知らぬオンライン変換サービスに送らないでください。変換が必要な場合は、リンクがどのように処理・保存されるかを事前に確認してください。
手順2:ルールモードとノードを選ぶ
メイン画面または設定画面からプロキシモードを開き、初めて使う場合は「ルール」またはRuleを選びます。ルールモードでは設定済みのルールに応じて、各接続に適用するポリシーが決まります。たとえば、一部の通信は直接接続し、それ以外はプロキシグループに振り分けます。これは接続ポリシーの選択であり、システムへの接続を有効にする操作ではありません。ルールモードを選んでも、システムプロキシやスマートフォンの接続がオフなら、ほかのアプリは通常のネットワークを使います。
「グローバル」またはGlobalでは、カーネルに入った通信をまとめてグローバルポリシーに渡すのが一般的です。比較テストには使えますが、該当するポリシーグループでノードを選ぶ必要があります。「直結」またはDirectでは、カーネルに入った通信が通常、宛先へ直接接続されます。リモートノードの有効性を確かめる方法にはなりません。テストでは一度に一つだけ変更してください。まずルールモードで通常の接続を確認し、必要な場合に限り一時的にグローバルモードへ切り替えて比較した後、ルールモードに戻します。
ポリシーグループで利用可能なノードを選ぶ
プロキシまたはポリシーグループの画面を開き、手動選択用のグループを探します。グループ名は設定の作成者によって異なり、「プロキシ選択」などの場合もあれば、PROXYという名前ではない場合もあります。グループを展開してノードを選び、選択マークが移動したことを確認してください。候補に別のポリシーグループが含まれる場合は、選択した子グループの最終ノードまで確認します。ルールから参照されていないグループだけを変更しても、接続先は変わりません。
自動選択、フェイルオーバー、負荷分散の各グループは、それぞれの設定ロジックに従って出口を決めるため、メンバーを直接固定できないことがあります。初回のトラブルシューティングでは、設定に手動選択グループがあれば、ノードを一つ固定して自動切り替えの影響を抑えてください。その後、必要に応じて自動グループに戻します。ポリシーグループとルールの参照関係はルールによる通信の振り分けをご覧ください。ここでサブスクリプション内の振り分けルールを編集する必要はありません。
クライアントのテスト機能は、明らかに接続できない候補ノードを見つけるのに役立ちます。ただし結果は、テスト時の宛先、接続経路、環境を反映したものです。数値が表示されても、すべてのサイトに接続できるとは限りません。タイムアウトしても、ノードが恒久的に使えないとは限りません。ノードを選んだ後も、実際にアプリからアクセスし、接続ログを確認してください。速度テストの順位が変わっただけで、モード、DNS、TUNを同時に変更しないでください。問題の原因を特定しにくくなります。
プロキシ画面にDIRECTやREJECTなどのポリシーしか表示されず、想定したノードが見当たらない場合は、手順1に戻り、サブスクリプションが正しく読み込まれているか確認してください。ノード一覧は正常でも、選択直後にエラーが出る場合は、プロトコルや設定項目に関連するエラーかどうかを確認します。この段階が終わったら、使用中のモード、ポリシーグループ、選択した出口ノードを説明できる状態にしてから、システム接続を設定してください。
手順3:接続とシステム連携を有効にする
PCではまずシステムプロキシを確認
クライアントにカーネルの実行状態が表示されているか確認するか、ログでローカルプロキシポートの待ち受けを確認します。管理画面が開けるだけでは、カーネルが正常に起動しているとは限りません。ポートの競合や設定の解析失敗によって、カーネルがエラー状態で停止することがあります。起動を確認したら、「システムプロキシ」またはSet as system proxyをオンにします。システムプロキシに対応したブラウザーやアプリの通信が、ローカルポートへ送られるようになります。
一般的な設定では、混合ポートでHTTP接続とSOCKS接続の両方を受け付けますが、実際のポート番号は使用中のクライアント設定で確認してください。どの環境でも7890だと決めつけないでください。設定画面で混合ポートまたはHTTPポートを確認し、OSのプロキシアドレスが127.0.0.1と該当ポートを指しているか照合します。クライアントが自動で設定する場合、通常は手動入力は不要です。自動設定に失敗した場合や原因を調べる場合にのみ、システムのネットワークプロキシ設定を確認してください。
有効にしたら、ブラウザーのページを再読み込みします。ブラウザーに独自のプロキシ拡張機能が入っていると、システム設定を上書きする場合があります。一時的に無効にするか、システムプロキシを使うよう設定してください。コマンドライン、一部のゲーム、その他のアプリはシステムプロキシを参照しないことがあります。ブラウザーで接続できても、すべてのアプリに反映されるとは限りません。まずブラウザーで動作を確認し、その後、対象にするアプリを検討してください。
スマートフォンでシステム接続を許可する
スマートフォンでは、設定とノード選択が終わったらホーム画面の接続スイッチをタップします。初回接続時は、通常システムのVPN接続許可ダイアログが表示されます。インストールしたクライアントからの要求であることを確認して許可してください。VPNインターフェースは、アプリをシステムのネットワークに接続するための仕組みです。特定のプロトコルがサブスクリプションに含まれているという意味ではありません。接続が確立するとシステムにVPNアイコンが表示される場合がありますが、アイコンだけではシステム接続の起動しか確認できず、出口やルールの動作は次の手順で確認します。
許可を取り消した場合は、クライアントに戻って接続を再度有効にし、許可を完了してください。スマートフォンで別のVPNアプリが接続中なら、いったん切断してからやり直します。モバイルOSでは、特に画面ロック中や省電力中にアプリのバックグラウンド動作が制限されることがあります。バックグラウンドで実際に切断される場合に限り、システム設定でクライアントのバックグラウンド権限を確認してください。問題と無関係なバッテリー設定を最初からすべて変更する必要はありません。
より多くの通信を対象にする場合はTUNを有効化
TUNは仮想ネットワークインターフェースを通じて通信を取り込み、システムプロキシを参照しないアプリも対象にしたい場合に適しています。PC向けクライアントでは、サービスのインストール、管理者権限の付与、仮想インターフェースの作成確認が必要なことがあります。OSによって画面や権限の手順が異なるため、使用中のクライアントの案内に従ってください。権限エラーを回避しようとしてスイッチを何度も押さず、サービスがインストール済みで、カーネルが必要な設定に対応しているか確認します。
初回テストでは、PCのシステムプロキシやスマートフォンのVPN接続など、接続経路を一つ選んで確認してください。その後TUNを有効にする場合は、クライアントがシステムプロキシやルーティングを自動で変更するか確認します。両方を同時に使えるかどうかはクライアントの実装によるため、一律には判断できません。DNSの制御、ルーティング範囲、カーネルの機能については、プロトコルとカーネルの技術ガイドをご覧ください。
手順4:ルールと接続結果を確認する
クライアントの接続一覧またはログを開き、現在の設定ではプロキシ経由になるはずのサイトにブラウザーからアクセスします。ログイン不要のページを選び、再読み込みして新しい接続を発生させてください。開いたままのタブでは既存の接続が再利用されることがあります。また、ページがキャッシュから表示されると、新たな通信が発生していない場合があります。そのため、ブラウザーの表示だけではプロキシ経路を確認できません。
接続一覧で対象のドメインまたはアドレスを探し、適用されたルール、ポリシーグループ、最終的な出口を確認します。画面にDOMAIN-SUFFIX、GEOIP、MATCHなどと表示される場合、これはマッチング条件を示します。DIRECTは直接接続、REJECTは拒否を意味します。プロキシ経由の場合は、ポリシーグループ名とノード名が表示されることが一般的です。接続記録があり、ルールが想定どおりで、対象ページも表示できることを合わせて確認すると、より確実に動作を判断できます。
続いて、設定上は直接接続されるはずの宛先にアクセスし、直結ポリシーが適用されたか確認します。ルールモードでは宛先ごとに出口が異なるため、一部のページが直接接続されるのは通常の動作です。想定と異なり直結になっている場合は、ノードを切り替えるだけでなく、ルールとポリシーグループを確認してください。アプリが複数のドメインに通信する場合は、関連する接続も確認します。一つの接続だけでアプリ全体の経路を判断しないでください。
症状から問題の範囲を絞り込む
アクセスしても接続一覧に新しい記録がまったくない場合は、まずシステム接続を確認します。ブラウザーがシステムプロキシを参照しているか、プロキシ拡張機能が設定を上書きしていないか、スマートフォンのVPNが接続中か、想定したTUN経路が有効かを確認してください。クライアントによっては、特定のログレベルでしか詳細な記録を表示しません。「記録が表示されない」ことと「通信がカーネルに届いていない」ことを区別し、空の一覧だけで判断しないでください。
接続記録があるのにタイムアウトやエラーが繰り返される場合、リクエストは少なくともカーネルに到達しています。次に、選択したノードと宛先への到達性を確認してください。モードと接続方法はそのままにして、別の候補ノードへ一つだけ切り替えて再試行します。特定のサイトだけ失敗する場合は、そのサイトのルールと関連ドメインを確認してください。プロキシ経由の宛先がすべて失敗し、直結は正常な場合は、サブスクリプションの有効性、ノードの認証、サービスの稼働状況を確認します。
接続記録のポリシーが正しいのに、ブラウザーで証明書やセキュリティの警告が表示されても、接続するために証明書検証を無効にしないでください。まず端末の時刻、アクセス先のドメイン、システムの信頼設定を確認します。サポートを依頼する場合は、クライアント名、OS、接続方法、エラーの原文、発生までの手順を伝えてください。ログにはドメイン、アドレス、サブスクリプション情報が含まれることがあります。送信前に、今回のエラーに関係する箇所だけを残し、機密情報を削除してください。
動作確認が終わったら、現在の設定、ルールモード、選択したポリシー、接続方法など、正常に動作した設定を記録しておきましょう。後で「Clashがネットに繋がらない」ときは、この状態と比較します。一度に変更するのは一つの設定だけにし、その都度確認してください。ポート、DNS、ノード、モードをまとめて変更するより原因を特定しやすく、正常だった設定が把握できない状態になるのも防げます。
日常の操作:切断とサブスクリプションの更新
PCで完全に停止する場合は、まずシステムプロキシまたはTUNをオフにしてから、クライアントの終了操作でアプリを終了します。プロセスを直接終了した後も、システムにローカルポートを指すプロキシ設定が残っていると、ブラウザーが停止中のサービスに接続しようとすることがあります。その場合は、クライアントを再起動してシステムプロキシをオフにするか、システムのネットワーク設定から今回追加した手動プロキシを削除してください。管理対象端末の設定は自分で削除しないでください。
スマートフォンでは、クライアントの接続スイッチまたはシステムのVPN管理画面から切断します。次回は、現在の設定とノードが想定どおりか確認してから再接続してください。毎回サブスクリプションを追加し直す必要はありません。OSの更新後に再認証を求められた場合は、新しい許可画面に従って設定し、接続をもう一度確認します。
サブスクリプションを更新するには、設定一覧で該当項目の更新ボタンを押し、処理が終わるまで待ってから、現在の設定にも反映されたことを確認します。更新によってノードの追加・削除やポリシーグループの変更、設定内容の上書きが行われることがあります。以前選択していたノードがなくなる場合もあります。クライアントが上書き設定や設定のマージに対応している場合は、ローカルのカスタマイズを専用の独立した項目に保存してください。リモートファイルを一時的に編集するだけでは、変更を長期保存できません。
このページの手順で、基本的な接続設定は完了です。用語を確認したい場合はプロキシと通信振り分けの用語解説をご覧ください。プロトコルの比較、mihomoカーネルの機能、ルールの調整については技術ガイドで解説しています。クライアントを切り替える前に、現在の接続方法と設定の入手元を記録してください。そのうえでインストーラーページからプラットフォームに合ったものを選ぶと、クライアントの違いをサブスクリプションの不具合と取り違えずに済みます。