まず押さえる:症状の「すべて赤」には二種類ある
ノード一覧でレイテンシが表示されない、あるいはテストが一斉にタイムアウトする場合、大きく分けて次の二パターンがあります。一つはクライアントがそもそもトラフィックを握れていない(VPNが有効でも、実際にはバックグラウンドで止められている、対象アプリがプロキシ対象外、など)。もう一つは名前解決や到達経路の問題で、サーバー自体に届いていないパターンです。前者はOS設定とアプリの適用範囲を、後者はDNSとルール、サブスクの中身を疑うのが近道です。
以降のステップは、このどちらにも当てはまるように並べています。デスクトップで Clash Meta(mihomo) のコアやYAMLをいじる話は、コアアップグレードの解説や、YAML ルール分流ガイドで扱っている内容と補完的です。ここではあくまで Android 上の Clash for Android に限定します。
ステップ1:VPN権限・常時接続・バッテリー最適化を確認する
Android では、VPN プロファイルを許可しても、メーカー独自の省電力や「バックグラウンドで起動しない」設定が重なると、見かけ上はオンでも実トラフィックが通らないことがあります。まず 設定アプリから該当アプリのバッテリー最適化をオフにし、可能なら「制限なし」に近い扱いにします。MIUI・ColorOS・One UI などはメーカーごとにメニュー名が違うため、「バッテリー」「アプリの起動」「バックグラウンドデータ」あたりを横断的に確認してください。
加えて、VPN の「常時接続」やキルスイッチ相当の項目があれば有効化し、システムが接続を勝手に落とさないようにします。ここが甘いと、ノードテストの短い接続すらまとめて失敗し、「サブスク インポート は成功したのに全部ダメ」という印象になります。権限まわりを直したあとで一度アプリを完全終了し、再度プロファイルを有効化してからテストし直すのがおすすめです。
ステップ2:分アプリプロキシと「システム全体」のすれ違いを潰す
分アプリプロキシ(アプリ単位でプロキシの対象を絞る機能)を使っている場合、ブラウザやテスト用アプリだけが対象外になっていると、体感では「繋がらない」ままになります。逆に、ゲームや決済アプリだけ直結させたい意図で除外しているのに、検証用の速度計測アプリまで外れているケースもあります。設定画面で「どのアプリがトンネルに入るか」を一覧し、試したいアプリにチェックが付いているかを確認してください。
「システムプロキシに従う」「VPN 全体を通す」など、モード名はクライアントの版によって異なりますが、まずは全体適用で挙動を切り分け、問題がなければ分アプリに戻す、という順が安全です。モバイル回線と Wi‑Fi を切り替えた直後にだけ不調が出る場合も、省電力アプリが Wi‑Fi 時のみ Clash を止めているなど、別レイヤの制限とセットで見る必要があります。
ステップ3:DNS モードと名前解決(fake-ip / redir-host)を疑う
ノードのホスト名が解決できないと、そもそも TCP 接続の先が決まりません。DNS 設定で fake-ip を使っている場合、一部のアプリやテスト実装が想定とズレて、見かけ上すべてタイムアウトに見えることがあります。設定可能なら一時的に redir-host 系へ切り替え、あるいはクライアントが提供する「DNS 漏洩対策」「システム DNS の上書き」オプションを試し、挙動が変わるかを見ます。
DoH(DNS over HTTPS)を指定している場合は、その DoH サーバー自体がブロックされていないかも確認してください。社内 Wi‑Fi やキャリアのフィルタでは、一般向け DoH のドメインが通らないことがあり、その結果として名前解決が全滅します。パブリック DNS に切り替えて試す、モバイルデータだけで試す、などの対照実験が有効です。
ステップ4:サブスクの更新・期限・ノード一覧の健全性
サブスク インポート直後にだけ失敗するなら、URL の typo、期限切れ、利用デバイス数超過によるサーバー側拒否を疑います。手動で購読を更新し、プロファイル内に実際に プロキシ行が並んでいるかを確認してください。空のグループや、サーバー側メンテナンスで一時的に全ノードが落ちている場合も、テストは一様に赤になります。
インポート元がサードパーティの変換サービス経由である場合、変換ミスでプロトコルやポートが壊れていることもあります。可能なら公式クライアントや別端末で同じサブスクを試し、そちらで通るかを見ると、Clash 側の問題かサブスク側の問題かが切り分けやすくなります。
ステップ5:実IP表示・GEOIP・DIRECT の取り違い
「IP 確認サイトでは自宅のまま」「ノードだけ繋がらない」といった症状は、ルールでそのドメインが DIRECT に落ちている、あるいは国内 CDN 向けの経路が選ばれている場合に起きます。ブラウザで見ている IP が実IPのままなら、まずルールの先頭付近でそのドメインが直結になっていないかを疑ってください。モバイルではアプリごとに別の DNS キャッシュを持つため、デスクトップの YAML と同じ結果にならないこともあります。
逆に、すべての通信を強制的にプロキシに流す設定にしているのに実IPが出るなら、トンネルが張られていないか、対象アプリがトンネル外、のどちらかです。ステップ1・2とセットで読み解ぶと矛盾が減ります。
ステップ6:ログ・接続テスト URL・遅延テストの見方
クライアントにログ表示があれば、DNS エラーなのか、TCP タイムアウトなのか、TLS ハンドシェイクで落ちているのかを区別できます。テスト用 URL がデフォルトでブロックされている地域のドメインになっていると、ノードが生きていてもテストだけ失敗することがあります。設定でテスト用の URL を変更できる場合は、信頼できる軽量な HTTPS エンドポイントに差し替えて試してください。
レイテンシの数値はサーバー負荷や回線混雑でも変動するため、一度の全赤だけでサーバーを捨てない方がよいですが、何度やっても完全に応答がない場合は、ステップ1〜5 のいずれかに原因が残っていることが多いです。
ステップ7:キャリア・IPv6・他 VPN/プライベート DNS との競合
同一端末で別の VPN や「常時オン VPN」製品を併用していると、トンネルが二重になり接続が不安定になることがあります。ほかの VPN をオフにしてから Clash だけにする、順番を入れ替える、などで再現性が変わるかを確認してください。また Android の「プライベート DNS」が有効な場合、クライアント側の DNS 設定とどちらが優先されるかが機種や OS 版で異なります。一時的にプライベート DNS をオフにして比較するのも有効です。
IPv6 だけが通らない/IPv4 だけが通らない環境では、プロファイルやネットワークの IPv6 設定によってはノードに届かないことがあります。Wi‑Fi とモバイルデータを切り替え、あるいはルーターの IPv6 設定を見直すと改善する例もあります。
チェックリスト早見表
| 確認項目 | 主な見る場所 |
|---|---|
| VPN・バックグラウンドが生きているか | OS のバッテリー最適化、常時接続、メーカー独自の起動制限 |
| 対象アプリがトンネルに入っているか | 分アプリプロキシの一覧、全体モードとの切り替え |
| 名前解決が成立しているか | DNS モード、DoH、プライベート DNS、キャリア制限 |
| サブスクとノードが有効か | 購読更新、期限、プロファイル内のプロキシ行 |
| ルールと実IPの表示 | DIRECT/GEOIP、テストサイトでの IP 表示 |
この順で潰していくと、感覚的な「全部ダメ」が、権限・適用範囲・DNS・購読・ルール・回線のどこに寄っているかに分解しやすくなります。
まとめ
Clash for Android で サブスク インポート後に ノード タイムアウトが続くときは、単一の設定項目ではなく、OS の制限と DNS、分アプリプロキシ、購読データの健全性が絡み合いがちです。本稿の7ステップは、その複合的な 接続失敗 を一人でも切り分けやすい順序としてまとめたものです。デスクトップ向けの詳細な分流設計は YAML 解説と併読すると理解が深まりますが、モバイルではまず「トンネルが実際に張れているか」「名前解決が通るか」の二点を疑うのが近道です。
安定したクライアント選びや環境ごとの入手経路は、端末を替えたときにも役立ちます。公式の配布形態に加え、自分の使い方に合ったパッケージを一覧できると安心です。
ほかのチュートリアルは 技術コラム からどうぞ。