Прочие параметры
[General]
ipv6 = true
loglevel = notify
skip-proxy = 127.0.0.1, 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, 100.64.0.0/10, localhost, *.local
tun-excluded-routes = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12
tun-included-routes = 192.168.1.12/32
Общие параметры
Включить полную поддержку IPv6 (По умолчанию: true)
ipv6 = true
loglevel (По умолчанию: warning)
loglevel = notify
Одно из: none, fatal, warning, notify, info или verbose. Не рекомендуется включать verbose при повседневном использовании, так как это значительно замедлит производительность.
skip-proxy
skip-proxy = 127.0.0.1, 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12, 100.64.0.0/10, localhost, *.local
В версии iOS этот параметр заставляет соединения с этими диапазонами доменов/IP обрабатываться Chute TUN, а не Chute прокси. В версии macOS эти настройки будут применены к системе, когда включен "Set as System Proxy". Этот параметр используется для устранения проблем совместимости с некоторыми приложениями.
- Чтобы указать один домен, введите доменное имя - например, apple.com.
- Чтобы указать все веб-сайты в домене, используйте звездочку перед доменным именем - например, *apple.com.
- Чтобы указать конкретную часть домена, укажите каждую часть - например, store.apple.com.
- Чтобы указать хосты или сети по IP-адресам, введите конкретный IP-адрес, например 192.168.2.11, или диапазон адресов, например 192.168.2.* или 192.168.2.0/24.
Примечание: Если вы вводите IP-адрес или диапазон адресов, вы сможете обойти прокси только при подключении к этому хосту по этому адресу, но не при подключении к хосту по доменному имени, которое разрешается в этот адрес.
Прерывание существующих соединений
interrupt-exist-connections = true
Если включено, изменение выбранной политики в любой группе политик (через URL Test, Fallback, Load Balance, SSID или ручной выбор) приведет к корректному завершению существующих соединений, использовавших старую политику. Это гарантирует, что соединения немедленно начнут использовать новый выбранный прокси, а не останутся на старом.
Каждое затронутое соединение закрывается корректно с 3-секундным тайм-аутом перед принудительным закрытием.
По умолчанию:
false. Это глобальная настройка — она влияет на все группы политик.
Network Framework (macOS / tvOS)
network-framework = true
Включает Apple Network.framework для исходящих соединений. Это включено по умолчанию на macOS и tvOS и отключено на iOS. Использование Network.framework может обеспечить лучшую производительность и современную интеграцию стека TLS на поддерживаемых платформах.
По умолчанию:
trueна macOS/tvOS,falseна iOS.
Исключение простых имен хостов
exclude-simple-hostnames = true
Если включено, запросы к простым именам хостов (однокомпонентные имена без точки, например, localhost) обходят правила прокси и разрешаются локально. Это помогает избежать ненужных DNS-запросов для имен локальной сети.
По умолчанию:
false.
Отключение записи в базу данных
disable-db-record = true
Если включено, Chute прекращает запись записей трафика в локальную базу данных. Это может улучшить производительность и уменьшить использование хранилища, но история трафика не будет доступна в Chute Dashboard.
По умолчанию:
false.
Отображение скорости в строке меню (только Mac)
menu-bar-show-speed = true
Если включено, Chute Mac показывает текущую скорость загрузки и отправки в строке меню.
По умолчанию:
false.
Перехват других DNS-серверов
hijack-dns = 8.8.8.8:53
По умолчанию Chute возвращает поддельные IP-адреса только для DNS-запросов, отправленных на адрес DNS Chute (198.18.0.2). Запросы, отправленные на стандартный DNS, просто пересылаются.
Некоторые устройства или программы всегда используют жестко заданный DNS-сервер. (Например, Google Speakers всегда используют 8.8.8.8). Вы можете использовать этот параметр для перехвата запроса и получения поддельного адреса.
Вы можете использовать hijack-dns = *:53 для перехвата всех DNS-запросов.
Исключенные маршруты
tun-excluded-routes = 192.168.0.0/16, 10.0.0.0/8, 172.16.0.0/12
Chute VIF может обрабатывать только протоколы TCP и UDP. Используйте этот параметр для обхода определенных диапазонов IP, чтобы разрешить прохождение всего трафика.
Примечание: Этот параметр работает только для типа Расширенного режима VIF (utun) — он не действует при использовании типа PacketTunnel VPN. Запросы, обрабатываемые прокси-сервером Chute, не будут затронуты. Комбинируйте 'skip-proxy' и 'tun-excluded-routes', чтобы гарантировать, что определенный HTTP-трафик обходит Chute.
Этот параметр может вызвать системную ошибку ENOMEM (невозможно выделить память). Похоже, это ошибка в системе iOS. Пожалуйста, не используйте этот параметр, если это возможно.
Включенные маршруты
tun-included-routes = 192.168.1.12/32
По умолчанию интерфейс Chute VIF объявляет себя как маршрут по умолчанию. Но поскольку интерфейс Wi-Fi имеет меньший маршрут, некоторый трафик может не проходить через интерфейс Chute VIF. Используйте этот параметр для добавления меньшего маршрута.
Примечание: Этот параметр работает только для типа Расширенного режима VIF (utun) — он не действует при использовании типа PacketTunnel VPN.
Анализ протоколов
sniffing-enabled = true
sniffing-timeout = 100
Chute может определить фактический протокол соединения, проверяя начальные байты. Это позволяет правилам, таким как PROTOCOL,HTTPS,Proxy, работать корректно даже для входящих соединений не HTTP.
sniffing-enabled (По умолчанию: false)
sniffing-enabled = true
Включает определение протокола для TCP-соединений.
sniffing-timeout (По умолчанию: 100 мс)
sniffing-timeout = 200
Максимальное время в миллисекундах для ожидания начальных данных для определения протокола. Увеличьте это значение, если определение протокола не удается на медленных соединениях.
Обход TUN
bypass-tun = 192.168.0.0/16, 10.0.0.0/8
Аналогично skip-proxy, но работает на уровне маршрутизации TUN/VIF. Соединения с этими диапазонами IP будут полностью обходить интерфейс TUN и проходить напрямую через системный сетевой стек.
Примечание: Этот параметр работает только для типа Расширенного режима VIF (utun). Он не действует при использовании типа PacketTunnel VPN.
Отображение страницы ошибки для Reject
show-error-page-for-reject = true
Если включено, Chute возвращает удобную страницу ошибки для отклоненных запросов вместо простого разрыва соединения.
Оптимистичный DNS
optimistic-dns = true
Если включено, Chute немедленно возвращает кэшированный результат DNS, обновляя запись в фоновом режиме. Это уменьшает задержку соединения ценой возможного возврата устаревших DNS-записей.
Разрешить доступ по Wi-Fi
allow-wifi-access = true
Если включено в контексте сотовой/лимитной сети, Chute продолжит функционировать через Wi-Fi соединения. Это специфично для macOS.
Управляемая конфигурация
Chute поддерживает удаленно управляемую конфигурацию через заголовок #!MANAGED-CONFIG в начале файла конфигурации:
#!MANAGED-CONFIG https://example.com/config.conf interval=86400 strict=false
| Параметр | Обязательно | По умолчанию | Описание |
|---|---|---|---|
<url> |
Да | — | URL для получения конфигурации |
interval |
Нет | 86400 (24 ч) | Интервал обновления в секундах |
strict |
Нет | false | Если true, управляемая конфигурация не может быть переопределена локально |
Chute будет периодически повторно получать конфигурацию с указанного URL и применять её. Локальные изменения в строгой управляемой конфигурации не сохраняются.
Реплика / Запись трафика
Раздел [Replica] управляет поведением записи трафика и фильтрацией:
[Replica]
hide-apple-request = true
hide-udp = true
hide-crashlytics-request = true
use-keyword-filter = false
keyword-filter = example
| Ключ | Тип | По умолчанию | Описание |
|---|---|---|---|
hide-apple-request |
Boolean | false | Скрыть запросы сервисов Apple из журнала трафика |
hide-udp |
Boolean | false | Скрыть UDP-трафик из журнала трафика |
hide-crashlytics-request |
Boolean | false | Скрыть запросы Crashlytics из журнала трафика |
use-keyword-filter |
Boolean | false | Включить фильтрацию трафика по ключевым словам |
keyword-filter |
String | — | Ключевые слова, разделенные запятыми, для фильтрации записей трафика |
Ключ
replicaв[General](replica = true) включает запись трафика. Используйте раздел[Replica]для фильтрации того, что записывается.
HTTP Control API и веб-интерфейс
[General]
external-http-controller = 127.0.0.1:9090
external-http-secret = your-secret-token
external-http-ui = true
external-http-cors = false
Chute предоставляет встроенный HTTP API управления и веб-интерфейс управления, аналогичный панелям Clash и Surge. API предоставляет статус ядра, трафик, соединения, DNS, управление политиками и управление конфигурацией через конечные точки REST.
external-http-controller (По умолчанию: отключено)
external-http-controller = 127.0.0.1:9090
Адрес и порт для HTTP-сервера управления. Используйте 127.0.0.1 для доступа только локально. Привязка к 0.0.0.0 или не-loopback адресу разрешает удаленный доступ и требует непустого external-http-secret.
external-http-secret (По умолчанию: пусто)
external-http-secret = your-secret-token
Bearer-токен, используемый для аутентификации API. Запросы должны включать заголовок Authorization: Bearer <secret>. Требуется, когда контроллер привязан к не-loopback адресу или когда желателен удаленный доступ.
external-http-ui (По умолчанию: true)
external-http-ui = true
Если включено, Chute предоставляет встроенный веб-интерфейс по адресу контроллера. Веб-интерфейс предоставляет обзорную панель, управление соединениями, проверку DNS, мониторинг трафика, управление политиками и редактирование конфигурации. Установите false, чтобы сохранить API включенным, отключив интерфейс.
external-http-cors (По умолчанию: false)
external-http-cors = true
Включает заголовки CORS (Cross-Origin Resource Sharing) в ответах API. Полезно, когда веб-интерфейс или сторонние инструменты должны получать доступ к API из другого источника.
Конечные точки API:
| Метод | Конечная точка | Описание |
|---|---|---|
GET |
/api/status |
Статус выполнения, порты, время работы |
GET |
/api/traffic |
Глобальные и пополитичные счетчики трафика |
GET |
/api/connections |
Текущие активные соединения |
DELETE |
/api/connections/:id |
Закрыть соединение |
GET |
/api/connections/history |
История записей соединений |
GET |
/api/dns |
Записи кэша DNS |
DELETE |
/api/dns/cache |
Очистить кэш DNS |
GET |
/api/config |
Текущая конфигурация |
PUT |
/api/config |
Перезагрузить конфигурацию |
GET |
/api/policies |
Группы политик и текущий выбор |
PUT |
/api/policies/:group |
Изменить выбор группы политик |
PUT |
/api/mode |
Установить режим исходящих соединений |
GET |
/api/features |
Состояния переключателей функций |
PUT |
/api/features/mitm |
Переключить MITM |
PUT |
/api/features/record-traffic |
Переключить запись трафика |
Примечание: Эта функция отключена по умолчанию. API использует ответы JSON в формате
{"ok": true, "data": {...}}для успеха и{"ok": false, "error": {"code": "...", "message": "..."}}для ошибок.