Clash 配置文件

Clash 配置指南
從零到完整代理部署

訂閱連結導入、YAML 配置語法、代理分組、規則分流、DNS 防洩漏、TUN 全域代理——一份文件覆蓋 Clash 配置全流程,適用於 Windows、macOS、Android 全平台。

入門

快速上手:三步完成代理部署

無論您使用哪種 Clash 客戶端,核心流程都完全相同:下載客戶端 → 導入訂閱連結 → 選擇節點並開啟代理。整個過程通常在 3 分鐘內完成。

1

下載並安裝 Clash 客戶端

根據您的作業系統前往客戶端下載頁獲取安裝包。Windows 推薦 Clash Verge Rev,macOS 推薦 ClashX Meta 或 Clash Verge Rev,Android 推薦 ClashMeta。

2

從機場獲取訂閱連結並導入

登入您的機場控制台,複製訂閱連結 (URL 形式)。在 Clash 客戶端中找到「訂閱」或「配置」選項,貼上連結後點擊「更新」,客戶端會自動下載並解析全部節點配置。

3

選擇代理節點,開啟系統代理

切換到「代理」頁面,選擇一個延遲較低的節點. 開啟「系統代理」(System Proxy) 或「TUN 模式」(全域接管所有流量),即可開始使用。

推薦做法:使用機場提供的訂閱連結,而不是手動編寫 config.yaml。訂閱連結包含完整節點配置,客戶端可定時自動更新,無需手動維護。

入門

訂閱連結導入詳解

訂閱連結是機場以 URL 形式提供的設定檔位址。Clash 在存取該 URL 後會下載一份包含所有節點、代理分組和規則的完整 YAML 配置,並在在地儲存。

各客戶端導入方式

客戶端 平台 導入位置
Clash Verge Rev Windows / macOS / Linux 側邊欄「訂閱」→ 右上角「+」→ 貼上 URL → 確認
ClashX / ClashX Meta macOS 選單列圖示 → Config → Remote Config → Manage → 新增
ClashMeta for Android Android 底欄「配置」→ 右上角「+」→ URL 導入
FlClash Android / Windows 側邊欄「配置」→「+」→ 輸入連結 → 下載
Stash iOS 首頁「設定檔」→「從 URL 下載」
Shadowrocket iOS 首頁右上角「+」→ 選類型「Subscribe」→ 貼上 URL

注意:訂閱連結屬於個人隱私資料,請勿將其洩露給他人。建議開啟客戶端的「定時更新訂閱」功能(通常為 24 小時),以獲取機場最新節點。

訂閱更新間隔推薦

大多數機場節點每 1–7 天會有變動。將自動更新間隔設定為 24 小時可確保節點始終最新,同時不會造成伺服器壓力。

設定檔

config.yaml 檔案結構

Clash 的設定檔為 YAML 格式,檔名通常為 config.yaml。它由以下幾個頂層欄位組成,各欄位通過縮排分層,順序不影響解析。

YAML
# Clash config.yaml — top-level structure

mixed-port: 7890          # HTTP + SOCKS5 mixed port
allow-lan: false          # Allow LAN devices to use proxy
mode: rule               # rule | global | direct
log-level: info           # silent | error | warning | info | debug
external-controller: 127.0.0.1:9090   # REST API port

dns:
  # DNS settings — see DNS section below

proxies:
  # Proxy node definitions

proxy-groups:
  # Proxy group policies

rules:
  # Traffic routing rules

全域參數說明

欄位預設值說明
mixed-port7890同時監聽 HTTP 和 SOCKS5 協定的混合連接埠
port僅 HTTP 代理連接埠(與 mixed-port 二選一)
socks-port僅 SOCKS5 連接埠(與 mixed-port 二選一)
allow-lanfalse是否允許區域網路其他裝置透過本機代理
moderulerule(規則分流)/ global(全域代理)/ direct(全部直連)
log-levelinfo日誌詳細程度,偵錯時可改為 debug
external-controllerREST API 位址,GUI 客戶端透過此介面控制核心
secretREST API 的存取金鑰(選填)

