Dir 400 dd wrt

Сдесь я расскажу, точнее дам перевод инструкции, по прошивке роутера dir-400 сторонней прошивкой от dd-wrt sp1

Зачем скажите вы нужны такие эксперементы, прошивать роутер да еще не известно какой прошивкой? К сожелению ответ банально прост, у DLink-а железки замечательные, а вот с прошивками у них дела обстоят далеко не очень. От себя добавлю, что данной прошивкой мною был прошит роутер примерно пол года назад, и нареканий по поводу его работы нет, роутер использовался с поднятием в нем PPPoE сесси, инет пользовался на 8Мбит как по wi-fi так и по проводной схеме однавременно. Уж не говоря о том что с этой прошивкой появляются такие возможности как : WDS, client, hdoc, AP, и их совместные модификации. Те попросту за 50$ вы получаете крутую железку, отлично работающую. По родным прошивкам можно отметить главный недостаток, это полный вис через несколько часов работы, который лечится передергиванием питания, и эта болячка наблюдалась у всей линейки DLink-а: которая проходила через мои руки. Ну хватит воды, перейдем собственно к практике.

Качаем dir400-firmware.bin, linux.bin, tftpsrv.zip, putty.exe. Распаковываем содержимое tftpsrv.zip в любую папку, туда же ложим dir400-firmware.bin, linux.bin. Теперь напрямую подсоединяем к компьютеру роутер штатным шнурком из комплекта, (не пробуем шить через хаб). В свойствах сетевого подключения, соответствующего карте куда воткнут шнурок от роутера, пропис ываем следующее

:

Запускаем tftpsrv.exe, у нас появилось черное окно, которое мы можем свернуть больше оно нам не понадобиться. Теперь запускаем putty.exe и готовим (не запускаем ) телнет сессию на порт 9000, должно выглядеть примерно так:

теперь открываем еще одну консоль (Пуск-выполнить-cmd Enter) в ней набираем ping 192.168.0.1 -t и жмем Enter, включаем питание на роутере и как только получаем первый ответ от него жмем Open в putty. Нажимаем ^C чтобы прервать скрипт загрузки, вообщем мы должны получить прглашение (далее зеленым , что нам выводит роутер, синим что вводим мы, где написано Enter имеется ввиду нажатие клавиши > (писать ни чего не надо))

ip_address -h 192.168.0.2 Enter

IP: 192.168.0.1/255.255.255.0, Gateway: 0.0.0.0

Default server: 192.168.0.2

About to initialize [format] FLASH image system — continue (y/n)? у Enter

*** Initialize FLASH Image System

And a descriptor for the configuration data size = 10000

. Erase from 0xbffe0000-0xbfff0000: .

. Program from 0x80ff0000-0x81000000 at 0xbffe0000: .

load -r -b 0x80041000 linux.bin Enter

Using default protocol (TFTP)

Raw file loaded 0x80041000-0x803cefff, assumed entry at 0x80041000

fis create linux Enter

. Erase from 0xbfc40000-0xbffce000: .

. Program from 0x80041000-0x803cf000 at 0xbfc40000: .

. Erase from 0xbffe0000-0xbfff0000: .

. Program from 0x80ff0000-0x81000000 at 0xbffe0000: .

Run script at boot: true Enter

.. fis load -l vmlinux.bin.l7

Enter script, terminate with empty line

>> fis load -l linux s Enter

Boot script timeout (1000ms resolution): 2 Enter

Use BOOTP for network configuration: false Enter

Gateway IP address: Enter

Local IP address: 192.168.0.1 Enter

Local IP address mask : Enter

Default server IP address: 192.168.0.100 Enter

Console baud rate: 9600 Enter

GDB connection port: 9000 Enter

Force console for special debug messages: false Enter

Network debug at boot time: false Enter

Update RedBoot non-volatile configuration — continue (y/n)? y Enter

. Erase from 0xbffe0000-0xbfff0000: .

. Program from 0x80ff0000-0x81000000 at 0xbffe0000: .

Теперь роутер будет доступен по адресу http://192.168.1.1

Настроек будет множество по сравнению со стандартной прошивкой, будьте внимательны при настройке. Сам ни один час провел в размышлениях, а всего лишь неверно перевел один параметр. Желаю не наступать на те же грабли, помните спешка нужна. ну вобщем все помнят старую поговорку!

