Приостановка по SSID
Доступно в Chute iOS, Chute Mac и Chute Android. Недоступно на Apple TV.
Вы можете настроить Chute так, чтобы он приостанавливался, пока устройство подключено к указанным сетям Wi-Fi.
[SSID Setting]
"Corp-VPN" suspend=true
Как это работает:
- iOS: записи с точным именем сети (как есть, в кавычках или
SSID:<имя>) и записиTYPE:WIFI/TYPE:CELLULARстановятся правилами отключения по требованию в конфигурации VPN;TYPE:WIFIохватывает все сети Wi-Fi. Система разрывает туннель, когда устройство подключается к такой сети, и держит его отключённым, пока устройство там остаётся; после следующей смены сети снова действуют обычные правила по требованию, поэтому «Всегда включён» переподключается автоматически. ЗаписиBSSID:иROUTER:,TYPE:WIRED, а также имена с*или?нельзя выразить правилом по требованию: когда собственная проверка движка совпадает с такой записью, туннель останавливает себя сам, и после выхода из сети вы переподключаетесь вручную — если только не включён «Всегда включён», чьи правила подключения тут же вернули бы туннель, поэтому такие записи в iOS не приостанавливают его, и Chute лишь сообщает причину. При каждом начале приостановки Chute iOS показывает уведомление «Приостановлено в этой сети» (согласно настройке уведомлений приложения). - Mac: пока текущая сеть соответствует записи
suspend=true, Chute выключает системный прокси и TUN и восстанавливает их, когда сеть перестаёт соответствовать. Учитываются все виды селекторов. Когда конфигурация называет сеть Wi-Fi, Chute один раз запрашивает разрешение на геолокацию (macOS 10.15 и новее); начиная с macOS 14 без него имя Wi-Fi прочитать нельзя, и могут сработать только записиTYPE:иROUTER:. - Apple TV: настройки, зависящие от сети, сохраняются в конфигурации для других платформ, но никогда не применяются; при сохранении приложение показывает уведомление.
- Android: Chute читает тип подключения, SSID, BSSID и шлюз, сверяет записи при каждой смене сети и раз в минуту и передаёт
dns-server/encrypted-dns-serverподошедшей записи в резолвер. В режиме VPN подошедшая записьsuspend=trueотключает интерфейс VPN, а движок продолжает работать, так что трафик идёт в обход Chute; Chute показывает уведомление «Приостановлено в этой сети», главный экран называет сработавшую запись, а интерфейс возвращается сам, как только устройство покидает сеть. Учитываются все виды селекторов. В режиме Локальный прокси приостановки нет. Ради имени сети приложение запрашивает разрешение на геолокацию (Android 12 и более ранние) или на устройства Wi-Fi поблизости (Android 13 и новее), когда в конфигурации есть раздел[SSID Setting]; запуск, который не может показать запрос, вместо этого публикует уведомление — см. Начало работы на Android.
Последующая подходящая запись с suspend=false отменяет приостановку на Mac и Android — и на iOS тоже: правила по требованию просматриваются по принципу «побеждает последнее совпадение», как и собственный вердикт движка, поэтому правило отключения не записывается. Две отмены правилам по требованию выразить не под силу. Первая — между разными видами селекторов: TYPE:WIFI suspend=true, а следом SSID:Home suspend=false, всё равно разрывает туннель в этой сети, потому что правило построено для всего Wi-Fi. Вторая — запись с подстановочным знаком не может отменить конкретную, так что SSID:Home suspend=true, а затем Home* suspend=false оставляет правило на месте. Собственный вердикт движка учитывает обе отмены.
DNS для отдельной сети
Запись также может менять DNS, пока её сеть является текущей:
[SSID Setting]
SSID:Home dns-server=192.168.1.1, 192.168.1.2:5353, encrypted-dns-server=off
BSSID:AA:BB:CC:DD:EE:FF encrypted-dns-server=https://doh.example/dns-query, tls://dot.example
TYPE:CELLULAR dns-server=1.1.1.1
dns-server=заменяет обычные резолверы основного пула. Принимаются только обычные записи — IP-адрес с необязательным портом ([v6]:portдля IPv6),systemилиsyslib, записанные так же, как в глобальномdns-server. URL шифрованного резолвера, который глобальный ключ принимает, здесь отбрасывается с уведомлением; укажите его вencrypted-dns-server=. Записьtcp://IP[:port]для DNS поверх TCP тоже принимается.encrypted-dns-server=offотключает все шифрованные резолверы; список URL заменяет их, распределяясь по DoH, DoT, DoQ и DoH3 в зависимости от схемы.- Селекторы те же, что и для приостановки: имя сети в кавычках,
SSID:<имя>,BSSID:<адрес>,TYPE:WIFI,TYPE:CELLULAR,TYPE:WIREDиROUTER:<адрес шлюза>; в именах можно использовать шаблоны*и?.MCCMNC:принимается, но никогда не совпадает. - Переопределение применяется при смене сети и при загрузке конфигурации. Если подходят несколько записей, действует более поздняя; при уходе из сети восстанавливаются настроенные серверы.
- Одна запись может сочетать
suspend=с параметрами DNS.
Форма Shadowrocket в [Host] — ssid:<имя> = server:<dns> — превращается в запись такого вида; см. Локальное сопоставление DNS. На Apple TV такие записи сохраняются, но никогда не применяются.
Эта страница — перевод английской версии. При расхождениях приоритет имеет английская версия.