入門教程 閱讀約 16 分鐘

Clash Meta 按進程分流怎麼寫?PROCESS-NAME 規則逐步配置(2026)

許多讀者已會用域名、GEOIP 與規則集做規則模式分流,但實務上仍常遇到兩類痛點:只想讓瀏覽器、遊戲啟動器或下載器走代理,其餘辦公軟體維持直連;或某程式完全不讀系統代理,怎麼設 HTTP 代理都無效。此時在 MihomoClash Meta 系核心)裡使用 PROCESS-NAME(以及進階的 PROCESS-PATH)可依行程名稱或執行檔路徑決定策略組,比純域名規則更直覺。本文以 WindowsmacOS 桌面情境為主,說明可複製的 YAML 規則片段find-process-modeTUN 的必要性,並整理大小寫、執行檔名、規則順序與日誌排查等常見踩坑;與本站既有的 TUNDNS系統代理WSL2 長文互補,專注在「按進程」這一層。

Clash 編輯組 Clash Meta · Mihomo · PROCESS-NAME · 按進程分流 · Windows · macOS

什麼情境適合用 PROCESS-NAME?

若您的目標是「同一台電腦上,不同程式走不同出口」,而域名規則又太寬或太碎(例如某遊戲同時連到大量 CDN、或下載器域名隨版本變動),PROCESS-NAME 可以把決策點收斂到誰發起了連線。典型情境包括:只讓 chrome.exemsedge.exe 對外走代理,本機同步盤與視訊會議維持直連;或某開發工具、遊戲反作弊環境忽略系統代理,改由 TUN 接管後再用進程規則精準指定策略組。

請注意:PROCESS-NAME 不是「萬用替身」,若程式沒有經過 Mihomo 能看見的出站路徑(例如未開 TUN、或流量根本沒進核心),規則永遠不會命中。它與「全域/規則模式」的關係是:mode: rule 決定是否走規則表;進程類型規則只是規則表中的一列,與 DOMAINGEOSITE 等並列,仍遵守由上而下第一筆命中的順序。

1前置:TUN、find-process-mode 與規則模式

在 Mihomo 官方文件中,行程比對由根層級的 find-process-mode 控制,可選 strict(預設,由核心判斷是否啟用)、always(強制比對所有行程)或 off(完全不比對,路由器場景常用)。要讓 PROCESS-NAME 在桌面作業系統上穩定有資料可用,實務上多會搭配已啟用的 TUN,讓應用程式流量進入核心可掛勾的路徑;僅依賴「瀏覽器手動指向本機 HTTP 埠」時,有些連線根本不會帶上可供比對的行程資訊。

建議先完成圖形客戶端或設定檔中的 TUN 開啟與開機自啟流程,再回來寫進程規則。Windows 讀者可從 Clash Verge Rev TUN 模式完整開啟教程 對照;若您仍卡在系統代理寫入,亦可參考 Windows 安裝與訂閱匯入UWP 與 Loopback 相關排查。macOS 讀者若遇鑰匙圈或 Helper 權限問題,可先讀 macOS 系統代理逐步排查,再啟用 TUN 疊加進程規則。

提醒:TUN 會改寫路由與 DNS 走向,與其他 VPN、企業安全客戶端並存時請留意優先順序;調整期間建議保留一條不中斷的管理路徑(例如本機直連路由器後台),避免把自己鎖在錯誤路由之外。

2PROCESS-NAME 語法與規則順序

rules: 區段中,每一列都是「條件 → 策略組或內建動作」。PROCESS-NAME 的基本形狀為:PROCESS-NAME,<行程名稱>,<POLICY>,其中 <POLICY> 必須對應您設定檔裡存在的 proxy-groups 名稱(或 DIRECTREJECT 等內建值)。Mihomo 另支援 PROCESS-NAME-WILDCARDPROCESS-NAME-REGEX,以及以完整路徑匹配的 PROCESS-PATHPROCESS-PATH-WILDCARDPROCESS-PATH-REGEX,可在「同名執行檔多份」時縮小範圍。

規則由上而下只命中第一筆。實務上常把「最精確、最想例外處理」的列放在前面:例如先寫進程規則,再放寬鬆的 GEOSITEGEOIP,最後才是 MATCH。若您把一條很寬的域名規則放在 PROCESS-NAME 之前,且該連線已先被域名規則吃掉,後面的進程規則就不會再被評估。

3Windows:執行檔名與大小寫

在 Windows 上,多數情境請以工作管理員資源監視器中看到的「名稱」欄為準,通常會是帶副檔名的執行檔,例如 chrome.exefirefox.exeTelegram.exe。撰寫規則時請注意:副檔名與大小寫是否與實際行程一致,錯一個字元就不會命中。若同一台機器上有多個瀏覽器或不同通道的同名程式,可改用 PROCESS-PATH 指到完整安裝路徑,降低誤判。