使用圖形介面客戶端(如 Clash Verge Rev、ClashX)時,大部分全域參數由客戶端介面控制,無需手動編輯 config.yaml。手動配置主要用於伺服器部署或高度自訂場景。

設定檔

代理節點

proxies 欄位定義所有代理節點,每個節點以 - name: 開頭,通過 type 欄位指定協定。Clash 支援以下全部主流代理協定:

Shadowsocks ShadowsocksR VMess VLESS Trojan Hysteria2 TUIC v5 WireGuard NaïveProxy SOCKS5 HTTP / HTTPS

Shadowsocks 節點範例

YAML
proxies:
  - nameHK-01 香港節點
    type: ss
    server: hk.example.com
    port: 8388
    cipher: aes-128-gcm
    password: "your-password"
    udp: true

VMess 節點範例

YAML
  - nameJP-02 日本節點
    type: vmess
    server: jp.example.com
    port: 443
    uuid: "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
    alterId: 0
    cipher: auto
    tls: true
    network: ws
    ws-opts:
      path: "/ws"
      headers:
        Host: jp.example.com

Trojan 節點範例

YAML
  - nameUS-03 美國節點
    type: trojan
    server: us.example.com
    port: 443
    password: "your-trojan-password"
    sni: us.example.com
    skip-cert-verify: false
    udp: true

實際使用中,節點配置由機場透過訂閱連結自動提供,無需手動填寫上述欄位。手動配置僅適用於自建節點或精細偵錯場景。

設定檔

代理分組 (proxy-groups)

proxy-groups 將多個節點組合成一個策略組,用於靈活控制流量走向。規則中引用的是代理分組名稱,而非具體節點。Clash 支援以下分組類型:

類型說明
select手動選擇節點,GUI 客戶端中透過下拉選單切換,最常用
url-test自動測試延遲,選擇延遲最低的節點
fallback順序容錯,首選節點不可用時自動切換到下一個
load-balance將流量分散到多個節點,提升頻寬利用率
relay流量依次經過多個節點中轉,用於隱匿出站 IP

典型分組配置範例

YAML
proxy-groups:

  # Main select group — user picks manually
  - name節點選擇
    type: select
    proxies:
      - 自動選擇
      - HK-01 香港節點
      - JP-02 日本節點
      - US-03 美國節點
      - DIRECT

  # Auto lowest-latency group
  - name自動選擇
    type: url-test
    proxies:
      - HK-01 香港節點
      - JP-02 日本節點
      - US-03 美國節點
    url: "http://www.gstatic.com/generate_204"
    interval: 300   # test every 300 seconds
    tolerance: 50   # switch if latency diff > 50ms

  # Fallback for services requiring specific region
  - name故障轉移
    type: fallback
    proxies:
      - HK-01 香港節點
      - JP-02 日本節點
    url: "http://www.gstatic.com/generate_204"
    interval: 120

DIRECTREJECT 是 Clash 內建的特殊策略,可直接在分組的 proxies 列表中引用,無需在 proxies 欄位中定義。

設定檔

規則分流

rules 欄位定義流量路由策略,從上到下依次比對,命中第一條規則後立即執行對應策略,不再繼續比對。每條規則格式為:

類型, 比對值, 策略名稱[, no-resolve]

規則類型

類型比對內容範例
DOMAIN完整網域精確比對DOMAIN,google.com,節點選擇
DOMAIN-SUFFIX網域後綴比對(含子網域)DOMAIN-SUFFIX,google.com,節點選擇
DOMAIN-KEYWORD網域包含關鍵字DOMAIN-KEYWORD,youtube,節點選擇
IP-CIDR目標 IP 位址段IP-CIDR,192.168.0.0/16,DIRECT
IP-CIDR6IPv6 位址段IP-CIDR6,2001:db8::/32,DIRECT
GEOIPIP 歸屬國家(GeoIP 資料庫)GEOIP,CN,DIRECT
GEOSITE站點分類(需 GeoSite 資料庫)GEOSITE,cn,DIRECT
PROCESS-NAME進程名稱(桌面端)PROCESS-NAME,curl,DIRECT
MATCH預設規則,比對所有剩餘流量MATCH,節點選擇

