Перепрошивка DIR-400 обратно

Краткое руководство по восстановлению оригинальной прошивки в DIR-400 c DD-WRT
Что нам понадобится:
Пострадавший от кривых лап роутер D-Link DIR-400
Качаем TFTPserver тут
Оригинальную прошивку берем тут
Качаем PuTTY отсюда
Распаковываем в какой-нибудь каталог архив с оригинальной
прошивкой и указываем этот каталог корнем tftp сервера
Прописываем статический IP-адрес 192.168.0.2 с маской подсети 255.255.255.0
на интерфейс смотрящий в роутер
Сетевые настройки
Соединяем компьютер с WAN-портом роутера
(если на маршрутизатор когда либо устанавливалась бета оригинальной прошивки версии 1.02В07,
что требовало перепрошивки RedBoot, то маршрутизатор будет открывать 9000 порт на LAN
интерфейсе и в данном случае компьютер нужно подключить к LAN-порту соответственно).
Запускаем пинг на роутер: Пуск — Выполнить — ping 192.168.0.1 -t
Подготавливаем сессию PuTTY с настройками:
Host Name (or IP address) — 192.168.0.1
Port — 9000
Connection type — Telnet
Close window on exit — Never
Включаем DIR-400 и на втором успешном ответе от роутера
запускаем подготовленную сессию PuTTY

Жмем Ctrl+C как только увидите что загрузочный скрипт запустился
(если Putty версии 0.60 или новее, то ничего не жмем)
Если соединение не установилось, закрываем сессию Putty,
создаем новую и поновой перегружаем роутер

In RedBoot
Далее выполняем команды:

RedBoot> ip_address -h 192.168.0.2
IP: 192.168.0.1/255.255.255.0, Gateway: 0.0.0.0
Default server: 192.168.0.2
RedBoot> fis init
About to initialize [format] FLASH image system — continue (y/n)? y
*** Initialize FLASH Image System
And a descriptor for the configuration data size = 10000
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0x80ff0000-0x81000000 at 0xbffe0000: .

RedBoot> load -r -b 0x80041000 vmlinux.bin.l7
Using default protocol (TFTP)
Raw file loaded 0x80041000-0x800d0fff, assumed entry at 0x80041000
RedBoot> fis create vmlinux.bin.l7
… Erase from 0xbfc40000-0xbfcd0000: ………
… Program from 0x80041000-0x800d1000 at 0xbfc40000: ………
prog_ok
flash_addr = 0xbfc40000
mem_addr = 0x80041000
entry_addr = 0x80041000
length = 0x90000
img_size = 0x90000
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0x80ff0000-0x81000000 at 0xbffe0000: .
RedBoot> load -r -b 0x80041000 rootfs
Using default protocol (TFTP)
Raw file loaded 0x80041000-0x80350fff, assumed entry at 0x80041000
RedBoot> fis create -l 0x310000 -f 0xbfcd0000 -e 0x00000000 -r 0xbfcd0000 rootfs
… Erase from 0xbfcd0000-0xbffe0000: ………………………………………….
… Program from 0x80041000-0x80351000 at 0xbfcd0000: ……………………………………….
prog_ok
flash_addr = 0xbfcd0000
mem_addr = 0xbfcd0000
entry_addr = 0x0
length = 0x310000
img_size = 0x310000
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0x80ff0000-0x81000000 at 0xbffe0000: .
RedBoot> fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0xBFC00000 0xBFC00000 0x00030000 0x00000000
Config 0xBFC30000 0xBFC30000 0x00010000 0x00000000
vmlinux.bin.l7 0xBFC40000 0x80041000 0x00090000 0x80041000
rootfs 0xBFCD0000 0xBFCD0000 0x00310000 0x00000000
FIS directory 0xBFFE0000 0xBFFE0000 0x0000F000 0x00000000
Calibration 0xBFFF0000 0xBFFF0000 0x00010000 0x00000000
RedBoot> fconfig
Run script at boot: true нажмите Enter
Boot script:
.. fis load -l linux
.. exec
Enter script, terminate with empty line
>> fis load -l vmlinux.bin.l7
>> go
>>
Boot script timeout (1000ms resolution): 2
Use BOOTP for network configuration: false
Gateway IP address:
Local IP address: 192.168.0.1
Local IP address mask:
Default server IP address: 192.168.0.100
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 0x80ff0000-0x81000000 at 0xbffe0000: .
RedBoot> reset

После перезагрузки мы получаем маршрутизатор с оригинальной прошивкой версии 1.0.
Взято с http://dd-wrt.com/phpBB2



16 сентября 2009.   Комментарии: Комментарии к записи Перепрошивка DIR-400 обратно отключены.    Размещено в Железо