Skip to content

Releases

RX23302 OpenWrt 0.2.1 — свой MAC у каждой коробки

Choose a tag to compare

@Elengal Elengal released this 30 Oct 06:13
eeed270

RX23302 OpenWrt 0.2.1 — свой MAC у каждой коробки

Главное

В 0.2.0 все прошитые роутеры делили один MAC (02:E0:4C:81:96:C1).
Теперь eth0 читает свой заводской адрес из таблицы hwconfig во флеше:
у каждой коробки он свой, прошивкой не затирается, стабильный между
перезагрузками. WiFi и VLAN-ы наследуют от него же.

Зачем «фабричный, но 00→02»: заводской адрес напрямую ставить нельзя —
во внутреннем свитче на него статическая запись, передача умирает
(известная грабля с 0.1.x). Поднимаем бит локального администрирования.

Стабильность аппаратного NAT проверена стрессом: 30 минут,
8 потоков iperf3, 145 ГБ — без единого сбоя.

Установка

  • Со стока: Reset при включении → TFTP 192.168.1.6 → tftp-factory.bin
    (см. docs/install-tftp.md)
  • С 0.1.2+/0.2.0: LuCI → System → Backup/Flash, или
    sysupgrade -n openwrt-...-sysupgrade.bin
  • Галка LuCI «Flow offloading: Hardware» включает аппаратный NAT
    (~890 Мбит/с, CPU свободен); без неё — софт (~860 Мбит/с).

Замеры

  • софт-NAT: ~760–890 Мбит/с
  • hw-NAT: ~845–930 Мбит/с
  • стресс hw-NAT: 30 мин, 8 потоков, 145 ГБ — сбоев нет

Известные ограничения

  • 2.4G LED не горит (регрессия с 0.2.0) — в планах 0.2.2.

SHA256

f69eb46da1e93090f5ac678193b8656eedd0bdee7ba77a3075305a7b6081752a  full.bin
4ef3916463e0b4d1ba9299f6915c6165ba0f494721ec506bd6174c971469c4ec  sysupgrade.bin
df8f21e965d3054366819168614da4e4666cd4faabf511fbeca661d05fff8f2f  tftp-factory.bin

0.2.0 — аппаратный NAT RTL8197F (тест), честные замеры

Choose a tag to compare

@Elengal Elengal released this 29 Oct 14:20
fc65cc4

0.2.0 — аппаратный NAT RTL8197F (тестовый режим), честные замеры

Что нового

  • Аппаратный NAT на RTL8197F: NAPT-движок ASIC вместо программного NAT. Порт из
    ADCDS/openwrt-dlink-dir842-r1 (GPL-2.0), переработан
    под штатный flowtable ядра 6.18.
  • Включается одной галкой: LuCI → Firewall → General → «Flow offloading: Hardware»
    (или uci set firewall.@defaults[0].flow_offloading_hw=1; ubus call uci commit '{"config":"firewall"}').
    Из коробки — программный офлоад, аппаратный — тестовый режим.
  • Смена режима — через перезагрузку (живое переключение нестабильно, проверено).
  • В AP-режиме (мост) аппаратный NAT не применяется — сервис сам отказывает, сеть не ломается.
  • Status LED (статичный, активный низкий) заведён в DTS.
  • NAPI TX с рециркуляцией буферов, eth0 в программном flowtable, flow_indr принимает любые bind
    (fw4 больше не падает в deny-all).
  • uci-defaults больше не затирает выбор «Hardware» при обновлении прошивки.

Честные замеры (iperf3, TCP, один стенд, 3–8 прогонов по 10 с)

Прошивка NAT LAN→WAN, Мбит/с WAN→LAN, Мбит/с CPU
Заводская V1.24.137 программный (0 строк NAPT — аппаратный не включается) 724–748 791–809 ~40% idle
Эта, программный офлоад программный 850–876 861–876 100% sirq
Эта, аппаратный NAT (тест) железо 857–900 (редко ~430–440) 846–863 (чистый стенд до 929) 90–100% idle

Замеры — 27–29.10.2026 на живом роутере с обычным домашним трафиком; вилки подробностей — в README.

Известные ограничения

  • Аппаратный NAT — IPv4 TCP/UDP; IPv6 и ICMP — программно; таблица 1024 строки (коллизия → поток в софт,
    возможны просадки); смена режима — перезагрузкой.
  • 2.4G LED в 0.2.0 не горит (регрессия против 0.1.2): вендорский LED-регистр 8197G остаётся нулевым
    при инициализации; причина найдена, чинится. 5G LED работает и мигает от трафика.
  • Status LED — найден (GPIO H1) и заведён.

Образы

  • …-squashfs-sysupgrade.bin — обновление с сохранением/без настроек;
  • …-squashfs-tftp-factory.bin — установка кнопкой Reset + TFTP (docs/install-tftp.md);
  • …-squashfs-full.bin — заливка по UART (docs/install-uart.md);
  • sha256sums — рядом.

EN (short)