規則範例:常用分流配置

YAML
rules:
  # Block ads and tracking domains
  - DOMAIN-KEYWORD,ads,REJECT
  - DOMAIN-SUFFIX,doubleclick.net,REJECT

  # Direct: LAN addresses
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
  - IP-CIDR,127.0.0.0/8,DIRECT,no-resolve

  # Proxy: common overseas services
  - 節點選擇
  - 節點選擇
  - 節點選擇
  - 節點選擇
  - 節點選擇

  # Direct: mainland China IPs
  - GEOIP,CN,DIRECT

  # Default: proxy all remaining traffic
  - 節點選擇

規則順序至關重要——越具體的規則應越靠前MATCH 是預設兜底規則,必須放在規則列表最後一行。包含 IP 類規則 (IP-CIDR, GEOIP) 時,建議加上 no-resolve 後綴以避免不必要的 DNS 解析。

使用 Rule Provider 引用外部規則集

Mihomo (Clash Meta 核心) 支援 rule-providers,可從遠端 URL 載入規則集,避免在 config.yaml 中手動維護大量網域列表:

YAML
rule-providers:
  reject:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt"
    path: ./ruleset/reject.yaml
    interval: 86400

rules:
  - RULE-SET,reject,REJECT
  - 節點選擇
網路

DNS 配置與防洩漏

Clash 內建 DNS 模組,用於在代理流量時對網域進行解析。合理配置 DNS 可防止 DNS 洩漏(ISP 可見您造訪了哪些網域)、避免 DNS 污染,並提升解析速度。

推薦 DNS 配置

YAML
dns:
  enable: true
  listen: 0.0.0.0:1053       # DNS server port inside Clash
  ipv6: false                 # Disable if IPv6 not needed
  enhanced-mode: fake-ip     # fake-ip | redir-host
  fake-ip-range: 198.18.0.1/16

  # Domains resolved directly (not through fake-ip)
  fake-ip-filter:
    - "*.lan"
    - localhost.ptlogin2.qq.com

  # Upstream DNS servers used by Clash
  nameserver:
    - 114.114.114.114         # CN public DNS
    - 223.5.5.5               # Alibaba DNS

  # Fallback DNS (used for overseas domains)
  fallback:
    - tls://1.1.1.1:853      # Cloudflare DoT
    - tls://8.8.8.8:853      # Google DoT
    - https://1.1.1.1/dns-query

  # Use fallback when geoip is not CN
  fallback-filter:
    geoip: true
    geoip-code: CN
    ipcidr:
      - 240.0.0.0/4           # Poison result range

FakeIP 與 Redir-Host 模式比較

模式原理優點適用場景
fake-ip 回傳虛假 IP,實際網域由 Clash 在代理層解析 完全防止 DNS 洩漏;速度快 推薦用於大多數場景
redir-host 先解析真實 IP,再根據 IP 決定路由策略 相容性更好;部分 NAS / 遊戲場景需要 對 FakeIP 有相容性問題時使用
網路

TUN 全域代理模式

TUN 模式透過建立虛擬網路介面,在作業系統核心層面攔截全部 TCP/UDP 流量,無需為每個應用手動設定代理。它是解決「部分軟體無視系統代理」問題的終極方案,遊戲、終端工具、Electron 應用均可覆蓋。

TUN 模式需要管理員權限(Windows 需以管理員執行,macOS 需授權輔助程式)。多數 GUI 客戶端已處理好權限申請流程,直接在介面中切換即可。

在 config.yaml 中啟用 TUN

YAML
tun:
  enable: true
  stack: mixed          # mixed (recommended) | system | gvisor
  dns-hijack:
    - any:53           # Intercept all DNS queries
  auto-route: true     # Automatically add routing rules
  auto-detect-interface: true

