Писать сотни правил вручную нереально. Провайдеры правил выносят их в отдельные файлы - поддерживаемые сообществом, автообновляемые - и подключаются одной строкой RULE-SET. Функция Premium-ядра, встроена в Clash for Windows.

Базовая структура

rule-providers:
  cn-domains:
    type: http
    behavior: domain
    url: "https://example.com/rules/cn-domains.yaml"
    path: ./ruleset/cn-domains.yaml
    interval: 86400

rules:
  - RULE-SET,cn-domains,DIRECT
  - GEOIP,CN,DIRECT
  - MATCH,Select
  • type: http скачивает по URL и обновляет каждые interval секунд; type: file читает локальный файл.
  • path - локальный кеш; у каждого провайдера свой путь, иначе они затирают друг друга.

Три behavior

behaviorСодержимое файлаЭквивалент
domainСписок доменов (+.google.com)DOMAIN / DOMAIN-SUFFIX
ipcidrСписок CIDR (8.8.8.0/24)IP-CIDR
classicalПолные строки правил (тип,значение)Любая смесь

behavior обязан совпадать с фактическим форматом файла, иначе весь набор молча не работает - причина номер один жалобы «набор правил не действует».

Наборы от сообщества

Широко используемые коллекции (например, Loyalsoldier/clash-rules) дают аккуратно категоризированные, ежедневно обновляемые списки доменов и IP. При выборе смотрите на частоту обновлений, дробность категорий и наличие раздельных форматов domain/ipcidr. Набор типовых категорий (cn, proxy, reject, private, telegram, …) - готовая зрелая маршрутизация; полный пример в классической схеме.

Обновление и отладка

  • Статус провайдеров виден в клиенте; provider ... initial failed в журнале - загрузка не удалась.
  • URL набора сам может требовать прокси: подключитесь через любой живой узел и перезагрузите профиль.
Совет: строки RULE-SET и обычные правила свободно смешиваются, порядок всё так же сверху вниз. Личные правила выше RULE-SET перекрывают отдельные записи коллекции.