Как loft работает на роутере Keenetic. Каталог: clients/Keenetic/. План: clients/Keenetic/PLAN_ru.md. Макет: clients/Keenetic/design/index.html. Протокол: protocol_ru.md.
Пакета ещё нет. Этот файл — спецификация интеграции.
KeeneticOS решает куда идут пакеты (приоритеты, политики, DNS-маршруты). loft решает как туннель выглядит в канале (фронты loft).
хост LAN
→ политика Keenetic
→ OpkgTun0 (интерфейс NDM, описание Loft)
→ TUN loft (без маршрута по умолчанию)
→ loft get|ws|h2|quic|h3
→ TLS 1.3 → CDN или нода
VLESS, когда появится, — второй исходящий loft на том же OpkgTun. SSTP остаётся штатным клиентом Keenetic.
KeeneticOS 5.0+ поднимает TUN/TAP из Entware в NDM (OpkgTun / OpkgTap) и пускает эти интерфейсы в политики подключений и статику.
Эскиз после живого Status:
interface OpkgTun0 type OpkgTun
interface OpkgTun0 description Loft
interface OpkgTun0 security-level public
interface OpkgTun0 ip address <ip-оверлея> 255.255.255.255
interface OpkgTun0 ip tcp adjust-mss pmtu
interface OpkgTun0 up
Только ndmc. Никогда ip route из шелла — NDM пересобирает таблицы.
Процесс loft не должен ставить 0/0 и kill-switch. Хватает listen.tun: auto.
В вебе Keenetic:
Списки use: loft на роутере по умолчанию выкл. Контроллер может по-прежнему публиковать списки; этот клиент их не берёт, пока оператор это не включит.
Политика с 0/0 в Loft утащит в туннель и GET/WS на CDN/ноду. До up IP исходящих пинятся на интерфейс провайдера (как endpoint у WireGuard). На десктопе loft уже исключает хосты сессии из TUN; в режиме Keenetic то же через хостовые маршруты ndmc.
HTTP http://<lan>:8090/. Процесс прокидывает Cookie браузера на 127.0.0.1/auth. 200 и роль admin/configurator — UI. 401 — редирект на штатную веб-админку.
Cookie привязана к хосту, Path=/, поэтому :80 и :8090 её делят. localhost:79 (RCI без пароля) остаётся только демону.
KeeneticOS 5.2 может объявить x-ndw4-authenticate; тогда панель берёт одноразовый токен по редиректу.
Не компонент Keenetic. Не новая строка в «Добавить подключение». Не патч /usr/share/htdocs_. Для этого нужна сама Keenetic или инжект под прошивку; панель от них не зависит.