TUN stack 模式選擇

stack 值說明推薦程度
mixedTCP 使用 system,UDP 使用 gvisor,兼顧效能與相容性推薦首選
system呼叫系統網路棧,效能最優,但部分 UDP 場景相容性略差效能優先時選用
gvisor使用者態網路棧,相容性最佳,但 CPU 消耗稍高相容性優先時選用

各客戶端啟用 TUN 的方式

客戶端操作路徑
Clash Verge Rev設定 → 系統設定 → 開啟「虛擬網卡 (TUN 模式)」
ClashX Meta選單列 → 增強模式 (Enhanced Mode)
ClashMeta for Android底欄「VPN」→ 切換 TUN 模式
FlClash側邊欄設定 → 服務模式(需先安裝服務)
進階

進階設定

Proxy Provider:統一管理節點來源

proxy-providers 允許從 URL 或在地檔案動態載入節點,適合多機場使用者統一管理:

YAML
proxy-providers:
  airport-a:
    type: http
    url: "https://sub.airport-a.com/clash/subscribe?token=xxx"
    interval: 86400
    path: ./providers/airport-a.yaml
    health-check:
      enable: true
      url: "http://www.gstatic.com/generate_204"
      interval: 300

proxy-groups:
  - name節點選擇
    type: select
    use:           # Reference provider instead of individual nodes
      - airport-a

Profile Mixin:覆蓋訂閱配置

Clash Verge Rev 等客戶端支援 Mixin 功能,允許在不修改訂閱檔案的情況下,將自訂配置「混入」到最終生效的配置中。常用於強制開啟 TUN 模式、替換 DNS 設定:

YAML — Mixin 配置
# Mixin config — merged on top of subscription
mixed-port: 7890
allow-lan: false
tun:
  enable: true
  stack: mixed
  auto-route: true
  auto-detect-interface: true
dns:
  enable: true
  enhanced-mode: fake-ip
  nameserver:
    - 223.5.5.5
    - 114.114.114.114
進階

常見問題

導入訂閱後節點顯示為空?

檢查以下幾點:訂閱連結是否已過期(機場重置後需重新複製);網路是否可以存取訂閱 URL(部分機場訂閱 URL 本身在境內被封鎖,可先開啟 VPN 再更新);訂閱格式是否為 Clash 格式(部分機場同時提供 Clash / ShadowsocksR 等多種格式,需選擇「Clash」格式)。

開啟系統代理後部分軟體仍無法翻牆?

部分軟體(如遊戲客戶端、UWP 應用、終端工具)不遵守系統代理設定。解決方案是開啟 TUN 模式,在系統核心層面攔截所有流量,詳見 TUN 模式章節。

延遲測試顯示節點可用,但實際存取很慢?

延遲測試 (PING) 僅反映交握往返時間,不代表實際下載速度. 嘗試切換到其他節點,或選擇「自動選擇」分組讓 Clash 自動測速選優。也可檢查目前節點的協定是否受在地網路限速(如 Shadowsocks 較容易被 QoS,可嘗試換用 Hysteria2 或 TUIC)。

設定檔報錯 YAML parse error?

YAML 對縮排非常敏感,請確保:使用 2 個空格縮排(不要使用 Tab 鍵);字串值如含特殊字元須用引號包裹;清單項目的 - 後要有一個空格。推薦使用 YAML Lint 線上校驗設定檔語法。

如何查看 Clash 即時連線日誌?

多數 GUI 客戶端提供內建日誌面板:Clash Verge Rev → 側邊欄「日誌」;ClashX → 選單列 → Dashboard → Logs;也可直接存取 REST API:http://127.0.0.1:9090(需配置 external-controller),使用 Yacd 或 MetaCubeXD 等面板查看連線詳情。

準備好開始了嗎?

下載 Clash 客戶端,導入機場訂閱連結,幾分鐘內完成代理部署。