Repository navigation
OpenFlux v1.0.2
OpenFlux v1.0.2 — Релиз Exit-Node и клиента: Автодетекция кодеков Batched/LZ4 и фикс Mail.ru Docs
Релиз v1.0.2 устраняет проблемы с подключением через сервис Mail.ru Docs, вводит двустороннее автодетектирование пачечных кадров ZSTD и legacy LZ4, а также переводит серверную часть на кодек batched по умолчанию.
🚀 Что нового и что было исправлено
1. Двусторонняя автодетекция кодеков и Batched по умолчанию
- Умный декодер кадров: Транспорт на приёме (
Receive) теперь автоматически определяет формат входящих данных по первому байту:- Байт
0x02— пакет является пачкой Zstandard (decodeBatch). - Байт
0x1F/0x00— пакет является сжатым LZ4 кадром или несжатым пакетом. - Байт
0x45/0x60— сырой IPv4/IPv6 пакет. - Благодаря этому сервер и клиент могут свободно работать с любыми версиями друг друга без сбоев туннеля.
- Байт
- Переход на кодек Batched по умолчанию: Флаг
--codecпо умолчанию теперь равенbatched. - Поддержка переменных окружения: Добавлено автоматическое чтение параметров
OLCRTC_OPENFLUX_CODEC,OLCRTC_CODEC,OPENFLUX_CODECпри старте.
2. Полное восстановление Mail.ru Docs
- Адаптация под протокол R7/ONLYOFFICE: WebSocket сессия переходит в подключенное состояние (
SetConnected(true)) сразу после отправки пакета аутентификацииauth2, а также валидируется при поступлении ответовdocumentOpen(status: "ok"),waitAuthиlicense. - Устранение блокировки в
Send(): Метод отправки пакетов больше не блокирует трафик, если WebSocket соединение активно. - Сетевая стабильность через прокси: Удален флаг
ForceAttemptHTTP2: trueвutils/proxy.go, вызывавший сбои согласования ALPN при туннелировании через SOCKS5-прокси.
3. Graceful Shutdown
- При остановке сервиса корректно закрываются все открытые WebSocket соединения, сессии совместного редактирования и фоновые горутины, исключая появление висячих сессий (zombie connections) на сервере.
📦 Инструкция по обновлению на VPS
Для ручного обновления бинарника openflux на сервере:
systemctl stop openflux@* || true
curl -fsSL https://github.com/Oleglog/OpenFlux-Android/releases/download/v1.0.2/openflux-linux-amd64 -o /usr/local/bin/openflux
chmod +x /usr/local/bin/openflux
systemctl restart openflux@* || true