下載器、遊戲啟動器常會再拉子行程更新或反作弊模組;若日誌顯示命中的是另一個 .exe,規則也要對應調整,而不是只寫主程式。遇到怎麼改域名規則都不像預期時,請在客戶端連線日誌中搜尋 Process( 或類似欄位,確認核心實際辨識到的名稱後再寫入 YAML。

4macOS:行程名稱與 .app 的對照

macOS 上顯示給使用者的 App 名稱(例如「音樂」)與實際行程名稱未必相同。建議以「活動監視器」中的程序名稱欄,或終端機的 ps 輸出為準;部分應用會以單一 Unix 可執行檔名稱出現,例如瀏覽器相關行程。若規則怎麼寫都不命中,優先核對:是否已啟用 TUN、該 App 的流量是否確實經過 Mihomo、以及名稱是否含空白或大小寫差異。

與 Windows 類似,當多個版本或測試通道並存時,PROCESS-PATH 指向 /Applications/... 底下具體二進位,通常比單靠名稱更穩。regex 與萬用字元型規則威力強,但也更容易誤傷;建議先在 infodebug 日誌級別下驗證命中,再收斂到正式環境。

5可複製的設定骨架(示意)

下列片段僅為結構示意:請將 PROXY_BROWSERPROXY_GAME 等替換成您自己的策略組名稱,並與既有 proxiesproxy-groups 對齊。註解一律使用英文,避免部分解析器對非 ASCII 註解相容性不一。

# Snippet — merge into your full config; replace policy group names
mode: rule
log-level: info
find-process-mode: strict

tun:
  enable: true
  stack: system
  auto-route: true
  auto-detect-interface: true
  dns-hijack:
    - any:53

# dns / proxies / proxy-groups — keep your existing blocks

rules:
  # High-priority: per-process exceptions (examples)
  - PROCESS-NAME,chrome.exe,PROXY_BROWSER
  - PROCESS-NAME,msedge.exe,PROXY_BROWSER
  - PROCESS-NAME,firefox.exe,PROXY_BROWSER
  - PROCESS-PATH,C:\Program Files\Company\GameLauncher\Game.exe,PROXY_GAME

  # Your usual domain / GEOIP / rulesets ...
  - GEOIP,private,DIRECT,no-resolve
  - MATCH,PROXY_DEFAULT

若您懷疑 strict 下仍常出現「找不到行程」的除錯訊息,可在充分理解效能與相容性的前提下,改試 find-process-mode: always 做對照實驗;路由器或僅做埠轉發的裝置則應維持 off。Linux 桌面若自行跑 Mihomo 服務,亦可能遇到 systemd 與行程查詢相關議題,可延伸閱讀 Linux Mihomo TUN 與 systemd 教學 與上游 Issue 討論。

與 DNS、FakeIP 的關係

進程規則決定的是連線要送到哪個策略組;若 DNS 解析與 FakeIP 映射仍與規則不一致,仍可能出現「規則顯示命中代理,但實際連線行為怪異」的現象。建議將進程規則與 Meta 核心 DNS 防洩漏指南 一併閱讀,確認 dns.enableenhanced-modetun.dns-hijack 是否與您的分流目標一致;一次只調整「進程規則」或「DNS」其中一類,較容易從日誌收斂問題。

排查:規則沒命中時怎麼辦?

先看日誌與命中列

log-level 暫時調到 debug(除錯完記得改回),觀察每一條 TCP 連線是否帶有行程資訊、以及最終命中哪一條規則。若日誌中完全沒有行程欄位,回到第一節檢查 TUN 與 find-process-mode,而不是急著堆更多 PROCESS-NAME

再查規則順序與策略組名稱

圖形介面顯示的「節點選擇」中文名,與 YAML 內英文策略組名不一致時,最常見症狀是規則載入失敗或默默落到 MATCH。請以設定檔中的實際字串為準,必要時全文搜尋 proxy-groups: 區塊核對拼字。

最後才調整 tun.stack 與防火牆

若僅特定 UDP 或 P2P 行為異常,可再嘗試 gvisormixed 堆疊;同時確認本機防火牆或其他安全軟體未攔截 TUN 介面。此類調整與 TUN 教學 中的注意事項高度重疊。

小結:進程分流的穩定度=「流量有進核心」×「名稱/路徑寫對」×「規則順序合理」×「DNS 與策略一致」。四項都成立時,PROCESS-NAME 才會變成長期可維護的工具,而不是一組難以解釋的魔法列。

開源資訊與安裝包取得方式

Mihomo 上游以開源形式維護,若您需要查閱授權條款、原始碼或提交議題,GitHub 仍是合適的資訊來源。日常安裝或更新圖形客戶端,建議優先使用 本站 Clash 下載頁,並搭配 設定說明文件 理解模式與名詞;將「取得安裝包」與「閱讀開源倉庫」分開,可避免讀者誤以為必須自行從 Release 頁拼裝環境。

結語

PROCESS-NAME 把「誰在連線」變成可讀的規則語言,補足了純域名分流難以覆蓋的縫隙:在 WindowsmacOS 上,只要記住TUN 與 find-process-mode 是地基,再處理好執行檔名/路徑與規則順序,就能穩定做到「瀏覽器走代理、其餘直連」或「鎖定單一頑固程式」這類高意圖需求。相較於只靠全域切換,這種寫法長期維護成本通常更低,也更符合實際桌面工作流。

若您已能跑通域名規則與策略組,下一步把進程列補在正確深度,並用日誌驗收,就能把 Clash Meta 的表達力用滿。相較於零散工具鏈,同一套 Mihomo 規則表可與本站 TUN、DNS、WSL2 等文章銜接成完整知識鏈。

立即免費下載 Clash,開啟流暢上網新體驗

Clash 客戶端 PROCESS-NAME/TUN

內建或外掛 Meta(Mihomo)核心的圖形客戶端,適合在啟用 TUN 後以連線日誌對照行程名稱,逐步收斂 PROCESS-NAME 規則,減少「以為命中、其實沒進核心」的靜默錯誤。

規則與策略組清楚

進程列與域名列可並存維護

連線日誌可對照

驗證 PROCESS-NAME 是否命中

系統代理或 TUN 可切換

依程式支援度選擇接管方式

安裝包請走本站

下載與開源倉庫資訊分開理解

上下篇導覽

相關閱讀

按進程分流一次到位

從本站下載 Clash,啟用 TUN 後用日誌對齊 PROCESS-NAME,讓瀏覽器與遊戲走代理、其餘程式直連更直覺。

免費下載客戶端