Clashのよくある質問
サブスクリプション、システムプロキシ、TUN、接続トラブル。
まず問題が発生している層を特定し、該当する設定を見直しましょう。
カテゴリーから選び、質問をクリックして回答を開いてください。画面名は旧版Clash for Windowsを例にしています。新しいクライアントでは項目名や場所が異なる場合があります。
基礎知識
クライアント、コア、プロキシサービスを切り分けて、異なる層の問題を混同しないようにしましょう。
Clash for Windowsはまだ更新されていますか?新しいPCには何をインストールすればよいですか?
Clash for Windowsの元プロジェクトはすでに開発が終了しています。旧インストーラーに新しいプロトコルへの対応やコアの修正、Windows互換性の更新が追加されることはありません。既存環境で動作していても、新しいデバイスで使い続けるのに適しているとは限りません。新規導入ではClash Plus、Clash Verge Rev、FlClashを比較し、システムのアーキテクチャと設定ファイルの形式を確認してください。移行前にサブスクリプションの入手先、自分で追加したルール、選択中のプロキシグループを控えておきましょう。旧フォルダーにそのまま上書きしたり、旧コアで読み込める設定がすべてのクライアントで使えると考えたりしないでください。
クライアントをインストールしたのに、サブスクリプションや設定ファイルが必要なのはなぜですか?
クライアントは設定を読み込み、ローカルポートで接続を待ち受けて通信を転送しますが、それ自体が利用可能なプロキシサービスというわけではありません。サブスクリプションは通常サービス提供元から発行され、ノード、プロキシグループ、ルールなどが含まれます。プランの有効期限や通信量の上限が設定されている場合もあります。手元のURLがクライアント対応の設定用サブスクリプションであり、ログインページや決済ページではないことを確認してください。サブスクリプションURLからアカウントにアクセスできる場合があるため、パスワードと同じように安全に保管しましょう。トラブルの相談ではエラー内容だけを伝え、URL全体を公開コメント欄や見知らぬ変換サイトに貼り付けないでください。
Clash for Windows、Mihomo、設定ファイルにはどのような関係がありますか?
デスクトップクライアントは設定のインポート、プロキシグループの選択、システムプロキシの切り替えなどを行う画面を提供します。コアが実際の通信を処理し、YAML形式の設定ファイルがポート、DNS、ノード、ルールを定義します。Clash for Windowsの旧コアとMihomoを使用する新しいクライアントは、完全に同じものではありません。フィールドやプロトコルによっては、特定のコアでしか利用できない場合があります。設定の解析エラーが出たら、何度も再インストールするのではなく、まずクライアントのコアとフィールドの対応状況を確認してください。コアだけをダウンロードしても、デスクトップ画面やサブスクリプション管理機能は使えるようになりません。
Windows、Android、iOSで同じサブスクリプションを使えますか?
共用できるかどうかは、サービス提供元のデバイス制限、クライアントが対応するサブスクリプション形式、各プラットフォームのコアが対応するプロトコルやフィールドによって異なります。Windowsでインポートできても、スマートフォンのクライアントですべて利用できるとは限りません。サービス提供元のページでクライアントに合った形式を選び、デバイスごとにインポートしてください。接続数や登録デバイス数の上限を超えた場合は、契約プランの見直しが必要です。iOS向けのClash PlusはダウンロードページからApp Storeのリンクと公式サイトclashplus.ioを確認できます。モバイル端末の通信をプロキシに通す方法は、Windowsのシステムプロキシ設定をそのまま適用できません。
GlobalモードやTUNモードなら、すべての通信をプロキシ経由にできますか?
モード名だけでは判断できません。Globalはコアに渡された接続にどのプロキシグループを使うかを決めますが、すべてのアプリの接続をコアに渡す機能ではありません。TUNは仮想ネットワークインターフェースを使い、ルーティング条件に合う通信を取り込みますが、ルートの除外、DNS、IPv6、ほかのVPNの影響を受けることがあります。まず通信がクライアントに渡っているかを確認し、その後、実際に適用されたルールとプロキシグループを調べてください。機密性の高い用途では、対象アプリ、DNS、IPv6の経路を個別に確認しましょう。ブラウザーの接続元IPが変わっただけでは、PC全体の通信がすべて取り込まれている証拠にはなりません。
導入・設定
アーキテクチャ、設定の有効化、待ち受けポートを確認し、まず基本の接続を確立しましょう。
Windows版はx64とARM64のどちらを選べばよいですか?
Windowsの「設定」から「システム」→「バージョン情報」を開き、システムの種類とプロセッサを確認してください。一般的なIntelまたはAMD搭載のデスクトップPCでは、通常x64を選びます。ARMプロセッサ搭載のデバイスでは、クライアントが提供するARM64版を優先してください。Windows 10やWindows 11という名称だけでアーキテクチャを判断しないでください。ダウンロードページにないアーキテクチャは、ファイル名を変更しても対応できません。インストール後に起動しない場合は、表示された内容を記録し、Windowsのバージョン、アーキテクチャ、実行に必要なコンポーネントを確認しましょう。最初からセキュリティ機能を無効にしたり、手当たり次第に互換モードを変更したりしないでください。
サブスクリプションを初めてインポートした後、設定が有効になったか確認するには?
Clash for WindowsのProfilesページにサブスクリプションURLを貼り付けてダウンロードし、設定が一覧に表示されたらクリックして選択します。他のクライアントでは「設定」や「サブスクリプション」などの名前になっています。次にProxiesを開き、プロキシグループとノードが読み込まれていることを確認して、使うプロキシを選択してください。最後にGeneralへ戻ってSystem Proxyを有効にし、対象のWebサイトにアクセスします。ConnectionsまたはLogsに該当する通信が記録されているかも確認しましょう。設定のダウンロードだけでは不十分です。設定が選択されていない、プロキシグループがDIRECTのまま、システムプロキシが無効といった状態では、通信が直接接続になることがあります。
TUNを有効にすると権限不足と表示されます。まず何を確認すればよいですか?
まず、クライアントが現在のWindowsバージョンのTUN方式に対応しているか確認し、サービスモードがインストールされ正常に動作しているか調べてください。旧版Clash for Windowsでは、通常Service Modeの設定が必要です。新しいクライアントには専用のサービスインストール項目がある場合があります。異なるクライアントのサービスプログラムを混用しないでください。クライアントの説明に従って管理者権限で一度許可してから、TUNを有効にします。それでも失敗する場合は、サービスの起動や仮想ネットワークアダプターに関するログを確認し、ほかのVPNを一時的に無効にして比較してください。会社のPCでデバイスポリシーによる制限がある場合は、管理者に相談し、組織の権限管理を回避しないでください。
YAMLのインポートで解析エラーが出ます。サブスクリプションを更新しても直らないのはなぜですか?
まず、エラーが示す行番号とフィールドを確認してください。YAMLはインデントで階層を表すため、スペースを使い、タブを混ぜないようにします。同じ階層のフィールドは位置をそろえてください。次に、ダウンロードした内容が設定ファイル本体か確認します。ログインページ、期限切れの案内、サイトの認証ページを取得している場合もあります。書式が正しいのに不明なプロキシタイプや未対応のフィールドと表示されるなら、コアが古いかサブスクリプション形式が合っていない可能性があります。元ファイルを残したうえで、変更は最小限にし、一度に一か所だけ修正してください。エラーのフィールドを一括置換で削除すると、プロキシグループの参照が無効になり、新たなエラーにつながることがあります。
ポート7890が使用中です。接続を復旧するにはどこを変更すればよいですか?
まず、重複して起動しているプロキシクライアントを終了し、同じプログラムを二重に起動していないか確認してください。複数のプログラムを同時に使う場合は、それぞれ異なる待ち受けポートを割り当て、現在有効な設定またはクライアントの上書き設定で該当フィールドを変更します。mixed-portはHTTPとSOCKSで共通のポート、portとsocks-portは別々のポートです。同じ値として扱わないでください。変更後に設定を再読み込みし、ログにポートのバインド失敗が出ていないことを確認します。その後、システムプロキシやブラウザー、ターミナルに手動で入力したプロキシアドレスも更新してください。画面に新しいポートが表示されても、外部のアプリが自動で変更されるわけではありません。
使い方
プロキシモードは接続の処理方法を、システム設定はクライアントに渡す接続を決めます。
普段使いにはRule、Global、Directのどれを選べばよいですか?
ルールが設定された構成なら、通常はRuleから使い始めます。接続はルールの順に判定され、該当するプロキシグループへ振り分けられます。Globalは、ルール振り分けが原因かを短時間で切り分けるときに便利ですが、全体用のプロキシグループで有効なプロキシを選ぶ必要があります。Directは、コアに渡された接続を直接アクセスさせます。モードを切り替えても、無効なサブスクリプションは修復されず、クライアントに渡されていないアプリが突然プロキシ経由になることもありません。調査後は元のルールモードに戻し、対象ドメインに適用されたルールとプロキシグループを確認してください。本来修正すべき振り分け設定を隠すために、Globalを常用しないでください。
System Proxyを有効にしても、ブラウザーやターミナルがプロキシを使わないのはなぜですか?
System Proxyが変更するのは主にWindowsのシステムプロキシ設定です。その設定に従うアプリだけがプロキシを使用します。まずWindowsの「設定」から「ネットワークとインターネット」→「プロキシ」を開き、手動プロキシのアドレスとクライアントのポートが一致しているか確認してください。ブラウザー拡張機能がシステム設定を上書きしていないかも調べます。ターミナル、開発ツール、ゲームは独自のプロキシ設定を使う場合や、システムプロキシを参照しない場合があります。対象アプリでリクエストを一度実行し、Connectionsを確認してください。記録がなければアプリの接続方法を、記録があるのに失敗する場合はルール、ノード、DNSを調べます。より多くのアプリの通信を取り込みたい場合は、TUNの利用を検討してください。
Microsoft StoreなどのUWPアプリがネットにつながりません。ループバック制限にはどう対処しますか?
一部のUWPアプリはAppContainerのネットワーク分離により、PC上のプロキシ待ち受けアドレスに直接アクセスできません。まず通常のブラウザーで同じプロキシを使って通信できることを確認し、特定のアプリだけに問題が起きているか切り分けてください。旧版Clash for Windowsに付属するUWP Loopbackツールでは、指定したアプリにループバックの例外を設定できます。通常は管理者権限が必要です。本当に必要なアプリだけを選択し、アプリの更新後は設定を再確認してください。ループバック例外は万能なネットワーク修復ではありません。TUNを使っても解決しない場合は、アプリの認証、システム時刻、サービスの状態、実際の接続ログも確認しましょう。
Start with Windowsを有効にしたのに、起動後すぐ接続できないのはなぜですか?
Start with Windowsは通常、ログイン時にクライアントを起動するかどうかを設定する項目です。サブスクリプションの更新、設定の選択、システムプロキシやTUNの復元まで保証するものではありません。まずタスクマネージャーの「スタートアップ アプリ」で無効になっていないか確認し、再起動後にクライアントが実際に起動するかテストしてください。クライアントが起動しても接続できない場合は、サービスモード、現在の設定、プロキシグループの選択を確認します。ネットワークの準備が整う前に起動し、サブスクリプションの更新に失敗している可能性もあります。ポータブル版のフォルダーを移動すると、以前の起動項目が存在しない場所を参照することがあります。新しい場所で設定し直し、インストール版とポータブル版の起動項目を両方残さないようにしてください。
Allow LANを有効にしたのに、スマートフォンからPCのプロキシに接続できないのはなぜですか?
Allow LANは、ローカルネットワークから待ち受けサービスへのアクセスを許可する設定にすぎません。スマートフォンとPCが相互通信できるネットワークに接続されている必要があります。また、スマートフォンにはPCのローカルIPアドレスと正しいHTTPプロキシポートを手動で設定してください。127.0.0.1は使用できません。待ち受けアドレス、Windowsファイアウォールの受信規則、ルーターのゲストネットワークやデバイス間通信の隔離設定も確認しましょう。信頼できるネットワークで必要なポートだけを開き、公共のネットワークでは速やかに無効にしてください。スマートフォンのWi-Fiに設定する手動プロキシは通常すべてのアプリに適用されず、TUNを有効にする設定でもありません。対象アプリで動作を確認してください。
トラブル対処
現在の設定を残し、一度に一つの条件だけを変更して、ログと実際のリクエストで結果を確認しましょう。
Clashのサブスクリプションを更新できません。有効期限、ネットワーク、形式の問題をどう切り分けますか?
まず現在使える設定を残し、すぐに削除しないでください。Profilesの更新メッセージやログを確認します。401や403は権限、リンクの無効化、サイト側のブロックなどが原因の可能性があります。404の場合はURLを確認し、タイムアウトの場合はネットワークやドメイン名の解決を優先して調べてください。サービス提供元のアカウントページで有効期限、通信量、サブスクリプションURLに変更がないか確認します。データを取得できても解析できない場合は、返された内容がWebページではないか、選択したサブスクリプション形式がコアに合っているかを確認してください。更新リクエストが現在のプロキシ経路に依存する場合があります。クライアントの対応状況に応じて、直接接続での更新や利用可能なノードへの切り替えを試せますが、サブスクリプションURLを見知らぬ変換サービスに渡さないでください。
すべてのノードがタイムアウトします。サブスクリプションを買い直す必要がありますか?
一度の速度測定だけで結論を出さないでください。PCの時刻が正確か、通常のネットワーク接続が使えるか、サブスクリプションの有効期限が切れていないかを確認し、別のノードや別のネットワークも試します。遅延テストの結果は、テスト先、タイムアウト時間、リクエスト方式に左右されます。テストに失敗しても、すべての実通信が失敗するとは限りません。対象サイトに実際にアクセスし、Logsで名前解決エラー、接続タイムアウト、認証エラーを切り分けてください。異なるネットワークでもすべてのノードが使えない場合は、発生時刻と個人情報を伏せたエラー記録をサービス提供元に伝えます。サーバーの認証情報を公開したり、遅延の数値だけを見てクライアントを何度も再インストールしたりしないでください。
ノードには接続できるのに一部のWebサイトが開きません。DNSリークや名前解決の異常を調べるには?
まず接続記録で、対象ドメインの通信がクライアントに渡っているか、どのプロキシグループが適用されたかを確認します。次にログでDNSクエリの失敗がないか調べてください。ブラウザーのセキュアDNS、システムDNS、TUNによるDNSの取り込み、設定ファイルの名前解決ルールは、それぞれ異なる経路を使う場合があります。パブリックDNSのアドレスを一つ変更しただけで解決したと判断しないでください。現在のクライアントのドキュメントで、nameserver、fallback、fake-ipなどの設定が対応しているか確認し、IPv6が想定した経路を通っているかも調べます。DNS検査の結果は、実際の名前解決先やルールと合わせて判断してください。サイトが開かない原因は、ノードの接続元に対する制限、キャッシュ、Webサイト側の障害である可能性もあります。
Clashを終了したらPC全体がネットにつながらなくなりました。Windowsのネットワークを復旧するには?
まずWindowsの「設定」から「ネットワークとインターネット」→「プロキシ」を開き、残っている手動プロキシを無効にします。組織で必要な設定はそのまま残してください。クライアントを再度起動し、System Proxyを無効にしてから通常の手順で終了する方法もあります。TUNを使用していた場合は、クライアントでTUNを無効にし、関連するルートが解放されたことを確認してください。ほかのVPNが動作中でないかも調べます。ブラウザーは復旧してもターミナルが使えない場合は、ターミナルのセッションやツール内に手動プロキシが残っていないか確認しましょう。最初からすべてのネットワークアダプターを削除したり、ネットワーク全体をリセットしたりせず、明らかに残っている設定から対処してください。企業VPNや仮想マシンのネットワークに影響するおそれがあります。
トラブルの報告に役立つログはどれですか?公開時に隠すべき情報は?
OSとアーキテクチャ、クライアント名、コアの情報、使用中のモード、問題が発生したおおよその時刻を記録します。再現できる操作を一度行って短時間のログを収集し、すべてのアプリで失敗するのか特定のアプリだけなのか、試した切り分け方法と結果も記載してください。公開前に、サブスクリプションURL全体、アカウント情報、ノードのパスワード、アクセストークン、不要な接続先を削除します。設定フォルダー全体をそのままアップロードしないでください。スクリーンショットやテキストに認証情報が含まれていないか確認しましょう。元のログは手元での確認用に保管し、共有するコピーには問題の特定に必要な情報だけを残してください。