Восстановление «убитой» прошивки для роутера Netgear
После неудачной прошивки роутера занялся его восстановлением. Курил мануалы от самой фирмы и с форума dd-wrt, ничего не получалось. Погуглив поконкретнее вышел на тот же dd-wrt и читаю в форуме How To: Unbrick Netgear WNR2000v2 easily without serial/JTAG. Данный рецепт помог восстановить.
Настраиваем комп — 192.168.1.5/255.255.255.0
Запускаем в окошке — ping -t 192.168.1.1
Запускаем tftp2 (при желании пойдет и обычный tftp): 192.1681.1. и WNR2000v2-V1.0.0.35_29.0.47.chk
Снимаем с роутера крышку и видим:
Замыкаем указанные контакты и включаем роутер, ждем пока светодиод питания не начнет мигать зеленым и не появиться пинг. В tftp2 давим кнопку Upgrade и ждем пока светодиод питание не начнет мигать желтым.
Отключаем и собираем роутер.
Файлы:tftp2 WNR2000v2-V1.0.0.35_29.0.47.chk
Теги: dd-wrt wnr2000v2 unbrick, netgear router restore, wnr2000 восстановление, wnr2000v2 restore
Компиляция модуля TDB_File с новыми libtdb
Решил поработать с содержимым tdb-файлов напрямую из perl-а. Все встречавшиеся примеры из инета работают через костыль — tdbdump. Модуль TDB_File-0.96a собираться отказался. Заточен он был под tdb версии 1.0.6.
За это время api незначительно поменялся. Были подправлены исходники и создана «условная» версия 0.97.
Функции logging были удалены из исходников, т.к. в новом api их нет.
Модуль компилится, тест проходит, читает данные из файла ppp2.tdb. Проверка на прочие функции не проводилась.
Архив для сборки под archlinux perl-tdb_file-0.97-1.src.tar.gz
Теги: perl ppp2.tdb, perl samba tdb, perl TDB_File, perl TDB_File compile, TDB_File archlinux
DD-WRT: решение проблемы no_dns_rebind
По умолчанию в dnsmasq.conf есть параметр stop_dns_rebind , запрещающий приватные адреса (Reject (and log) addresses from upstream nameservers which are in the private IP ranges).
В веб-интерфейсе пимпочка для отключения этой фичи может отсутсвовать:(
Решается так:
- заходим по телнету
- nvram set dnsmasq_no_dns_rebind=0
- nvram commit
- reboot
Теги: dd-wrt stop_dns_rebind
DD-WRT + dual WAN: 1001 решение
Постановка задачи:
- 2 провайдера
- один со статическим адресом, другой по dhcp
- выход в инет по pppoe с выбором провайдера
- ручной переход между pppoe подключениями
- прочие фишки
Решение:
- Устанавливаем свежую версию dd-wrt на роутер
- Разрешаем jffs

- Первому провайдеру назначаем статический адрес (это будет vlan1)

- Выделяем второму провайдеру vlan2 на порте 4

- Конфигурим сервисы — запрещаем кнопочку SES и разрешаем dnsmasq

- Запрещаем dhcp сервер и настраиваем ntp клиента

- При необходимости настраиваем ddns

- Настраиваем запускаемые скрипты

- Заливаем скрипты в роутер в каталог /jffs и назначаем им права 0755
- Правим скрипт wan2_init.sh и вносим данные в nvram:
- устанавливаем при необходимости mac
- прописываем юзера и пароль
- редактируем номера gpio для индикации состояния
- запускаем этот скрипт в консоли или перегружаем роутер
В принципе должно работать :)
Назначение скриптов и файлов:
- startup.sh — запуск и инициализация
- udhcpc.sh — перезапуск dhcp клиента
- udhcpc — скрипт переноса значение dhcp в nvram
- ppp.sh — перезапуск pppoe
- ip-up, ip-down — скрипты для ppp
- firewall.sh — настройка маскарадинга
- dnsmasq.sh — перезапуск сервера dhcp и dns
- ses_ppp.sh — переключение pppoe между провайдерами кнопочкой SES
Скачать архив со скриптами: dualwan-20110804
Обновление от 04/08/2011:
- при переключении провайдера кнопкой SES/WPS меняется цвет индикатора привязанного к LED_CONNECTED (номер будет зависеть от роутера)
- подсветка индикатора SES/WPS означает, что ppp поднят
- в crontab-е контролируется pppd
- upnp смотрит в ppp0
Перепаковка локальных коллекций библиотек для MyHomelib.
Для любого любителя почитать всегда остается актуальным поиск электронных книг. Чтобы жизнь была проще можно скачать локальные коллекции библиотек (например, Flibusta.net и Либрусек). Число файлов в каждой библиотеке превышает 150000 книг, а объем более 30Гб. При этом для «экономии» создается ограниченное число архивов (несколько десятков). Размер каждого архива порядка 1 Гб, что весьма много даже для дисков. А если файлы на сервере + wifi :(
Для решения этой проблемы и обеспечения гибкости изменения условий формирования новой библиотеки, написан программа.
Использование (на примере флибусты):
./librepack.pl -i flibusta_fb2_local.inpx -f fb2.Flibusta.Net -t Flibusta -n 100
В данном случае используется оригинальный файл inpx и каталог с архивами, результат будет в каталоге Flibusta, число файлов в новых архивах не более 100. Время перепаковки, конечно большое :(
В качестве бонуса из архивов удаляются не fb2 файлы, все языки кроме ru, помеченные как удаленные и дубликатные файлы. Экономия ~20%.
Внутри нового каталога будет лежать inpx-файл, который подсовываем MyHomelib.
Вариант пока на уровне беты, но работает:) Планируется разностное обновление и объединение библиотек.
Скачать librepack.pl.
Добавлена возможность добавления нескольких библиотек с удалением дубликатов.
Пример:
./librepack2.pl -i flibusta_fb2_local.inpx,librusec.inpx -f fb2.Flibusta.Net,lib.rus.ec -t Flibrusec
В примере объединяем флибусту и либрусек в новую коллекция Flibrusec :) Было обработано 331482 файла, осталось 142971 (дубликатов получилось 98353). Экономия, однако.
Скачать librepack2.pl.
Теги: Flibusta, MyHomelib, Либрусек, перепаковка коллекций
