FAQ / TROUBLESHOOTING

Clashのよくある質問とトラブルシューティング

設定経路に沿って問題を切り分けます。まずクライアントとコアの状態を確認し、次にサブスクリプション、待ち受けポート、システムプロキシ、TUNルート、DNSを確認します。各回答では、そのまま実行できる確認手順を示しています。

TRACK 01

基礎知識

まずクライアント、コア、設定、実行モードを区別し、画面の問題、コアの問題、回線の問題を混同しないようにします。

Clash、Clash Meta、mihomoの違いと関係は?

Clashは通常、ルールベースのプロキシツールとそのクライアントエコシステムを指します。オリジナルのClashコアは開発が終了しており、Clash Metaは従来の設定体系を拡張した派生版です。その後はmihomoの名称で開発が続いています。現在、多くのデスクトップ・モバイルクライアントが実際にはmihomoコアを使用していますが、画面上ではClashエコシステムの名称が引き続き使われています。

クライアントとコアの違いは?

コアはポートの待ち受け、プロキシ接続の確立、DNS解決、ルーティングルールの照合を担当します。クライアントはGUI、サブスクリプション管理、システムプロキシの切り替え、ログ表示を提供します。GUIクライアントには通常、対応するコアが含まれており、mihomoを単独で動かす構成はサーバーやルーターでよく使われます。

サブスクリプションURLとローカルYAML設定の違いは?

サブスクリプションURLはサービス提供元が管理し、クライアントはURLからノードやプロキシグループを再取得できます。ローカルYAMLファイルはユーザーが直接保存・編集するため、固定ルールや検証用設定、オフライン管理に適しています。更新時に直接編集した内容が上書きされる場合があるため、長期的に残す変更はクライアント対応のオーバーライドやマージ設定に分けてください。

Rule・Global・Directモードはそれぞれどんな用途に適していますか?

RuleモードはYAMLのルールに従って通信先を順番に判定するため、日常利用に適しています。Globalモードは大半の通信を1つのプロキシポリシーに渡し、ノードの短時間テストなどに使います。Directモードは通信を直接接続するため、問題の原因がプロキシ経路にあるかを確認する際に便利です。テスト後は通常、Ruleモードに戻してください。

mixed-port・port・socks-portはどのように選べばよいですか?

mixed-portはHTTPとSOCKS5の両方を受け付けるため、デスクトップでアプリのプロキシを手動設定する際に便利です。portはHTTPプロキシのみ、socks-portはSOCKS5プロキシのみを提供します。ポート番号は変更できますが、他のアプリと重複しないようにし、ブラウザー、ターミナル、システムプロキシにはクライアントが実際に待ち受けているアドレスを入力してください。

TRACK 02

インストールと設定

システムアーキテクチャ、設定のインポート、権限の付与から確認し、クライアントが設定を読み込み、対応するコアを起動できる状態にします。

Windows・macOS・Androidではどのタイプのクライアントを選べばよいですか?

現在もメンテナンスされており、使用中のシステムアーキテクチャに対応したクライアントを優先してください。Windowsでは一般的なx64環境か、macOSではIntelかApple Siliconかを確認します。Androidでは端末のアーキテクチャとOSバージョンに合うパッケージを選びます。一般ユーザーにはGUIクライアントが適しており、サーバーではmihomoの単独導入を検討します。

サブスクリプションをインポートしてもノードが表示されないのはなぜですか?

まず、サービスの管理画面URLではなく、完全なサブスクリプションURLをインポートしているか確認します。次に、設定の更新履歴とコアのログを確認してください。ネットワークエラーはURLにアクセスできないこと、解析エラーは取得内容が有効なYAMLではないことを示します。ノード一覧が空の場合は、サブスクリプションの内容またはクライアントの互換性に問題がある可能性があります。ブラウザーでURLを開き、ログインページへリダイレクトされていないか確認することもできます。

ローカルYAML設定ファイルはどこに置けばよいですか?

クライアントによって設定ディレクトリは異なります。ネット上の古いパスに直接コピーせず、クライアントの「設定」「Profiles」「設定ディレクトリを開く」などの入口から場所を確認してください。インポート前に元ファイルを保存し、拡張子が.yamlまたは.ymlであることを確認します。手動編集後は設定チェックを実行してからコアを再読み込みし、インデントミスによる起動失敗を防ぎます。

TUNモードの有効化に管理者権限やシステム権限が必要なのはなぜですか?

TUNモードでは仮想ネットワークインターフェースを作成し、システムのルーティングを変更します。そのためWindowsでは管理者権限、macOSではネットワーク拡張機能や補助コンポーネントのインストール、AndroidではVPN許可が必要になる場合があります。権限を拒否すると、画面上は有効に見えても通信がTUNインターフェースに入らないことがあります。再度許可してからルート状態を確認してください。

macOSで「アプリを開けません」と表示された場合はどうすればよいですか?

まず、インストールパッケージがMacのチップアーキテクチャに合っているか確認し、アプリを「アプリケーション」フォルダへ移動します。システムのセキュリティ設定で起動が阻止された場合は、「システム設定」の「プライバシーとセキュリティ」でブロック履歴を確認し、表示される案内に従って開くことを許可してください。同名の古いバージョンを複数残すと、ログイン項目や補助コンポーネントが旧パスを参照し続ける場合があります。

TRACK 03

活用方法

システムプロキシ、TUN、アプリ内プロキシでは通信の引き受け範囲が異なります。接続ログで対象プログラムが実際にどの経路を使っているか確認してください。

システムプロキシを有効にしてもブラウザーが直接接続する場合は?

