Repository navigation
2.27.0
Оптимизации и защита TorrServer
Перезапуск быстрее, панель легче, у TorrServer появились пароль и изоляция, счётчики трафика дешевле. Обновление ставится поверх, настройки переносятся сами.
Что нужно знать при обновлении
- Счётчики трафика по устройствам один раз начнутся с нуля: при обновлении их таблица пересоздаётся.
- TorrServer один раз перезапустится: он получает мягкий предел памяти.
Что изменилось
TorrServer
- Новая вкладка «Настройки → TorrServer».
- Можно включить пароль на веб-страницу и API TorrServer. Приложения, которые работают через API (Lampa, MSX), тогда попросят имя пользователя и пароль. Ссылки на потоки остаются открытыми. Если пароль включён, но имя или пароль не годятся, TorrServer не запускается и пишет причину в журнал.
- Можно запускать TorrServer в изоляции procd (ujail): он видит только свою программу, свою базу, каталоги кэша на диске и несколько системных файлов. Опция доступна, только если на роутере установлен пакет
procd-ujail. - Пароль и изоляция по умолчанию выключены. Их изменение перезапускает TorrServer, изменение остальных настроек Prokop его не трогает.
- TorrServer получает мягкий предел памяти Go (размер кэша плюс 64 МБ). С ним Go раньше возвращает память, но TorrServer никогда не падает из-за этого предела. Если предел вышел бы больше половины памяти роутера, он не ставится.
- Рекомендуемые настройки выключают Bonjour: он объявлял TorrServer на всех адресах роутера, включая WAN.
Запуск
- Перезапуск, когда с проверки перед ним ничего не изменилось, больше не собирает и не проверяет конфигурацию sing-box второй раз. Это экономит несколько секунд и около 100 МБ пиковой памяти. Если изменилось хоть что-то (настройки, подписки, списки, кэши, сам sing-box или код Prokop), конфигурация собирается заново, как раньше. В журнале видно, какой путь выбран.
Трафик по устройствам
- Подсчёт пакетов дешевле: пакет только прибавляется к счётчику и не переписывает срок хранения записи. Адреса, по которым не было трафика 7 дней, удаляются раз в час.
- Страница «Устройства» обновляется раз в 5 секунд вместо 3.
Автоподбор
- После автоматической смены стратегии «последняя рабочая конфигурация» обновляется, только когда наблюдение прошло. Стратегия, которая не прошла наблюдение, истекла или была остановлена, никогда не становится конфигурацией, к которой Prokop откатывается. Карточка автоподбора показывает, что наблюдение прошло и ждёт записи, и отдельно, если оно закончилось без записи. Если наблюдение закончилось без результата (истекло или автоматический режим выключили), следующие автоматические применения не выполняются, пока вы не откатите стратегию или не смените её вручную: карточка объясняет это.
- Ответы серверов при подборе считаются одним правилом nft вместо одного правила на каждую стратегию. Если ядро не поддерживает такой счётчик, автоматически используется прежний способ.
Интерфейс
- Страницы Prokop в LuCI загружают меньше JavaScript: файлы страниц поставляются сжатыми (на 30% меньше, −122 КБ), а общий модуль панели стал на 12 КБ меньше. Прогресс обновления компонентов и таблица устройств загружаются только на своих страницах. Внешне ничего не меняется.
Что проверено
- PASS: полный прогон автоматических тестов бэкенда от root и от непривилегированного пользователя без
uci(как в CI). Фронтенд: prettier, eslint, tsc, vitest, сборка. На каждое изменение добавлен тест, который не проходит на 2.26.0 и проходит теперь. Счётчики трафика, удаление простаивающих адресов и счётчик ответов автоподбора проверены на настоящемnftс настоящими пакетами. - PASS: таблица устройств и панели прогресса, загруженные отдельными модулями, отрисованы в Chromium на 1440/1024/768 по-русски без горизонтальной прокрутки (без темы LuCI).
- NOT TESTED: на роутере. В первую очередь стоит проверить: пароль TorrServer с Lampa; запуск в ujail и работу TorrServer напрямую при нём; одну сборку конфигурации при перезапуске (строка в журнале); счётчик ответов автоподбора на ядре OpenWrt 25.12; что все страницы Prokop открываются без ошибок в консоли после очистки кэша браузера.