D-Link DIR-400 — довольно старая модель маршрутизатора.

Опишу действия по шагам:

1) Скачаем новую прошивку с официального сайта
http://ftp.dlink.ru/pub/Router/DIR-400/Firmware/

2) Откроем настройки маршрутизатора набрав в браузере адрес http://192.168.0.1 (может быть 192.168.1.1) и введем стандартный логин — admin без пароля.

3) В открывшемся интерфейсе выберем вкладку «MAINTENANCE«, слева в меню «Firmware Update«. Далее где «UPDATE SETTING» нажмем «Обзор» и выберем скачанный ранее файл прошивки, после чего нажмем «Apply» для запуска процесса обновления.

Ждем завершения обновления, обычно 2-5 минут. По окончанию маршрутизатор сам перезапустится.

Стал у бедного админа виснуть роутер от D-Link, модель DIR-400.
И стал админ искать пути решения проблемы.
Погуглив полчаса наткнулся на прошивку от dd-wrt.com.
Поглядел на её возможности, обрадовался, и стал искать мануалов — как же всё таки эту прошивку залить (ибо стандартный прошивальщик, ребятами из D-Link писаный, не годится).

Нашёл мануал по заливке прошивки через DBG-console. Но вот беда — мануал на виндовых юзеров рассчитан, а винды под рукой нету, только Линукс праведный…
Ну, да ладно. Разобрался админ. Детали — под катом.

DBG-console

Есть у продутов от D-Link такая интересная фича — при включении железки в электросеть загрузчик на 2 секунды (значение по-умолчанию) поднимает сервер telnet на порту 9000.
Если за 2 секунды успеть залогиниться и послать железяке ‘^C’ — процесс загрузки остановится и мы получим доступ в инженерную консоль, в которой можно всякие интересные штуки делать — например, залить неофициальную похаченую linux-based прошивку. Приступим.

Подготовка

Немного теории:

Оговорюсь сразу — я дёргал питание роутера раз 20, с паузами 10-20 секунд, пока смог таки заставить железяку отдать мне инженерную консоль. В принципе это безопасно — достаточно дождаться полной загрузки роутера, и питание можно снова выдёргивать.
Ещё нюанс — линуховая версия telnet напрочь отказывается слать ‘^C’ по нажатию Ctrl-C вв момент подключения, пришлось включать моск — слать не один символ, а два, примерно так: при нажатом Ctrl жмём сначала V, потом C, отпускаем Ctrl.
И ещё — не бойтесь опечататься в инженерной консоли, все команды проходят валидацию, консоль просто не даст вам опечататься.

Приступим к практике:

Во-первых нам понадобится tftp сервер.
Ставим, кто как умеет (я юзал yum):

yum -y intall tftp-server

По-умолчанию tftp дёргается из xinetd, посему нужно немного подредактировать /etc/xinetd.d/tftp: выставить параметр disable = no и по вкусу отредактировать корневую директорию сервера (по-умолчанию — /tftpboot/, я её не менял).

Не забываем рестартануть xinetd.

Далее, идём сюда: dd-wrt.com/dd-wrtv3/dd-wrt/downloads.html
Там внизу — нечто вроде файлового менеджера, идём в директорию /stable/dd-wrt.v24 SP1/Consumer/Dlink/DIR-400 и качаем файлы linux.bin и dir400-firmware.bin в директорию /tftpboot/ (ну или на что вы там её изменили в конфиге).

Выдёргиваем из подопытного роутера все Ethernet-кабеля, отключаем всех WiFi-клиентов, втыкаемся в один из LAN-портов железки.
Назначаем своей машине статический IP 192.168.0.2, роутеру — 192.168.0.1.

Начинаем веселье

Дальнейшие действия требуют сосредоточенности.
Набираем в консоли

telnet 192.168.0.1 9000 (Enter пока не жмём, просто набираем для экономии времени — помните про 2 секунды?)

Выдёргиваем питание из роутера, ждём пару секунд, втыкаем питание, считаем до трёх, жмём Enter…
Далее идёт мой telnet session transcript, жирным выделено то, что я вводил в консоли, курсивом — мои комментарии.

Оцените статью
Много толка
Добавить комментарий