1 ACL4SSR 與 Rule Provider 在做什麼
ACL4SSR是社群長期維護的規則與網域清單專案,目標是把常見網站(含串流、社群、雲端與廣告追蹤)分門別類,讓使用者不必自己從零整理。Clash/Mihomo 的Rule Provider則負責在背景定期下載這些清單、快取到本機,再在啟動或更新間隔到期時自動同步;您只要在 rules 區塊引用對應的標籤即可。
這種做法的好處很實際:規則檔與您的機場訂閱分離,換節點不必重寫規則;上游更新 CDN 或新增子網域時,也比手動貼規則來得容易跟上。缺點則是您必須理解規則匹配順序,並確認客戶端版本支援所使用的 behavior 與 format(建議以 Mihomo/Clash Meta 為主,相容性較完整)。
若訂閱連結仍是 SS/V2Ray 等格式,可先閱讀訂閱轉換教學產生 proxies 與 proxy-groups,再把本文的 rule-providers 與 rules 併入同一份設定。
2 規則順序與行為類型
Clash 系核心由上而下比對規則,命中第一條即停止。因此「廣告/追蹤拒連」通常要放在較前面,避免被後面的「全域名走代理」搶先匹配;而「地區直連」與「其餘走代理」則習慣放在後段。若您同時啟用 FakeIP,也要讓 DNS 與規則對齊,否則可能出現「規則顯示走代理,應用程式卻解析到錯誤結果」的現象。
rule-providers 常見 behavior 包含 domain、ipcidr、classical 等。domain 適合大量網域後綴;ipcidr 適合 IP 段;classical 則可承載較貼近傳統 Clash 規則語法的內容。實務上請以您選用的 ACL4SSR 檔案說明為準,錯配行為類型會導致規則完全不生效或載入失敗。
3 訂閱 ACL4SSR 規則集(rule-providers)
下列範例示範如何以 HTTP 方式拉取 GitHub Raw 上的規則檔(實際路徑請以 ACL4SSR 專案目前目錄為準,Release 或分支調整時請自行替換 URL)。path 是本機快取相對於設定檔目錄的路徑;interval 控制多久重新整理一次,預設 86400 秒(一天)對多數使用者已足夠。
rule-providers:
reject:
type: http
behavior: classical
format: yaml
path: ./ruleset/acl4ssr_reject.yaml
url: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/Providers/BanAD.yaml"
interval: 86400
proxy-media:
type: http
behavior: classical
format: yaml
path: ./ruleset/acl4ssr_proxy_media.yaml
url: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/Providers/ProxyMedia.yaml"
interval: 86400
google-cn:
type: http
behavior: classical
format: yaml
path: ./ruleset/acl4ssr_google_cn.yaml
url: "https://raw.githubusercontent.com/ACL4SSR/ACL4SSR/master/Clash/Providers/GoogleCN.yaml"
interval: 86400
匯入後,在 rules 中以 RULE-SET,provider_name,policy 引用(實際前綴依核心版本可能為 RULE-SET 或需搭配 Mihomo 的規則集語法,請以您使用的發行版文件為準)。重點是:policy 必須對應已存在的策略或群組名稱,例如 REJECT、DIRECT、或自訂的 🎬 串流 選擇群組。
file:// 或本機路徑型 provider(依核心支援度)備援,或暫時改用可連通的鏡像;並檢查是否被公司防火牆攔截 HTTPS。
4 Netflix、Disney+ 分流要點
規則集能告訴核心「哪些網域名稱應走哪個策略」,但能不能觀看特定地區目錄,仍取決於您選用的出口節點 IP 是否被平台判定為該區、以及帳戶方案是否支援。實務上建議獨立一個 proxy-groups,例如命名為「串流」或「媒體」,只放入經您實測可解鎖的節點,並在 RULE-SET 中把 Netflix、Disney+ 相關條目指向該群組,與一般上網用的「自動選擇」或「負載均衡」分開,避免日常節點被串流平台標記或限速。
Disney+ 與 Netflix 常會額外請求 CDN 與授權伺服器子網域;若只代理主站而略過某條 API 網域,可能出現無限載入或錯誤代碼。使用 ACL4SSR 的媒體類規則檔,就是為了減少這類漏網之魚。仍失敗時,請在客戶端連線日誌確認最後一跳域名是否仍走直連,並視情況補上自訂規則。
DNS 建議與FakeIP/DoH 設定一併檢視:TUN 或系統代理場景下,若解析仍繞過核心,平台可能讀到真實區域的解析結果,導致解鎖失敗。可優先確保裝置上只有核心提供的 DNS 入口,再重試播放。
5 廣告與追蹤攔截
ACL4SSR 常見的廣告相關檔案會把已知廣告與追蹤域名導向 REJECT。這能減少網頁與應用程式內嵌廣告請求,但無法取代瀏覽器層級的內容過濾,也無法處理與主站同網域載入的廣告。若攔截過頭導致網站異常,可把該站規則暫時改為 DIRECT 或於客戶端加入網域白名單。
建議將 BanAD 或同類 provider 放在 RULE-SET 鏈的前段,並保留一條明確的 GEOIP,CN,DIRECT 或您需要的地區規則在後段,以免國內常用服務被誤判。若您同時使用瀏覽器外掛,注意兩邊規則是否重複攔截造成除錯困難。
6 可改寫的 rules 排序範例
下列片段假設您已定義 proxy-groups 中的 STREAM(手動選擇串流節點)與 PROXY(一般上網)。請依您實際群組名稱修改;若尚未建立 STREAM,可暫時改為 PROXY,待實測後再拆分。
rules:
- RULE-SET,reject,REJECT
- RULE-SET,proxy-media,STREAM
- RULE-SET,google-cn,DIRECT
- GEOIP,CN,DIRECT
- MATCH,PROXY
實際部署時,您可能還會加入 Telegram、Apple、Microsoft 等分類檔;原則不變——越精確、越不想被覆蓋的規則越靠前,最後以 MATCH 收斂。使用圖形客戶端時,部分程式會在儲存時重新排序或合併訂閱,建議在「設定預覽」中確認最終順序是否符合預期。
需要讓終端機、Docker 等全系統流量都遵守同一套規則時,可搭配TUN 模式教學,避免僅瀏覽器走代理而播放程式仍直連。
7 驗證與除錯
- 規則集是否載入:在客戶端檢視規則提供者狀態,確認更新時間與檔案大小合理,而非長期顯示失敗。
- 策略是否命中:開啟連線日誌或即時連線列表,播放 Netflix/Disney+ 時觀察域名是否落在
STREAM或預期群組。 - DNS 洩漏:若影片可開但目錄不對,優先檢查系統 DNS 與 TUN 是否一併走核心;必要時參考站內 DNS 專文調整
dns區塊。 - 過度攔截:若網路異常,暫時停用
reject相關 RULE-SET 以二分法找出衝突規則。
8 總結
透過 Rule Provider 訂閱 ACL4SSR,您可以把串流、廣告、地區直連等繁瑣條目交給社群維護,自己專注在節點品質與 DNS/TUN 架構。記住規則順序與群組命名一致,解鎖成功率會比單純「全部走代理」穩定得多,也比手刻規則更省時間。
相較命令列單核心部署,圖形化 Clash 用戶端在管理多份訂閱、切換規則集與除錯連線時通常更直覺;若您希望桌面環境一鍵完成上述流程,可從站上的下載頁取得適用 Windows、macOS 或 Linux 的版本,再匯入本文的 provider 與規則順序。