1. ポート占有:Address already in use (7890)

これは、Clash ユーザーが最も頻繁に遭遇するエラーの一つです。Clash はデフォルトでポート 7890 を「Mixed Port」(HTTP および SOCKS5 の混合ポート)として使用します。このポートが他のアプリケーションによって既に使われている場合、Clash はプロキシエンジンを起動することができません。

1.1 エラーの症状

ログウィンドウに赤字で listen tcp 0.0.0.0:7890: bind: address already in use というメッセージが表示されます。

1.2 解決方法

  • 二重起動の確認:他に Clash のインスタンスが動いていないか確認してください。Windows のタスクマネージャー、または macOS のアクティビティモニタを開き、 Clash, Clash Verge, Mihomo などのプロセスを強制終了してください。
  • ポート番号の変更:もし 7890 がシステムのサービスや他のソフトウェア(ダウンロードマネージャーなど)によって恒久的に占有されている場合は、Clash の設定画面からポートを変更するのが最も手っ取り早いです。 789110809 など、未使用の番号に変更してください。
  • 占有アプリの特定(Windows):コマンドプロンプトを管理者として実行し、 netstat -ano | findstr :7890 を入力します。一番右の列に表示される PID(プロセス ID)を控え、タスクマネージャーの「詳細」タブから該当するアプリを見つけて終了させます。

2. サブスクリプション更新失敗:タイムアウトまたは接続拒否

プロバイダーから設定ファイルをダウンロードできないトラブルは、ネットワーク環境、プロバイダー側の制限、または SSL 証明書のエラーが原因であることが多いです。

2.1 主な原因

  • ネットワークの遮断:サブスクリプションリンクがホストされているドメインが、現地の ISP によってブロックされている場合があります。
  • システム時刻のズレ:PC の時計が正確でない場合、SSL ハンドシェイクに失敗し、セキュリティ上の理由でダウンロードが拒否されます。
  • 循環参照(デッドロック):プロキシを動かすために設定が必要なのに、設定をダウンロードするためにプロキシが必要、という状況に陥っている場合があります。

2.2 解決方法

  • 時刻の同期:システム設定から「時刻を自動的に設定する」がオンになっていることを確認してください。
  • システムプロキシの一時オフ:クライアントの「System Proxy」スイッチを一度オフにしてから、サブスクリプションの更新を試みてください。
  • サブスクリプションコンバーターの活用:元のリンクが不安定な場合は、信頼できるサードパーティ製のコンバーター(SubConverter など)を通して、別の形式やドメインに変換して試してみる価値があります。
  • プロバイダーのステータス確認:プロバイダーのダッシュボードにログインし、アカウントの期限切れやデータ通信量の超過がないか確認してください。

3. TUN モードの起動エラー:Service Start Error

TUN モードはネットワークカードレベルで動作するため、管理者権限と特定のドライバーを必要とします。そのため、システムレベルの競合が発生しやすい項目です。

3.1 権限不足

Windows では、仮想ネットワークアダプター(Wintun)をインストール・起動するために、Clash を 「管理者として実行」 する必要があります。ログに operation not permitted と表示される場合は、この権限が不足しています。

3.2 ドライバーの競合

以前に他の VPN やプロキシツール(V2RayN や旧版 Shadowsocks など)を使用していた場合、古い仮想アダプターが残っていると競合することがあります。デバイスマネージャーの「ネットワーク アダプター」から、未使用の「Wintun」や「TAP」デバイスをアンインストールしてください。

3.3 スタックの選択

設定で Stack: gvisor または Stack: system が選択されているか確認してください。多くのユーザーにとって gvisor は、TCP/IP スタックをユーザースペースで処理するため、カーネルレベルのバグを回避でき、パフォーマンスと互換性のバランスが最も優れています。

4. ルールが無効:全通信が直結、または全通信がプロキシ経由になる

グローバルスイッチがオフなのに、通信が設定したルールに従わない場合は、YAML 設定ファイル内のロジックエラーが考えられます。

4.1 上から順に評価される原則

Clash のルールは上から下へと順番に処理され、最初に一致したものが適用されます。もしルールの先頭に MATCH, DIRECT と書いてあれば、その後のルールは一切無視され、すべての通信がプロキシを通らなくなります。正しい順序は 特定のドメイン > IP-CIDR > GEOIP/GEOSITE > MATCH です。

4.2 DNS 汚染の影響

ルールが IP-CIDR(地理的位置)に基づいている場合、DNS が Clash による検査の前に誤った(偽の)国内 IP を返してしまうと、ルールが正しく判定されません。 Fake-IP モード を使用することで、Clash が名前解決の全プロセスを制御できるようになり、この問題を回避できます。

5. DNS 漏洩:プロキシを通しているのに位置がバレる?

DNS 漏洩とは、ブラウザやアプリがプロキシをバイパスして、現地の ISP の DNS サーバーに直接問い合わせを行ってしまう現象です。これにより、プライバシーが損なわれたり、地域制限の解除に失敗したりします。

5.1 確認方法

dnsleaktest.com にアクセスしてください。プロキシがオンの状態で、自分の契約している ISP(日本の大手キャリアなど)のサーバーが表示されたら、漏洩が発生しています。

5.2 修正案

  • 暗号化 DNS の有効化:設定ファイルで dns: enable: true とし、 https://dns.google/dns-query などの DoH (DNS over HTTPS) サーバーを指定してください。
  • IPv6 の無効化:多くの漏洩は IPv6 経由で発生します。現在のプロキシプロトコルの多くは IPv6 への対応が完全ではありません。Windows や macOS のネットワーク設定で IPv6 を完全にオフにすることを強く推奨します。

6. その他の細かなエラー

6.1 EOF エラー

これは "End of File" の略で、リモートサーバーまたは途中のファイアウォールによって接続が強制的に切断されたことを意味します。Hysteria2 を使用している場合に UDP ポートが ISP によって制限されている際によく見られます。

6.2 YAML Parsing Error

設定ファイルの構文エラーです。YAML はスペースの数に非常に敏感です。タブ文字は絶対に使用せず、半角スペースのみを使用してインデントを揃えてください。オンラインの YAML バリデーターを使用して、インデントが崩れている行を特定しましょう。

まとめ:エラー解決の思考プロセス

Clash のエラーを解決するコツは、論理的な手順を踏むことです: ログを見る > 権限を確認する > 設定を確認する。ほとんどの問題は、サブスクリプションの更新、管理者権限での実行、または YAML ファイルの小さなタイプミスの修正で解決します。

これらのトラブルを最初から回避したいのであれば、最新の Clash Verge Rev の使用をお勧めします。このクライアントは Mihomo コアを搭載しており、ポート競合の自動検出機能や、非常に堅牢な TUN モードの実装を備えています。

Clash を無料でダウンロードして、トラブルのない快適なインターネット体験を