0.2.0: RTL8197F hardware NAT (test mode, LuCI toggle), software flow-offload by default; honest numbers:
stock 724–809 Mbit/s with ~40% idle CPU and 0 NAPT rows, this port 857–929 Mbit/s with an idle CPU.
Switch modes via reboot. Known: 2.4G LED dark in 0.2.0 (regression, fix in progress), IPv6/ICMP stay in software.

0.1.2

Choose a tag to compare

@Elengal Elengal released this 21 Oct 21:14

Своя прошивка OpenWrt (Linux 6.18) для роутера Ротек (Rotek) RX-23302 / ELECTRA RX23302 (Ростелеком).
OpenWrt (Linux 6.18) for the Rotek RX-23302 / ELECTRA RX23302 router.

⚠️ Проверено только на RX-23302 с RTL8197FH-VG (загрузчик Realtek RTL8197F-VG boot code … v3.4T-pre4.6).
Ревизия RX-23302R и двойники не проверялись. / Tested only on RX-23302 with RTL8197FH-VG; RX-23302R is untested.

Что нового / What's new

  • Установка без разборки и UART. Зажать Reset, включить питание, ~10 с — заводской загрузчик поднимает
    аварийный TFTP на 192.168.1.6; передать …-squashfs-tftp-factory.bin — загрузчик сам проверит суммы,
    запишет ядро и корневую систему и перезагрузится в OpenWrt (~2 мин).
    Подробно — docs/install-tftp.md.

  • Кнопка Reset в OpenWrt: коротко — перезагрузка, держать 5+ с — сброс настроек.

  • Светодиоды: POWER, WAN, LAN1, LAN2 (линк и активность), 2.4G. Лампы 5G и Status — в 0.1.3.

  • tools/flash-uart.py проверяет образ так же, как sysupgrade, до долгой передачи (PR #1).

  • Файл LICENSE (GPL-2.0).

  • Install without opening the case: hold Reset at power-on, send …-squashfs-tftp-factory.bin over TFTP
    to 192.168.1.6 — the stock bootloader flashes it and boots OpenWrt (~2 min). See docs/install-tftp.md.

  • Reset button works in OpenWrt (short = reboot, 5+ s = factory reset). LEDs: POWER, WAN, LAN1, LAN2, 2.4G.

Проверено на железе / tested on hardware: эти самые образы — запись через TFTP загрузчиком (дважды), флеш сверен
с образом по md5; кнопка Reset (перезагрузка), лампы WAN/LAN1/LAN2 по проводу, Wi-Fi 2,4 и 5 ГГц.

Установка / Install

С заводской прошивки — кнопкой Reset + TFTP (docs/install-tftp.md):

# компьютер в LAN роутера, адрес 192.168.1.10/24; Reset зажат при включении ~10 с
tftp -i 192.168.1.6 PUT openwrt-0.1.2-electra_rx23302-squashfs-tftp-factory.bin      # Windows
busybox tftp -p -l openwrt-0.1.2-electra_rx23302-squashfs-tftp-factory.bin 192.168.1.6 # Linux

Запасной путь — UART: docs/install-uart.md,
файл …-squashfs-full.bin.

Уже стоит OpenWrt 0.1.x → LuCI → «Система» → «Резервная копия / Прошивка» → «Установить новый образ прошивки»,
файл openwrt-0.1.2-electra_rx23302-squashfs-sysupgrade.bin, или sysupgrade /tmp/…-sysupgrade.bin.

Сверка флеша после установки / verify after install:

head -c 2932738 /dev/mtd2 | md5sum                         # 470f35ec42844d67924fcce7f494183b
head -c 2412162 /dev/mtd1 | tail -c 2412146 | md5sum       # d6b2860be81e2632e8a4115f0839bd3d (тело ядра)

Целиком md5sum /dev/mtd1 после TFTP не совпадёт с образом — загрузчик переписывает 4 байта в заголовке ядра
(поле адреса), это нормально. / After TFTP the whole-mtd1 md5 differs by design (bootloader rewrites 4 header bytes).

TFTP не стирает настройки: если раньше стояла OpenWrt — держите Reset 5+ с или firstboot -y && reboot.
Wi-Fi RX23302 / RX23302-5G, пароль 1234567890 — смените.

Файлы / Files

openwrt-0.1.2-electra_rx23302-squashfs-tftp-factory.bin установка кнопкой Reset + TFTP / Reset + TFTP install
openwrt-0.1.2-electra_rx23302-squashfs-sysupgrade.bin обновление из LuCI / sysupgrade
openwrt-0.1.2-electra_rx23302-squashfs-full.bin прошивка через UART / UART install
openwrt-0.1.2-electra_rx23302.manifest список пакетов
sha256sums.txt sha256 образов

0.1.1

Choose a tag to compare

@Elengal Elengal released this 20 Oct 14:56

Обновление своей прошивки OpenWrt (Linux 6.18) для роутера Ротек (Rotek) RX-23302 / ELECTRA RX23302 (Ростелеком).
Update of OpenWrt (Linux 6.18) for the Rotek RX-23302 / ELECTRA RX23302 router.

⚠️ Проверено только на RX-23302 с RTL8197FH-VG (лог UART начинается с Realtek RTL8197F-VG boot code).
Ревизия RX-23302R не проверялась. / Tested only on RX-23302 with RTL8197FH-VG; RX-23302R is untested.

Что нового / What's new

  • Обновление из LuCI и sysupgrade — с сохранением настроек и начисто. Оборванное обновление — не кирпич:
    загрузчик сам поднимет заводскую прошивку из второго банка.

  • Проверенный возврат на заводскую прошивку: mtd erase kernel && reboot — загрузчик копирует сток
    из банка 2 (Copy bank2 to bank1 successfully!); банк 1 после этого совпал с заводским дампом побайтно.
    Подробно — docs/recovery.md.

  • …-squashfs-sysupgrade.bin теперь = full.bin + метаданные fwtool (старый sysupgrade-образ не загружался).

  • LuCI / sysupgrade firmware upgrade, keeping settings or not; an interrupted upgrade falls back to stock, not a brick.

  • Verified return to stock: mtd erase kernel && reboot — see docs/recovery.md.

Проверено на железе / tested on hardware: sysupgrade -n, sysupgrade с настройками, LuCI «Прошить образ»,
сток → OpenWrt по UART, OpenWrt → сток. Эти самые образы залиты и сверены по md5.

Установка / Install

Уже стоит OpenWrt 0.1.0 → LuCI → «Система» → «Резервная копия / Прошивка» → «Установить новый образ прошивки»,
файл openwrt-0.1.1-electra_rx23302-squashfs-sysupgrade.bin. Или / or:

sysupgrade /tmp/openwrt-0.1.1-electra_rx23302-squashfs-sysupgrade.bin

С заводской прошивки — пока только через UART: docs/install-uart.md.

python3 tools/flash-uart.py openwrt-0.1.1-electra_rx23302-squashfs-full.bin /dev/ttyUSB0

После загрузки сверьте флеш / verify after boot:

md5sum /dev/mtd1                       # c3682fd18dd40a29512a936b3ae9356c
head -c 2932738 /dev/mtd2 | md5sum     # 775189e41bd62f15f1bee46f8583454d

После UART-заливки: firstboot -y, потом sync; reboot. Wi-Fi RX23302 / RX23302-5G, пароль 1234567890 — смените.

Файлы / Files

openwrt-0.1.1-electra_rx23302-squashfs-sysupgrade.bin обновление из LuCI / sysupgrade
openwrt-0.1.1-electra_rx23302-squashfs-full.bin образ для UART-прошивки с заводской
openwrt-0.1.1-electra_rx23302.manifest список пакетов
sha256sums.txt sha256 образов

0.1.0

Choose a tag to compare

@Elengal Elengal released this 20 Oct 08:37

Первый релиз своей прошивки OpenWrt (Linux 6.18) для роутера Ротек (Rotek) RX-23302 / ELECTRA RX23302 (Ростелеком).
First release of OpenWrt (Linux 6.18) for the Rotek RX-23302 / ELECTRA RX23302 router.

⚠️ Проверено только на RX-23302 с RTL8197FH-VG (лог UART начинается с Realtek RTL8197F-VG boot code).
Ревизия RX-23302R не проверялась. / Tested only on RX-23302 with RTL8197FH-VG; RX-23302R is untested.

Что внутри / What's in it

  • Wi-Fi 2,4 ГГц (RTL8197G) и 5 ГГц (RTL8812F): WPA2, 802.11w, гостевые сети, мощность — из LuCI
  • Режим роутера: WAN по DHCP, NAT, firewall, LAN 192.168.0.1; программное ускорение NAT
  • Коммутатор RTL8367D на GPL-драйвере OpenWrt (swconfig): вкладка «Сеть → Коммутатор»
  • Гнёзда WAN, LAN1, LAN2 — проверены проводом; LuCI на русском

Установка / Install

Только через UART: docs/install-uart.md.

python3 tools/flash-uart.py openwrt-0.1.0-electra_rx23302-squashfs-full.bin /dev/ttyUSB0

После загрузки сверьте флеш / verify after boot:

md5sum /dev/mtd1                       # 28e5ae98a5cad7f70e953d6efb66f831
head -c 2928642 /dev/mtd2 | md5sum     # 2abff1884590ba9eb4a84135c7855c6c

Затем firstboot -y, потом sync; reboot. Wi-Fi RX23302 / RX23302-5G, пароль 1234567890 — смените.

Файлы / Files

openwrt-0.1.0-electra_rx23302-squashfs-full.bin образ для UART-прошивки
sha256sums.txt sha256 образа
openwrt-0.1.0-electra_rx23302.manifest список пакетов

sha256: 077b141f693c39e655df94f5cb35968d7bc3e7d8a95dbaa57407827d833725d3

Собран ./build.sh из этого коммита; именно этот файл прошит и проверен на живом устройстве.
Built with ./build.sh from this commit; this exact file was flashed and tested on real hardware.

Не проверено / Known limitations

sysupgrade (только UART), аппаратный NAT, возврат на заводскую прошивку, консольный iwinfo <dev> info
(LuCI работает). Подробнее — в README.