まず、システムのネットワーク設定でHTTP、HTTPS、SOCKSプロキシに現在のアドレスとポートが入力されているか確認し、クライアントの待ち受けポートが変わっていないかも確認します。一部のブラウザー、ゲーム、コマンドラインツールは独自のプロキシ設定を使い、システムプロキシを参照しません。その場合は個別にプロキシを設定するか、互換性を確認したうえでTUNモードを使用します。

WindowsのUWPアプリがプロキシを通らない場合はどうすればよいですか?

一部のUWPアプリはループバックアクセスの制限により、ローカルのClash待ち受けポートへ接続できません。クライアントのUWPループバックツールを使い、通信が必要なアプリにLoopback Exemptionを有効にしてから、アプリを再起動してください。ローカルプロキシへのアクセスが本当に必要な項目だけを選択します。Windowsの更新やアプリの再インストール後は、再確認が必要になる場合があります。

LAN内の端末からパソコン上のClashを使うには?

クライアントでLAN接続の許可を有効にし、待ち受けアドレスが127.0.0.1だけに制限されていないことを確認します。他の端末では、プロキシサーバーにパソコンのLANアドレスとClashの待ち受けポートを入力し、両方の端末が相互接続可能なネットワークにあることを確認してください。接続が拒否される場合は、システムファイアウォールが該当ポートへの受信接続を許可しているか確認します。

サブスクリプション更新時にカスタムルールを保持するには?

更新で置き換えられる設定本体に、長期的に使うルールを直接書き込まないでください。クライアントが提供するオーバーライド、マージスクリプト、拡張設定を使い、カスタムDNS、プロキシグループ、ルールを独立したレイヤーとして適用します。更新後はルールの順序とプロキシグループ名が対応しているか確認し、正常に起動できる旧設定を1つ保存しておくと安全です。

プロキシモードを切り替えても結果が変わらないのはなぜですか?

まず、モード変更が画面上の項目だけでなく、現在稼働中のコアに反映されているか確認します。次に対象アプリの既存接続を閉じて再アクセスしてください。ブラウザーの接続プール、DNSキャッシュ、QUICセッションが以前の経路を再利用している可能性があります。それでも変化がない場合はリアルタイム接続ログを確認し、通信が実際にClashへ入り、どのルールに一致したかを確認します。

TRACK 04

トラブルシューティング

直接接続を基準にし、サブスクリプション、ノード、ポート、DNS、仮想ネットワークインターフェースの順に範囲を絞ります。複数の設定を同時に変更しないことが重要です。

Clashのサブスクリプション更新に失敗したとき、まず何を確認すべきですか?

まず、サブスクリプションURLが完全か、期限切れでないか、コピー時に空白が混入していないか確認します。次に、更新ログのHTTPステータスと解析情報を確認してください。接続がタイムアウトする場合は現在のネットワークを確認するか、一時的に利用可能なプロキシ経由で更新します。ログインページが返る場合はURLを再取得し、YAML解析に失敗する場合はサービスの返却形式とクライアントのコアの互換性を確認します。

すべてのノードがタイムアウトするときの確認方法は?

まずDirectモードに切り替え、ローカルネットワークからインターネットへ正常に接続できるか確認します。次に、システム時刻、クライアントログ、サブスクリプションの有効性を確認してください。すべてのノードが同時に失敗する場合は、ネットワーク遮断、DNS解決異常、コア未起動、ファイアウォールによる遮断がよくある原因です。一部のノードだけ失敗する場合は、ノードのメンテナンス、プロトコルパラメーター、回線品質の問題が考えられます。

ClashのDNSリークを確認して減らすには?

まず、設定のdns.enableが有効になっているか確認し、nameserver、fallback、nameserver-policyがルーティングの目的に合っているか確認します。ブラウザーのセキュアDNS、システムの暗号化DNS、他のネットワークツールがClashを迂回する場合があるため、複数の名前解決機構が競合しないようにしてください。変更後はシステムとブラウザーのDNSキャッシュを削除し、接続ログで問い合わせ先を確認します。

起動時にポートが使用中と表示された場合は?

ポートの競合は、別のプロセスが同じポートを待ち受けていることを意味します。クライアントの二重起動、終了していない古いコア、他のプロキシツールの稼働などがよくある原因です。関連アプリを完全に終了し、タスクマネージャーまたはアクティビティモニタで残ったプロセスを確認してください。同時に動かす必要がある場合は、mixed-port、port、socks-portを変更し、システムプロキシの設定も更新します。

TUNを有効にするとインターネットやLANに接続できない場合は?

まずTUNを無効にして基本ネットワークが復旧するか確認し、仮想インターフェースの権限、デフォルトルート、DNS設定、他のVPNソフトとの競合を調べます。LAN端末に接続できない場合は、ルート除外項目とプライベートアドレスのルールを確認し、ゲートウェイ、プリンター、NASの通信が誤ってプロキシへ送られないようにします。原因を特定しやすくするため、変更は一度に1項目だけ行い、その都度コアを再起動してください。

Androidで画面ロック後に接続が切れる場合の改善策は?

Androidのシステム設定でクライアントのバックグラウンド実行を許可し、バッテリー設定を「制限なし」または端末メーカーのバックグラウンド動作維持に相当する項目へ変更します。VPNの常駐通知が表示されていることを確認し、クリーナーによってクライアントが終了されないようにしてください。Wi-Fiとモバイル通信の切り替え後だけ切断される場合は、再接続してログにネットワークインターフェースの変化やDNSタイムアウトがないか確認します。