Доработка старого роутера DLINK DIR-300b7

Все началось с того что флешка всего 4 мегабайта !)

Нужен программатор !

Берем 25q64bv и прошиваем breed-rt5350-blank-r1163.bin

Собираем Padavan, для сборки под 8 мегабайт надо изменить /padavan-ng/trunk/configs/boards/DLINK/DIR-300B7/partitions.config

{
name: "Bootloader",
offset: 0x0,
size: 0x30000,
}, {
name: "Config",
offset: 0x30000,
size: 0x10000,
}, {
name: "Factory",
offset: 0x40000,
size: 0x10000,
}, {
name: "Firmware",
offset: 0x50000,
size: 0x790000,
}, {
name: "Storage",
offset: 0x7E0000,
size: 0x20000,
}

Собираем и прошиваем в breed

Проблема с лампочками, они все светятся)

Обход блокировок РКН (Antizapret+Padavan)

Роутер Xiaomi Mi WiFi Router 3G (или другой поддерживаемый Padavan c памятью от 8мб) с прошивкой Padavan можно настроить на прозрачный обход блокировок РКН используя VPN от сервиса АнтиЗапрет .

Прошивка должна быть собрана с такими опциями:

Скачать OVPN файл .

Настроить роутер.

Соединение OpenVPN:

Настроить ключи из файла antizapret-tcp.ovpn

Настройка dnsmasq:

 

Обход блокировок РКН (Padavan) БЕЗ VPN

Проверяем прошивку, есть ли xt_string в ядре:

lsmod

Если есть переходим к последнему пункту

Если нет проверяем есть ли модуль в прошивке

modprobe -l | grep xt_

Если нет такой строки kernel/net/netfilter/xt_string.ko, значит нет и модуля и прошивку надо собрать самому.

Прошивку сробираем скриптом PROMETHEUS из git Linaro1985/padavan-ng
Переходим в конфиг ядра mir3g (в примере роутер Xiaomi Mi WiFi Router 3G)

nano ~/padavan-ng/trunk/configs/boards/XIAOMI/MI-R3G/kernel-3.4.x.config

Ищем CTRL+W # CONFIG_NETFILTER_XT_MATCH_STRING is not set
Добавляем в ядро CONFIG_NETFILTER_XT_MATCH_STRING=y
Добавляем модулем CONFIG_NETFILTER_XT_MATCH_STRING=m
Сохраняем и собираем стандартно проршивку )

Устанавливаем прошивку

Проверяем если модулем то modprobe -l | grep xt_, в ядро lsmod

Если собирали модулем делаем следующее:
В роутере переходим и правим скрипт Выполнить перед инициализацией маршрутизатора, добавляем

### PKH
modprobe xt_string
modprobe xt_connbytes

Для любого варианта сборки:
В роутере переходим и правим скрипт Выполнить после перезапуска правил брандмауэра, добавляем:

### PKH
iptables -t raw -I PREROUTING -p tcp --sport 80 -m string --hex-string 'Location: http://warning.rt.ru' --algo bm --from 50 --to 200 -j DROP
iptables -t mangle -I PREROUTING -p tcp --sport 443 -m connbytes --connbytes 1:4 --connbytes-mode packets --connbytes-dir reply -m u32 --u32 "0x4=0x10000 && 0x1E&0xffff=0x5004" -j DROP

P.S.
Этот вариант для Ростелекома, другие варианты можно посмотреть тут