FAQ
Clash よくある質問
サブスクリプションの読み込み、ノードの接続、TUN の権限、システムプロキシなど、よくある質問への対処方法をまとめました。下記4つのカテゴリーから該当する質問へ移動できます。項目をクリックすると回答全文が展開されます。インストーラーとサブスクリプションの読み込み手順はダウンロードページと使い方ガイドをご覧ください。
基礎知識
Clash とは何ですか?今も使い続けられますか?
Clash はルールベースの振り分けを行うネットワークプロキシクライアントです。設定ファイル内のノードとルールを読み込み、各通信リクエストをプロキシ経由にするか直接接続にするかを判断します。オリジナルの Clash 内核リポジトリはすでにアーカイブされ更新が止まっていますが、コミュニティが保守する mihomo 内核は継続的に更新され、既存の設定形式にも対応しています。
現在は mihomo をベースにした Clash Verge、Mihomo Party、FlClash などのクライアントが問題なくダウンロード・利用できます。
Clash for Windows の保守終了後、どのクライアントに移行すべきですか?
Clash for Windows は 2023 年末に保守が終了し、内核やセキュリティの更新は行われていません。Windows では Clash Verge または Mihomo Party への移行がおすすめです。どちらも mihomo 内核をベースにしており、サブスクリプションの読み込み、ルールによる振り分け、TUN モードに対応し、既存のサブスクリプションリンクをそのまま使い続けられ、再設定は不要です。
各プラットフォーム向けインストーラーは本サイトのダウンロードページから入手できます。
Clash と mihomo 内核はどういう関係ですか?
Clash はもともとのオープンソース内核プロジェクトの名称で、mihomo(旧称 Clash Meta)はそれをベースに派生し継続保守されている内核フォークで、より多くのプロキシプロトコルとルールタイプに対応しています。現在の主要クライアントに内蔵されているのはいずれも mihomo 内核であり、一般に「Clash クライアント」と呼ばれるものは、この mihomo をベースにしたグラフィカルインターフェースのソフトウェアを指すことが多いです。
サブスクリプションリンクとは何ですか?どこで取得できますか?
サブスクリプションリンクとは、サービス提供元から発行される URL のことで、クライアントがこの URL にアクセスすると、ノード一覧と振り分けルールを含む完全な設定ファイルをダウンロードできます。サブスクリプションリンクは、利用しているプロキシサービスのユーザーセンターから取得する必要があります。
本サイトはクライアントのインストーラーと使い方の解説のみを提供しており、ノードやサブスクリプションサービスは提供していません。
ルールモード、グローバルモード、直接接続モードの違いは何ですか?
ルールモードは設定ファイル内の振り分けルールを上から順に照合し、プロキシルールに一致した通信はノード経由に、それ以外は直接接続になります。日常利用で推奨されるデフォルトモードです。グローバルモードはすべての通信を現在選択中のノードに送信するモードで、ルールの動作を一時的に検証したい場合や、全通信をプロキシ経由にしたい場合に向いています。直接接続モードはノードを使用せず、すべての通信を端末から直接送信します。
モードを切り替えた後は、接続ページで既存の接続を切断し、古い経路のまま通信が継続されないようにすることをおすすめします。
導入設定
Windows インストール時にウイルス対策ソフトや SmartScreen にブロックされた場合はどうすればよいですか?
一部のウイルス対策ソフトはプロキシ系ツールを誤検知することがあり、SmartScreen もインストーラーの署名が新しいために警告を表示することがあります。インストーラーが本サイトのダウンロードページまたはクライアントの公式配布ルートから入手したものであることを確認した上で、SmartScreen の警告で「実行」を選択するか、ウイルス対策ソフトでインストール先フォルダを信頼リストに追加してください。
ダウンロード中にファイルが自動的に削除される場合は、リアルタイム保護を一時的に無効にしてインストールし、完了後に再度有効にしてください。
macOS で「開けません。Apple がマルウェアを含んでいないか確認できないため」と表示された場合の対処法は?
これは macOS が未公証のアプリに対して行うデフォルトのブロックであり、インストーラー自体に問題があるわけではありません。「システム設定 → プライバシーとセキュリティ」ページの下部でブロックされたアプリを見つけ、「このまま開く」をクリックしてください。あるいはターミナルで sudo xattr -cr の後にアプリの完全パス(/Applications 内の対象 .app フォルダなど)を指定して実行し、隔離属性を解除してから起動する方法もあります。
Android で Clash クライアントをインストールしてサブスクリプションを読み込むには?
Android では Clash Meta for Android(CMFA)または FlClash のインストールをおすすめします。本サイトのダウンロードページから APK を取得すると、システムが「不明な提供元のアプリのインストールを許可」の権限を要求するので、案内に従って許可すればインストールが完了します。
初回起動時は設定ページで新規設定を作成し、サブスクリプションリンクを貼り付けて保存します。メイン画面に戻って起動ボタンをタップすると、システムから VPN 接続のリクエストが表示され、許可するとローカルの仮想ネットワークアダプタが作成されてプロキシが開始されます。
サブスクリプションリンクをクライアントに読み込む方法は?
Clash Verge を例にすると、クライアントの「サブスクリプション」ページを開き、入力欄にサブスクリプションリンクを貼り付けて読み込みボタンをクリックすると、クライアントが自動で設定ファイルをダウンロードし、ノード数と通信量の情報が表示されます。読み込みが完了したら「プロキシ」ページで遅延が正常なノードを選択し、設定でシステムプロキシを有効にすれば反映されます。
他のクライアントも手順はほぼ同様で、リンクを貼り付ける、読み込む、ノードを選ぶ、プロキシを有効にする、という4ステップです。詳しい図解付きの手順は使い方ガイドをご覧ください。
TUN モードを有効にする際に管理者権限が必要なのはなぜですか?
TUN モードは仮想ネットワークアダプタを作成してシステムの全通信を引き受ける仕組みで、仮想ネットワークアダプタの作成はシステムレベルの操作にあたります。Windows では管理者権限が必要、または事前にシステムサービスをインストールする必要があり、macOS と Linux では管理者パスワードの入力による承認が必要です。
Clash Verge を例にすると、初めて TUN を有効にする前に設定で「サービスをインストール」を実行しておく必要があり、インストール完了後は毎回管理者権限でクライアントを起動しなくても TUN の切り替えが可能になります。
使い方のコツ
ノードの遅延を測定して使えるノードを選ぶには?
クライアントの「プロキシ」ページで遅延測定アイコンをクリックすると、クライアントがテストアドレスへリクエストを送信し、各ノードのミリ秒数を表示します。一般的に 200ms 以内であれば快適に使用でき、数値が低いほど良好です。タイムアウト表示のノードは現在利用できません。
よく使うプロキシグループは url-test タイプに設定しておくと、クライアントが自動で最も遅延の低いノードを選択してくれるため、手動で一つずつ試す必要がなくなります。
TUN モードとシステムプロキシはどちらを使うべきですか?
システムプロキシはシステムのプロキシ設定に従うアプリにのみ有効で、ブラウザや大半のデスクトップアプリに適用され、オーバーヘッドも低いため日常的にはこちらを優先すべきです。コマンドラインツールや一部のゲーム、プロキシ設定を読み取らないソフトウェアはシステムプロキシの対象外となるため、こうした場合は TUN モードを有効にし、仮想ネットワークアダプタでネットワーク層から全通信を引き受ける必要があります。
両者を同時に有効にする必要はなく、TUN を有効にする場合はシステムプロキシを無効にして、通信が二重に処理されるのを避けることをおすすめします。
特定のサイトやアプリをプロキシを通さず直接接続にするには?
設定ファイルの rules セクションの上部に該当するルールを追加します。DOMAIN-SUFFIX でサイトのドメインを一致させて DIRECT を指定するか、PROCESS-NAME でプロセス名を一致させて指定したアプリを直接接続にします。ルールは上から順に照合され、最初に一致したものが適用されるため、独自のルールは汎用ルールより前に配置してください。
サブスクリプションを更新するたびに手動での変更が上書きされてしまう場合は、グローバル拡張設定やマージスクリプトに対応したクライアント(Clash Verge など)で独自ルールを管理すれば、サブスクリプション更新後も保持されます。
サブスクリプションは自動更新できますか?設定方法は?
可能です。主要なクライアントはいずれもサブスクリプションごとに更新間隔を設定できます。例えば Clash Verge のサブスクリプション編集ページで分単位の間隔を入力すると、クライアントが周期的に最新の設定を自動取得します。Mihomo Party や FlClash にも同様の設定項目があります。間隔は 1440 分(1日1回)に設定しておくと、ノードが変更されても手動操作が不要になります。
自動更新が失敗する場合は、更新時に「プロキシを使用して更新」にチェックが入っているかを確認し、現在の回線からサブスクリプションのアドレスにアクセスできるかを確認してください。
トラブル対処
サブスクリプションの読み込みに失敗したり、無効と表示されたりする場合の対処法は?
次の順序で確認してください。まずリンクが完全にコピーされており、余分な空白や改行が含まれていないかを確認します。次にブラウザでサブスクリプションリンクを直接開いてみて、ファイルがダウンロードできればリンク自体は有効です。ブラウザでも開けない場合は、現在のネットワークでサブスクリプションのドメインがブロックされている可能性があるため、まず利用可能なノードに接続した上で「プロキシを使用して更新」にチェックを入れて再試行してください。フォーマットエラーが表示される場合は、サービス提供元が Clash 形式のサブスクリプションを提供しているかを確認し、必要に応じて提供元の案内に従いリンクにフォーマット指定パラメータを追加してください。
これでも解決しない場合は、サブスクリプションの有効期限が切れていないかサービス提供元に確認してください。
ノードがすべてタイムアウトになり接続できない場合の確認方法は?
まずサブスクリプションを一度更新し、ノード情報が古くなっていないかを排除します。次に、プロキシを使わない状態で端末のネットワークが正常かを確認します。ネットワークは正常なのにすべてのノードがタイムアウトする場合は、次の点を順に確認してください。システム時刻が正確か(一部のプロトコルは時刻のずれに敏感です)、ファイアウォールやウイルス対策ソフトがクライアントのプロセスをブロックしていないか、遅延測定のテストアドレスに到達できるか(設定でテスト URL を変更できます)。
個別のノードがタイムアウトになるのは通常の現象で、他の地域のノードに切り替えれば問題ありません。すべてタイムアウトし、上記もすべて正常な場合は、サービス提供元側の障害である可能性が高いため、サービス提供元に確認してください。
システムプロキシを有効にしたのにブラウザでネットに接続できない場合の確認方法は?
まずクライアントのメイン画面でプロキシが起動中と表示されているか、「プロキシ」ページで選択中のノードの遅延測定が正常でタイムアウトになっていないかを確認します。次にシステムプロキシのポートとクライアントのリスニングポートが一致しているかを確認してください。デフォルトの混合ポートは 7890 です。ブラウザにプロキシ切り替え用の拡張機能を導入している場合は、システムに従う設定にするか、127.0.0.1:7890 を直接指定してください。
それでも改善しない場合はグローバルモードに切り替えてテストします。グローバルモードでは利用できるがルールモードでは利用できない場合は、振り分けルールが一致していないことが原因なので、設定内のルールと最終的な MATCH の指定先を確認してください。
Microsoft Store(UWP)アプリがプロキシを経由できない場合の対処法は?
Windows はセキュリティ方針により、UWP アプリが端末のループバックアドレスにアクセスすることをデフォルトで禁止しているため、こうしたアプリはローカルのプロキシポートに接続できません。対処法は2つあります。Clash Verge などのクライアント設定で UWP ツールまたはループバック除外の項目を探し、通信が必要な Store アプリのチェックを入れて制限を解除する方法。あるいは TUN モードを有効にしてネットワーク層で通信を引き受け、ループバック制限を回避することで、すべての UWP アプリに一括で対応する方法です。
クライアントで「ポートが使用中」と表示され起動できない場合の対処法は?
多くの場合、7890 などのデフォルトポートが他のプログラムに使用されていることが原因で、よくある原因は前回起動したクライアントのプロセスが完全に終了していない、または別のプロキシソフトが同時に動作していることです。まずタスクマネージャーで残っているクライアントおよび内核のプロセスを終了してから再起動してください。他のプログラムがそのポートを使用する必要がある場合は、クライアント設定で混合ポートを 7891 など未使用のポートに変更し、システムプロキシの設定も合わせて更新してください。
Windows では netstat -ano とタスクマネージャーを組み合わせて、ポートを占有しているプロセスを特定できます。