Перейти к содержимому
RU

Главная / Блог / Основы конфигурации

Пять типов proxy-groups — select, url-test, fallback, load-balance и relay

Основы конфигурации2026-07-291200 слов3 мин чтения
Пять типов proxy-groups — select, url-test, fallback, load-balance и relay

Группы политик — слой конфигурации Clash с наибольшей свободой проектирования. Один и тот же набор узлов, сгруппированный по-разному, даёт совершенно разные ощущения.

Пять типов одним взглядом

Как ведут себя эти пятьselectручниспользуется то, на что вы нажалимаксимум контроляurl-testсам периодически перепроверяетповседневная рабочая лошадкаfallbackберёпереключается, только когда текущий умеркогда важна стабильностьload-balanceрасппо хешу или по кругунесколько линий параллельноrelayцепотрафик проходит через несколько узлов подрядособые случаи
Первые три — повседневные, последние два решают конкретные задачи

1. select: ручной выбор

Самый базовый вид — по сути выпадающее меню.

- name: "🚀 Выбор"
  type: select
  proxies:
    - "♻️ Авто"
    - "🇭🇰 Гонконг"
    - "🇯🇵 Япония"
    - DIRECT

Характер: решаете полностью вы, сам он никогда не переключается.

Применение: как главный переключатель верхнего уровня. Большинство правил указывают на него, вы меняете его один раз в интерфейсе — и вся конфигурация следует за вами.

2. url-test: автоматически брать самый быстрый

Периодически измеряет задержку у всех узлов группы и выбирает наименьшую.

- name: "♻️ Авто"
  type: url-test
  proxies: ["HK-01", "HK-02", "JP-01"]
  url: "http://www.gstatic.com/generate_204"
  interval: 300        # перепроверять каждые 300 секунд
  tolerance: 50        # допуск 50 мс
  lazy: true           # не проверять, пока простаиваем

Как задавать параметры

ПараметрРекомендацияПочему
urlhttp://www.gstatic.com/generate_204Возвращает пустой 204 — самая лёгкая проверка
interval300 (5 минут)Слишком мало — постоянно дёргаете все узлы; слишком много — переключение запаздывает
tolerance50–100Чаще всего упускаемый параметр
lazytrueНе проверяет в простое, экономит энергию и трафик

url можно направить и на сервис, который вам действительно важен — например, проверять доступность YouTube через https://www.youtube.com/generate_204. Чем ближе цель к реальному использованию, тем лучше подобранный узел.

3. fallback: аварийное переключение

Проверяет в написанном вами порядке и берёт первый, который работает.

- name: "🛡 Резервирование"
  type: fallback
  proxies: ["Основной-IPLC", "Запас-транзит", "Запас-прямой"]
  url: "http://www.gstatic.com/generate_204"
  interval: 180

Ключевое отличие от url-test:

url-test против fallbackurl-testвсегда берёт самый быстрмечется, когда качество узлов скачетдля погони за скоростьюfallbackвсегда берёт первый рабоменяет, только когда тот умердля погони за стабильностью
Есть одна хорошая выделенная линия — берите fallback; качество узлов неровное — url-test

Типичное применение: у вас есть дорогая, но надёжная линия IPLC и несколько дешёвых транзитов. Ставите выделенную линию первой, и только при её отказе группа спускается к транзитам.

4. load-balance: распределение нагрузки

Раскидывает трафик по нескольким узлам.

- name: "⚖️ Балансировка"
  type: load-balance
  proxies: ["HK-01", "HK-02", "HK-03"]
  url: "http://www.gstatic.com/generate_204"
  interval: 300
  strategy: consistent-hashing

Два значения strategy:

  • consistent-hashing (по умолчанию): один и тот же домен всегда идёт через один узел. Берите это — сессии остаются целыми, и вы не теряете состояние входа непонятно почему.
  • round-robin: каждое соединение берёт следующий узел по кругу. Пропускная способность используется лучше, но множество сайтов потребуют повторной проверки при постоянно меняющемся IP.

Кроме того, сервисы, зависящие от стабильной сессии (банки, стриминг, всё с двухфакторной проверкой), для балансировки подходят плохо; скачущий IP приглашает антифрод.

5. relay: цепочка прокси

Трафик проходит через несколько узлов по очереди.

- name: "🔗 Цепочка"
  type: relay
  proxies: ["Вход-транзит", "Выход-US-резидентный"]

Путь: ваша машина → транзит → выход в США → целевой сайт.

Когда это осмысленно:

  • Выходной узел имеет нативный резидентный IP (хорошо разблокирует), но прямое соединение до него плохое, и транзит улучшает канал
  • Нужен фиксированный выходной IP, но прямой маршрут до той машины нестабилен

Цена: каждый лишний хоп — это ещё один раунд шифрования плюс ещё один участок задержки. Без причины не используйте.

Особенность Mihomo: include-all и filter

Написанные руками списки узлов мучительно поддерживать, когда узлы меняются. Mihomo умеет собирать их автоматически:

- name: "🇭🇰 Гонконг"
  type: url-test
  include-all: true                 # взять все узлы из proxies и providers
  filter: "(?i)HK|Hong ?Kong"       # оставить только совпавшие
  exclude-filter: "(?i)trial|expired|website"   # выбросить эти
  url: "http://www.gstatic.com/generate_204"
  interval: 300
  tolerance: 50

