クライアント、カーネル、設定の取得元を分けて考えましょう。問題が起きたら、まず該当する動作を担うコンポーネントを特定し、適切なドキュメントとトラブル対処方法を確認してください。
CLIENT / CORE
Clash、mihomo、クライアントの関係
Clash関連のソフトウェアは、単一の製品として一斉に更新されているわけではありません。過去のClashカーネル、その派生プロジェクト、各種GUIクライアントには、それぞれ異なるリリースとメンテナンスの範囲があります。mihomoはこのエコシステムで継続的に開発されているカーネルプロジェクトで、一般的なデスクトップクライアントはその上に設定管理、プロキシ切り替え、OS連携の画面を提供します。画面が似ていても、カーネルの機能や初期設定まで同じとは限りません。設定を移行するときは、実際に動作しているカーネルとクライアントのドキュメントを確認してください。
GUIクライアントのスイッチは、カーネル設定やOSの状態に影響することがあります。たとえばシステムプロキシのスイッチはOSのプロキシ設定を変更し、TUNのスイッチは仮想ネットワークインターフェースやルーティングに関わります。クライアントによっては起動時に最終的な設定を生成するため、ディスク上のYAMLファイルを編集しても、画面上の設定にすぐ反映されるとは限りません。設定が有効か判断するには、現在選択されている設定、オーバーライドの適用結果、再読み込みログをあわせて確認してください。ファイルを保存できたことだけで、反映されたと判断しないようにしましょう。
オープンソースコードを参照すれば、実装や設定項目の変遷を確認できますが、一般ユーザーがアプリをインストールするためにソースコードの取得は必要ありません。初めて使う場合は、ダウンロードページからOSに合ったクライアントを選んでください。カーネルの動作を確認する必要がある場合は、mihomoプロジェクトのドキュメント、リリースノート、関連コードを参照します。当サイトは日本語で確認できる情報と設定項目の解説を提供します。異なるクライアントをひとつの製品として扱ったり、プロジェクトのメンテナーに代わって互換性を保証したりするものではありません。
HISTORY / MIGRATION
サポート終了後の移行を判断する
Clash for Windowsはサポート終了後も、既存の環境で動作する場合があります。ただし、今後のOSやプロトコル、設定項目に対応し続けるとは限りません。移行先を選ぶときは、メンテナンス状況、使用カーネル、端末のアーキテクチャ、現在の設定で必要な機能を確認しましょう。名前が似ているという理由だけで置き換えると、システムサービス、設定ディレクトリ、自動起動項目の違いを見落とし、プロキシのプロセスが重複して動作するおそれがあります。
移行前に現在の設定をエクスポートまたはバックアップし、ローカルのリスニングポート、使用中のプロキシグループ、独自ルールを記録してください。新しいクライアントを初めて起動したときは、設定を読み込んでも、通信制御機能をすぐにすべて有効にする必要はありません。構文を確認した後、対象をひとつ決めてテストし、接続がクライアントに表示されること、適用されたルールと実際の出口を確認します。この経路が正常に動作してから、オーバーライド、LAN接続、TUNなどの設定を移行してください。
ポートが使用中の場合は、旧クライアントやバックグラウンドサービスがまだ待ち受けていないか確認してから、プロセスを終了するかポートを変更します。競合を解消するために、古い設定ディレクトリをいきなり削除しないでください。mixed-port を変更した場合は、プロキシアドレスを手動設定しているアプリ側も変更する必要があります。カーネルが正常に起動しても、アプリが旧ポートに接続し続ける可能性があります。よくある違いは FAQ を、具体的な手順は Clash設定ガイド を確認してください。
SOURCE / PRIVACY
設定の取得元と共有時の注意
ソースコードが公開されていても、すべてのサブスクリプション、変換サービス、通信出口が信頼できるとは限りません。クライアント、設定の提供元、通信出口サービスはそれぞれ役割が異なり、クライアントをダウンロードしただけでリモートサービスを利用できるわけではありません。サブスクリプションを追加する前に、入手元と用途を確認し、設定に含まれるプロキシ、ルール、上流DNSを把握してください。不明な提供元から入手した完全な設定は通信経路を変えるおそれがあるため、読み込み後も重要な項目とプロキシグループを確認しましょう。
サブスクリプションURLにはアクセス用の認証情報が含まれる場合があり、設定ファイルにはアカウント、パスワード、専用サーバーの情報が含まれることもあります。問い合わせるときは、クライアント名、OS、エラーメッセージ、機密情報を削除した最小限の設定例を提示してください。設定ファイル全体をそのままアップロードしないでください。スクリーンショットにも、アドレスバー、QRコード、ログ内の機密情報が写っていないか確認しましょう。ルールの問題を説明する場合は、通常、ルールの順序、関連するプロキシグループ名、対象接続に適用された結果があれば十分です。
トラブル対処では、できるだけテスト条件を一定に保ちましょう。対象をひとつ、通信制御方法をひとつ、出口をひとつに固定してから、DNS、ルール、接続結果を確認します。サブスクリプション、ノード、モード、DNS設定を同時に変更すると、アクセスが回復しても原因を特定しにくくなります。動作する基準設定を保管し、項目をひとつずつ変更して結果を記録するほうが、出所不明の設定を大量にコピーするより長期的な管理に役立ちます。職場のネットワークや管理対象の端末では、その環境のネットワーク利用規則も守ってください。
UPDATE / VERIFICATION
アプリの更新と設定の更新を分けて考える
クライアント、カーネル、サブスクリプション、ルール用データは、それぞれ別々に更新されます。アプリを更新してもリモートのサブスクリプションが更新されるとは限らず、サブスクリプションを更新しても新しい設定項目にカーネルが対応しているとは限りません。設定項目を解析できない場合は、まずどのカーネル向けの項目かと適用範囲を確認し、次にクライアントが実際に使用しているカーネルの情報を調べてください。設定の解析エラーをノードへの接続不良と決めつけないようにしましょう。発生する段階が異なるため、必要な調査情報も異なります。
GeoIPやルール用データを使う場合は、設定が参照しているデータ形式、保存場所、更新方法を確認してください。ファイル名を変えただけではカーネルがそのファイルを読み込むとは限らず、ファイルが存在していても現在のルールで使われているとは限りません。変更後に設定を再読み込みし、ログにデータの読み込みエラーがないか確認してから、対象の接続に適用されたルールを調べます。リモートのルールプロバイダーを使う場合は、データのダウンロード失敗、形式の誤り、ルール順の問題をそれぞれ分けて確認してください。
動作確認では、ウェブページを開けることは最初の一歩にすぎません。直結が必要なLAN内のサービス、システムプロキシを使わないアプリ、端末がスリープから復帰した後の動作も確認しましょう。ノードの速度テストで分かるのは、指定されたテスト通信の結果であり、実際のサービスの動作確認の代わりにはなりません。問題が起きたら、発生条件、エラー内容、直近の変更を記録し、ポート、名前解決、ルール、出口の順に原因を絞り込みます。設定項目の解説とYAMLの例は 設定リファレンス をご覧ください。