Clash 基礎
了解 Clash 的基本概念、定位與使用場景
Clash 是一款基於規則的跨平台網路代理工具,由 Go 語言編寫,遵循 GPL-3.0 開源授權。它透過 YAML 設定檔定義代理節點、分流規則與出站策略組,實現對網路流量的精細化管控。
目前最活躍的核心版本為 Mihomo(原 Clash.Meta),在原版基礎上新增了大量現代代理協議支援與功能增強,是社群公認的最佳選擇。
Clash 核心(Mihomo)以及所有主流圖形化用戶端均完全免費且開源,永久不會收費:
- Clash Verge Rev — 免費開源(MIT 授權)
- FlClash — 免費開源(GPL-3.0 授權)
- ClashMeta for Android — 免費開源(GPL-3.0 授權)
- Mihomo 核心 — 免費開源(GPL-3.0 授權)
需要注意:代理節點服務(訂閱服務商)是獨立的第三方服務,通常按流量或月付收費,與 Clash 軟體本身無關。
- VPN:將全部流量加密隧道轉發到 VPN 伺服器,國內外流量一刀切全走代理,存取國內網站反而變慢,無法靈活控制。
- Clash:基於規則精細分流,國內流量直連(高速)、境外流量走代理;支援 20+ 協議,可精確到處理程序級別的流量控制。
對於需要靈活管控網路的用戶,Clash 的規則分流能力遠超傳統 VPN,是更推薦的選擇。
Mihomo(原名 Clash.Meta)是 Clash 的功能增強社群分支,目前是最活躍、功能最完整的核心版本。主要增強包括:
- Hysteria2、TUIC v5、VLESS、WireGuard 等新協議原生支援
- Reality 傳輸層、ECH 等現代安全特性
- 更完善的 TUN 模式與 Rule-Set 規則集
- Proxy Provider 訂閱管理、MixedPort 混合通訊埠
現在大多數圖形用戶端(Clash Verge Rev、FlClash)預設使用 Mihomo 核心,直接選用即可。
- Windows 10/11:Clash Verge Rev、Clash Nyanpasu、FlClash
- macOS 11+:Clash Verge Rev、FlClash、ClashX Meta(Intel & Apple Silicon 均支援)
- Linux:Clash Verge Rev、FlClash(支援主流發行版)
- Android 7.0+:ClashMeta for Android
- iOS / iPadOS:Stash、Choc(需 App Store 購買)
前往下載中心取得各平台最新版本。
安裝與設定
從零開始安裝用戶端、匯入訂閱並完成基礎設定
前往下載中心,根據你的作業系統選擇對應用戶端。各平台推薦用戶端:
- Windows / macOS / Linux:下載 Clash Verge Rev,執行安裝程式按提示操作即可
- Android:下載 ClashMeta for Android 的 APK,啟用「允許未知來源安裝」後安裝
- iOS:在 App Store 搜尋 Stash 購買安裝
以 Clash Verge Rev 為例(其他用戶端操作類似):
- 打開軟體,點擊左側「設定」選單
- 點擊右上角「+」→ 選擇「遠端」
- 在「URL」欄貼上訂閱服務商提供的 Clash 訂閱連結,填寫備註名稱
- 點擊「下載」,完成後點擊勾號將其設為目前設定
建議開啟自動更新(推薦間隔 24 小時),節點列表會自動保持最新。
Clash 設定檔為 YAML 格式(config.yaml),包含以下主要部分:
proxies:節點列表,定義代理伺服器資訊proxy-groups:策略組,如 URL-Test 自動選速、Select 手動選擇rules:分流規則,從上到下依次匹配dns:DNS 設定,可指定上游 DNS 與解析模式
可以用任意文字編輯器修改,推薦使用 VS Code(安裝 YAML 外掛),可自動檢測縮排錯誤。修改後在用戶端重新載入設定即可生效。
主流用戶端均內建開機自動啟動開關:
- Clash Verge Rev:設定 → 系統設定 → 開機自動啟動;可同時開啟「靜默啟動」避免彈出視窗
- FlClash:應用程式設定 → 開機自動啟動
- ClashMeta for Android:設定 → 開機啟動;需在系統權限中允許自動啟動
建議同時開啟系統代理自動啟用,這樣每次開機後 Clash 會自動接管系統流量,無需手動操作。
設定檔儲存路徑:
- Windows:
%APPDATA%\clash-verge - macOS:
~/Library/Application Support/clash-verge - Linux:
~/.config/clash-verge
將整個目錄複製到新設備的對應位置,重裝用戶端後即可恢復所有設定。如果只使用訂閱連結,在新設備重新匯入連結並更新是最簡單的方法,無需手動轉移檔案。
日常使用
節點管理、模式切換與進階功能使用方法
- 規則模式(Rule):根據設定檔中的規則逐條匹配,自動決定每個連線走代理還是直連。推薦日常使用,國內國外都快。
- 全域模式(Global):所有流量強制走代理節點,不經過規則匹配。適合臨時測試節點,但會導致國內網站變慢。
- 直連模式(Direct):所有流量直接連線,相當於完全關閉代理。適合排查網路問題時臨時使用。
在用戶端「代理」或「節點」頁面,點擊測速按鈕(閃電圖示)可對全部節點發起延遲測試,結果即時顯示在節點旁。在策略組內點擊節點名稱可立即切換,無需重啟。
使用 URL-Test 策略組,Clash 會自動選擇延遲最低節點,無需手動操作。延遲參考值:100ms 以下體驗極佳,100–200ms正常可用,200ms 以上可能出現卡頓。
TUN 模式需要管理員 / root 權限才能建立虛擬網卡。以 Clash Verge Rev 為例:
- 進入「設定」→「系統代理」板塊
- 開啟「TUN 模式」開關
- 系統提示請求管理員權限,點擊「是」允許
- 等待驅動程式安裝完成(首次使用約需 10–30 秒)
開啟後,遊戲用戶端、命令列工具(curl、git)等不支援系統代理的程式也會經過 Clash 處理。
有兩種方式:
- 規則方式(推薦):在設定檔
rules頂部新增 PROCESS-NAME 規則,例如- PROCESS-NAME,LINE.exe,DIRECT,該處理程序的所有流量將直接連線。 - 用戶端 UI:部分用戶端(如 Clash Verge Rev)在「設定」中提供「繞過列表」功能,可透過介面直接新增處理程序名或 IP 區段。
常見需要繞過的應用程式:國內遊戲(Steam 國區、Steam、本地遊戲等)、企業內網工具、部分銀行 App。
- Clash Verge Rev:左側「連線」選單,即時顯示每個連線的目標位址、走哪個節點、上下行流量
- 日誌級別:在設定中將日誌級別調為
info或debug,可查看規則匹配詳情,便於排查分流問題 - Web 面板:透過 Yacd(
http://localhost:9090/ui)或 MetaCubeX 面板,獲得視覺化監控
日誌是排查「為什麼這個網站沒走代理」的最好工具,遇到問題時優先查看日誌。
網路與 DNS
DNS 模式選擇、防洩漏設定、IPv6 與區域網路共享
- Fake-IP:應用程式發起 DNS 查詢時,Clash 立即返回虛假 IP(
198.18.x.x),規則匹配基於原始網域名稱,真實 DNS 查詢發生在代理側,完全避免 DNS 污染,連線建立更快。推薦大多數用戶使用。 - Redir-Host:Clash 先向國內外 DNS 同時查詢,根據解析結果決定路由。相容性更好,但有 DNS 洩漏風險且首次連線延遲略高。
少數需要真實 IP 的應用程式(如某些網路遊戲 NAT 檢測)在 Fake-IP 下可能異常,可將該應用程式網域名稱加入 fake-ip-filter 白名單解決。
防止 DNS 洩漏的推薦設定組合:
- 啟用 Clash 內建 DNS 模組(
dns: enable: true),不依賴系統 DNS - 境外網域名稱使用加密 DNS(DoH 範例:
https://1.1.1.1/dns-query) - 啟用 Fake-IP 模式,避免向上游 DNS 暴露存取的網域名稱
- 開啟 TUN 模式,確保 DNS 請求不會繞過 Clash 直接發出
設定完成後可透過 dnsleaktest.com 驗證,結果中應只顯示代理節點所在地的 DNS。
Mihomo 核心提供完整 IPv6 支援,涵蓋 DNS AAAA 記錄解析、IPv6 規則匹配(IP-CIDR6、GEOIP)、TUN 設備 IPv6 路由轉發及代理節點 IPv6 出口連線。
啟用方式:在設定檔頂部新增 ipv6: true,DNS 設定中也需確保允許 AAAA 查詢。如遇 IPv6 連線異常,可臨時設定 ipv6: false 禁用以排查問題。
在設定檔中設定 allow-lan: true,Clash 即可接受來自區域網路的代理請求。其他設備在 WiFi 設定中設定 HTTP 代理,伺服器填寫執行 Clash 的設備區域網路 IP(如 192.168.1.100),通訊埠填寫混合通訊埠(預設 7890)即可。手機、平板、智慧電視均支援此方式。
故障排除
遇到問題時的排查思路與常見解決方案
按以下步驟逐一排查:
- 第一步:關閉 Clash,檢查不走代理時網路是否正常
- 第二步:手動重新整理訂閱,更新到最新節點列表
- 第三步:切換到其他節點,部分節點可能已被封鎖
- 第四步:檢查防火牆是否阻止 Clash 出站連線
- 第五步:將日誌級別調為
debug,查看具體連線錯誤訊息
如所有節點均超時,很可能是訂閱服務商伺服器問題,建議聯絡訂閱服務商客服確認節點狀態。
- 選低延遲節點:測速後選擇延遲在 100ms 以內的節點,或使用 URL-Test 自動選最快節點
- 檢查代理模式:確認是「規則模式」而非「全域模式」,避免國內流量繞路
- 換更快協議:Hysteria2 或 TUIC 基於 QUIC/UDP,在高丟包、高延遲網路下表現遠好於 TCP 協議
- 最佳化 DNS:啟用 DoH / DoT 減少 DNS 解析延遲
- 聯絡訂閱服務商:如全部節點均慢,可能是訂閱服務商頻寬擁擠,嘗試在非高峰期使用或更換套餐
這通常是規則未將該網站設為直連,流量被代理到境外節點導致。解決方案:
- 確認目前為「規則模式」而非全域模式
- 手動在規則頂部新增直連規則:
- DOMAIN-SUFFIX,example.local,DIRECT - 更新 GeoSite / GeoIP 資料庫到最新版(用戶端設定中通常有更新按鈕)
- 替換為更完善的社群規則集,如 Loyalsoldier Clash Rules
- 權限不足:以管理員身分重新執行用戶端(右鍵 → 以管理員身分執行)
- 驅動程式衝突:關閉其他 VPN 軟體(WireGuard、OpenVPN、Cisco AnyConnect 等)後再試
- Windows 驅動程式問題:在設定 → 服務模式 → 重新安裝 Service Mode 驅動程式
- 臨時恢復:關閉 TUN 模式,改用系統代理模式
如問題持續,可在 GitHub Issues 中附上日誌檔案尋求社群幫助。
該錯誤表示 Clash 要使用的通訊埠(預設 7890)已被其他程式佔用:
- 方法一(推薦):修改設定檔中
mixed-port的值(如改為7891) - 方法二:找到並關閉佔用通訊埠的程式。Windows:
netstat -ano | findstr 7890,找到 PID 後在工作管理員結束;macOS / Linux:lsof -i :7890 - 方法三:同時安裝了多個 Clash 用戶端時,確保只執行其中一個
未找到相關問題,請嘗試其他關鍵字,或瀏覽分類查找。