為什麼網站命中了錯誤的 DIRECT 或 PROXY 規則?

Clash 規則會依序由上而下比對;前面的規則一旦命中,就不會繼續判斷後面的規則。應先從連線記錄找出實際命中項目,再調整具體規則與 MATCH 的先後順序。

  • 規則分流
  • 疑難排解
簡要回答

Clash 規則按順序從上到下匹配,前面的規則一旦命中,後面的規則不會繼續判斷。應從連線記錄找到實際命中項,再調整具體規則與 MATCH 的先後位置。把精確的 DOMAIN 或 DOMAIN-SUFFIX 移到通用規則前,重新載入後用同一請求驗證,不一次調整整份規則表。

連線詳情顯示命中了哪條規則

在連線詳情記錄網域、目標 IP、命中的規則和最終策略,隨後在設定中找到這條規則前面的更寬匹配。

  • 連線清單裡顯示的命中規則是什麼
  • 網域規則是否寫在 IP 規則之後
  • 是否被 PROCESS-NAME、DOMAIN-SUFFIX 或 GEOIP 提前命中
  • 最後的 MATCH 是否指向預期策略

把精確網域規則放到通用規則之前

  1. 在連線清單中找到目標網域和命中的規則
  2. 把更具體的 DOMAIN 或 DOMAIN-SUFFIX 放在通用規則前面
  3. 調整規則後重新載入設定
  4. 對 CDN 或多網域服務,需要同時處理主網域和資源網域

規則命中錯誤不一定是節點問題

IP-CIDR 規則依賴解析結果,和 DNS 設定有關(參見 DNS FAQ

規則越多越需要控制順序和命名(參見 規則設定