Новые гонконгские узлы, появившиеся после обновления подписки, тогда подхватываются сами, без правки конфигурации. Синтаксис регулярных выражений — в именовании узлов и автоматической группировке.

Другие полезные опции:

  include-all-proxies: true      # только из секции proxies
  include-all-providers: true    # только из providers
  use: ["основная-подписка", "запасная-подписка"]  # какие proxy-provider использовать
  hidden: false                  # скрыть группу в интерфейсе
  icon: "https://.../hk.png"     # значок в интерфейсе

Структура групп, которую можно скопировать

proxy-groups:
  # главный переключатель
  - name: "🚀 Выбор"
    type: select
    proxies: ["♻️ Авто", "🇭🇰 Гонконг", "🇯🇵 Япония", "🇺🇸 США", "🇸🇬 Сингапур", DIRECT]

  # автоматическая проверка по всему
  - name: "♻️ Авто"
    type: url-test
    include-all: true
    exclude-filter: "(?i)remaining|expiry|website|traffic"
    url: "http://www.gstatic.com/generate_204"
    interval: 300
    tolerance: 50
    lazy: true

  # региональные группы
  - name: "🇭🇰 Гонконг"
    type: url-test
    include-all: true
    filter: "(?i)HK|Hong ?Kong"
    interval: 300
    tolerance: 50
  - name: "🇯🇵 Япония"
    type: url-test
    include-all: true
    filter: "(?i)JP|Japan|Tokyo"
    interval: 300
    tolerance: 50
  - name: "🇺🇸 США"
    type: url-test
    include-all: true
    filter: "(?i)US|United States"
    interval: 300
    tolerance: 50
  - name: "🇸🇬 Сингапур"
    type: url-test
    include-all: true
    filter: "(?i)SG|Singapore"
    interval: 300
    tolerance: 50

  # по назначению (именно сюда указывают правила)
  - name: "🤖 Сервисы ИИ"
    type: select
    proxies: ["🇺🇸 США", "🇯🇵 Япония", "🚀 Выбор"]
  - name: "🎬 Стриминг"
    type: select
    proxies: ["🇭🇰 Гонконг", "🇸🇬 Сингапур", "🚀 Выбор"]
  - name: "📢 Блокировка рекламы"
    type: select
    proxies: [REJECT, DIRECT]
  - name: "🐟 Прочее"
    type: select
    proxies: ["🚀 Выбор", DIRECT]
Какая иерархия из этого получаетсяrulesпри совпадении указывают куда-тоГруппы по назначениюИИ Региональные группыГонконг Конкретные узлынастоящий выход
Преимущество трёх слоёв: смена узлов происходит в одном месте, а правила не двигаются вообще

Частые вопросы

В: Могут ли группы политик ссылаться друг на друга по кругу? Нет. Положите B в proxies группы A, а A — в proxies группы B, и получите либо сбой загрузки, либо бесконечный цикл.

В: Почему мой url-test всегда показывает таймаут? Недоступен сам тестовый URL. gstatic.com в некоторых сетях не работает; попробуйте http://cp.cloudflare.com/generate_204 или http://connectivitycheck.platform.hicloud.com/generate_204.

В: Надо ли определять DIRECT и REJECT? Нет, это встроенные политики. DIRECT — прямое соединение, REJECT — прямой отказ (для блокировки рекламы), а у Mihomo есть ещё REJECT-DROP и PASS.

В: Какой interval подходит? 300 секунд — точка равновесия. 60 забрасывает все узлы запросами, и часть провайдеров считает это аномалией; 1800 означает, что от умершего узла вы уйдёте через полчаса.

Коротко

  • select как главный переключатель, url-test как автомат, fallback как страховка
  • Всегда задавайте tolerance — без него группа мечется
  • Используйте include-all плюс filter вместо имён узлов руками, чтобы обновления подписки не требовали обслуживания
  • Трёхслойная структура (правила → группа по назначению → региональная группа → узел) поддерживается легче всего

Дальше — как писать правила: справочник по типам правил.


Смежные документы

Структура YAML в конфигурации Clash — за что отвечает каждое из восьми полей верхнего уровня
Основы конфигурации Структура YAML в конфигурации Clash — за что отвечает каждое из восьми полей верхнего уровня

Конфигурация Clash / Mihomo разобрана сверху донизу — порты, режим, DNS, proxies, proxy-groups, rules и rule-providers — плюс минимальная рабочая конфигурация, которую можно вставить как есть.

2026-08-021184 слов3 мин чтения
Расширение подписки через Merge, чтобы ваши правки переживали обновления
Основы конфигурации Расширение подписки через Merge, чтобы ваши правки переживали обновления

Правка скачанного конфига откатывается при следующем обновлении. Как устроен расширенный конфиг Clash Verge: синтаксис prepend/append/override, порядок слияния и набор полезных фрагментов.

2026-07-091021 слов2 мин чтения
Как на самом деле работает проверка задержки и какими должны быть interval, tolerance и lazy
Основы конфигурации Как на самом деле работает проверка задержки и какими должны быть interval, tolerance и lazy

Что измеряет url-test, зачем нужен unified-delay, почему показанная задержка не совпадает с ping, и рекомендуемые значения трёх ключевых параметров вместе с их побочными эффектами.

2026-07-051110 слов3 мин чтения