D-Link DIR-300 rev A/ru
From DD-WRT Wiki
Прошивка DD-WRT в DIR-300
Если типа что-nj пошло не так... не бойтесь, убить таким способом железку очень тяжело. просто передергиваете питание и телнетитесь опять либо на ---20.81 либо на ---.1.1 на порт 9000 и все начинаем с того места, где возникла проблема.
предварительная подготовка:
создаем папку C:\DIR300 (например), кладем туда
- файлы ap61.ram, ap61.rom и linux.bin : загрузите их с сайта dd-wrt.com, они находятся в папке с прошивкой для DIR-300.
- tftp-сервер: его можно загрузить оттуда же; распакуйте zip-файл и поместите содержимое в папку по вашему выбору.
- telnet-клиент, в качестве которого рекомендуется программа PuTTY : загрузите ее с сайта www.putty.org
Конфигурирование клиента PuTTY :
Щелкните правой кнопкой мыши по заголовку окна PuTTY.
Выберите пункт «Change Setings...»
В окне «PuTTY Reconfiguration» установите для параметра «Close window on exit» значение «Never».
Нажмите кнопку «Apply» («Применить»)
1. Cтавим на компе IP 192.168.20.80/mask 255.255.255.0
2. Втыкаем кабель в WAN порт (!) (INTERNET на нем написано)
2.1 Включаем питание роутера.
3. Коннектимся к железке телнетом на 192.168.20.81 на порт 9000
4. Возможно с первого раза не выйдет — редбут ждет подключения в течение 1 секунды примерно через
5 секунд после начала загрузки роутера
5. Далее должна появиться приветственная надпись и надо жать ctrl + c
6. Нажать ctrl+C у меня это так и не получилось
6.1 Можно воспользоваться пакетным файлом: 6.1.1 создаем в корне C:\ файл xxx.bat, следующего содержания:
- start
ping 192.168.20.81 -n 2 -w 1 > NULL
IF ERRORLEVEL 1 goto start
break
putty.exe telnet://192.168.20.81:9000 -m redboot.txt
6.1.2 создаем там же файл redboot.txt, следующего содержания:
только ДВА символа ^C
6.1.3 качаем в корень C:\ putty.exe [1]
7. Запустить батник. Батник будет пинговать 192.168.20.81 до тех пор, пока не получит ответ и сразу запустит putty , которая пошлет в роутер содержимое файла redboot.txt
8. В оном файле есть только 2 символа - ^C. Они остановят загрузку и откроет окно putty с приглашением
redboot>
9. теперь:
10.Стартуем tftp server (там есть в комплекте файлик — просто оставьте его вместе с остальными файлами прошивки в папке c:/dir300/ и запустите. Или качаем любой TFTP Server и указываем папку где лежат файлы (C:\DIR300)
Загрузка в маршрутизатор временного загрузчика
11. Пишем в консоли редбута
RedBoot>load ap61.ram
Using default protocol (TFTP)
Entry point: 0×800410bc, address range: 0×80041000-0×800680d8
RedBoot> go
12. Если телнет-сессия после этого прервется – это нормально.
Замечание: не перезагружайте маршрутизатор и не отключайте его питание.
Установка нового постоянного загрузчика
13. Переключите сетевой кабель из гнезда WAN в гнездо LAN1 маршрутизатора.
Важно: во время выполнения следующих шагов не отключайте сетевой кабель и не выключайте питание!
Установите IP-адрес 192.168.1.2 и маску 255.255.225.0.
Подключитесь телнетом к адресу 192.168.1.1 и порту 9000.
Когда сессия будет установлена, выполните следующие шаги:
14. в консоли:
DD-WRT>fconfig -i
Initialize non-volatile configuration - continue (y/n)?y
Run script at boot: false
Use BOOTP for network configuration: true
Default server IP address:
Console baud rate: 9600
GDB connection port: 9000
Force console for special debug messages: false
Network debug at boot time: false
Update RedBoot non-volatile configuration - continue (y/n)?y
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> fis init
About to initialize [format] FLASH image system - continue (y/n)? y
- Initialize FLASH Image System
- Initialize FLASH Image System
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×807f0000-0×80800000 at 0xbffe0000: .
DD-WRT> ip_address -h 192.168.1.2
Default server: 192.168.1.23
DD-WRT> load -r -b %{FREEMEMLO} ap61.rom
Using default protocol (TFTP)
Raw file loaded 0×80080000-0×800a8717, assumed entry at 0×80080000
DD-WRT> fis create -l 0×30000 -e 0xbfc00000 RedBoot
An image named ‘RedBoot’ exists - continue (y/n)? y
… Erase from 0xbfc00000-0xbfc30000: …
… Program from 0×80080000-0×800a8718 at 0xbfc00000: …
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×807f0000-0×80800000 at 0xbffe0000: .
DD-WRT> reset
После этого ваш маршрутизатор перезагрузится и сессия прервется. Снова подключитесь телнетом к адресу 192.168.1.1 и порту 9000 после того, как маршрутизатор перезапустится и будет ждать ваших команд (на это нужно примерно 30 секунд).
Загрузка новой прошивки
15 .
Еще раз напомним – не выключайте питание маршрутизатора и не отсоединяйте сетевой кабель во время выполнения описанных ниже шагов!
Команды fis create выполняются достаточно долго, наберитесь терпения и не прерывайте процесс.
DD-WRT> ip_address -h 192.168.1.2
IP: 192.168.1.1/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.1.2
DD-WRT> fis init
About to initialize [format] FLASH image system - continue (y/n)? y
- Initialize FLASH Image System
- Initialize FLASH Image System
… Erase from 0xbfc30000-0xbffe0000: …………………………………………………..
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> load -r -b 0×80041000 linux.bin
Using default protocol (TFTP)
Raw file loaded 0×80041000-0×803cffff, assumed entry at 0×80041000
DD-WRT> fis create linux
… Erase from 0xbfc30000-0xbffbf000: …………………………………………………
… Program from 0×80041000-0×803d0000 at 0xbfc30000: …………………………………………………
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> fconfig boot_script true
boot_script: Setting to true
Update RedBoot non-volatile configuration - continue (y/n)? y
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> fconfig boot_script_timeout 3
boot_script_timeout: Setting to 3
Update RedBoot non-volatile configuration - continue (y/n)? y
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> fconfig bootp false
bootp: Setting to false
Update RedBoot non-volatile configuration - continue (y/n)? y
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> fconfig
Run script at boot: true
Boot script:
.. fis load -l vmlinux.bin.17
.. exec
Enter script, terminate with empty line
>> fis load -l linux
>> exec
>>
Boot script timeout (1000ms resolution): 3
Use BOOTP for network configuration: false
Default server IP address:
Console baud rate: 9600
GDB connection port: 9000
Force console for special debug messages: false
Network debug at boot time: false
Update RedBoot non-volatile configuration - continue (y/n)? y
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0×80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> reset
Роутер перезагрузится.
В процессе перезагрузки он может мигать светодиодами и не отвечать на любые запросы в течении минут эдак n-дцати (у меня все прошло за <5 мин.).
Когда загорится лампочка WLAN — дело сделано!
Можно коннектиться браузером на 192.168.1.1
Имя пользователя и пароль по умолчанию - «root» и «admin» соответственно (без кавычек).
Замечание: Если ваш маршрутизатор не может получить IP-адрес от модема – не беспокойтесь. Это известная ошибка в DD-WRT. Чтобы выйти из положения, выполните следующие шаги:
1. Отключите сетевой кабель, соединяющий модем и DIR-300.
2. Перезагрузите модем и маршрутизатор и дождитесь окончания их загрузки.
3. Подключите сетевой кабель.
Замечание: если вы хотите изменить значение «Run script on boot» с false на true, выполните следующую команду перед командой fcohfig:
fconfig boot_script true
Рекомендации по выбору прошивки
Рекомендую шить DD-WRT v24PreSP2 На момент написания последней была прошивка от 14 марта 09 Для заливки вам потребуются файлы
ap61.ram - Загрузчик ap61.rom - Образ загрузчика для записи в устройство linux.bin - Непосредственно образ (именно его ищем в новых каталогах) tftpsrv.zip - TFTP Сервер
Больше из файлов вам ничего не потребуется В обновленных прошивках файлы загрузчиков отсутствуют рекомендую их взять из каталога
DD-WRT v24 RC5
загрузчики из каталога
DD-WRT v24 SP1
не захотели корректно работать на моем экземпляре устройства.
Причем DD-WRT v24PreSP2 - уже есет в своем составе Русскую локализацию, чем я был приятно удивлен включается выбором языка интерфейса в закладке администрирование, начинает действовать при обновлении странички в браузере.