D-Link DIR-400

From DD-WRT Wiki

Jump to: navigation, search

[edit] Flashing Instructions

In order to flash your router you need to do the following steps:

  • Download TFTP32/TFTP64
  • See Where do I download firmware? for links to firmware. Look in the dlink-dir400 folder.
  • Download Putty client or you can use any telnet clients(try to stay away from Windows built in telnet)
  • Change your local IP adress to a static 192.168.0.2 and subnet mask to 255.255.255.0
  • Connect an ethernet cable between your computer and DIR-400's WAN port
  • Prepare Putty telnet session -- 192.168.0.1 port 9000
  • Start pinging your router through a command line. Type ping 192.168.0.1 -n 900 (You don't really need to ping that many times)
  • Power DIR-400 router on and wait for 2nd successful ping and then initiate putty telnet session.
  • Press CTRL-C as soon as you see that boot script is executing (if you are using Putty ver. 0.60 or newer then you don't have to worry about this)
  • Start TFTP server with linux.bin in TFTP root directory

If you did everything right then you should see the following on the window of putty:

== Executing boot script in 1.140 seconds - enter ^C to abort
^C 
RedBoot>

Type ip_address -l 192.168.0.1/24 -h 192.168.0.2 and press Enter

You should see the following:

RedBoot> ip_address -l 192.168.0.1/24 -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

Type fis init and then

RedBoot> fis init
About to initialize [format] FLASH image system - continue (y/n)?

Type y and press Enter. Wait until the process is complete:

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: .

Type load -r -b 0x80041000 linux.bin and press Enter

RedBoot> load -r -b 0x80041000 linux.bin
Using default protocol (TFTP)
Raw file loaded 0x80041000-0x803bafff, assumed entry at 0x80041000

Type fis create linux and press Enter (this one will take a while. DO NOT UNPLUG YOUR ROUTER)

RedBoot> fis create linux
... Erase from 0xbfc40000-0xbffba000: ........................................................
... Program from 0x80041000-0x803bb000 at 0xbfc40000: ........................................................
prog_ok
flash_addr = 0xbfc40000
mem_addr = 0x80041000
entry_addr = 0x80041000
length = 0x37a000
img_size = 0x37a000
... Erase from 0xbffe0000-0xbfff0000: .
... Program from 0x80ff0000-0x81000000 at 0xbffe0000: . 

Type fconfig and press Enter

RedBoot> fconfig 
Run script at boot: true 

Press Enter

Run script at boot: true
Boot script:
.. fis load -l linux
.. exec
Enter script, terminate with empty line

Type fis load -l linux and press Enter

>> fis load -l linux

type exec and press Enter

>> exec

just press Enter

>> 
Boot script timeout (1000ms resolution): 2 

press Enter

Use BOOTP for network configuration: false

press Enter

Gateway IP address: 

press Enter

Local IP address: 192.168.0.1 

press Enter

Local IP address mask: 255.255.255.0

press Enter

Default server IP address: 192.168.0.100 

press Enter

Console baud rate: 9600 

press Enter

GDB connection port: 9000 

press Enter

Force console for special debug messages: false  

press Enter

Network debug at boot time: false 

press Enter

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

type y and press Enter

Update RedBoot non-volatile configuration - continue (y/n)? y
... Erase from 0xbffe0000-0xbfff0000: .
... Program from 0x80ff0000-0x81000000 at 0xbffe0000: .

Type reset and press Enter

RedBoot> reset
  • Re-connect an ethernet cable between your computer and DIR-400’s LAN port
  • Change your local IP adress to a static 192.168.1.2 and subnet mask to 255.255.255.0

Your router will be accessible at http://192.168.1.1