User’s mistakes, I get the blame (7)
I will be closing the comments option for several post (DIR-300, DNS-323) due to the increase in a certain nature of comments.
Hatched in 1983 on a sunny island call Singapore. Graduated from National University of Singapore in 2009 and working in the IT industry since then.
Find out more.
I will be closing the comments option for several post (DIR-300, DNS-323) due to the increase in a certain nature of comments.
After flashing back to original firmware from dd-wrt/open-wrt firmware. Users will notice that their wireless security (such as WPA2) don’t work as intended. This is due to the missing information found in the board config partition. This board config partition holds information such as:
This guide aims to assist users in creating the board config file needed by their D-Link DIR-300. You would only need to do this if wireless security (e.g. WPA2) is not working after restoring from dd-wrt for the DIR-300.
This entry contains answers to questions raised by other users with regards to the installation and running of DD-WRT on D-Link routers. It also contains some troubleshooting hints and tips. You may find your answers in here.
Last time DARK (my group of buddies) had this crazy idea of VPN-ing our home networks. Chatted with Keny yesterday and so happened he was thinking about it too. Thought of using dd-wrt based routers to do point-to-point VPN but seems like using ms chap for authentication is not really secure. *roll eyes*
Had another crazy idea of using a small device, perhaps a D-Link DIR-300 to QoS my network. The QoS provided by the DIR-655 is not really extensive. I was looking for guaranteed bandwidth and stuffs. But seems like none of the third party firmwares offer protocol analysis. One major concern would be the switching capacity and connection session. Hope it would be more than what my DIR-655 can handle!
Time to look for a traffic shaper that has been implemented on third party devices.
Note: This guide is for users who have “bricked” their routers while trying to upgrade to dd-wrt v24 rc7 from dd-wrt v24 rc6. For flashing to dd-wrt from the stock firmware, you can refer to the Mini Flashing Guide for DIR-300.
It seems like quite a few users have “bricked” their router while trying to upgrade to the final dd-wrt v24 from rc6. Well, the device have not really bricked, it is just that the name of the flash image has changed and hence the system cannot boot pass the redboot. Not sure if it due to the new firmware, bootp was also switched to on, causing the system to take its own sweet time to get into redboot. It took around 30 to 40 seconds before I could actually telnet in.
Update on 4th February 2009
Wireless security is now fully functional.
Finally found a way to flash back a DIR-300 (running DD-WRT) back to D-Link firmware. It is a great thing that they have included the emergency web server in the RedBoot. DD-WRT version of RedBoot had stripped it out though. So the first step is actually restoring the RedBoot to the one DIR-300 originally had.
Note: It seems like x will not be represented as alphabet “x” after copy and pasting. Do take note of this.
Files that you need
RedBoot file: Download file
board config: shadowandy_board_config.bin (refer to section Generating board config)
Mirrors for RedBoot file
Noticed that D-Link Czech Republic and Poland has hosted the copy of my RedBoot. If you are having trouble downloading from my site. You can get them from these mirrors
D-Link (Czech Republic)
D-Link (Poland)
Generating board config
Refer to this guide (Generating DIR-300′s board config) on how to generate the board config file shadowandy_board_config.bin. This step is necessary to restore wireless lan security functionality in the D-Link original firmware.
Getting into Redboot
Changing back to the original RedBoot
Ensure that you have extracted the file dir300redboot.rom into your TFTP server directory. Follow the following command to flash back to original RedBoot.
DD-WRT> ip_address -h 192.168.1.2
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
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0x80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> load -r -b %{FREEMEMLO} dir300redboot.rom
Using default protocol (TFTP)
Raw file loaded 0×80040800-0x800607ff, assumed entry at 0×80040800
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×80040800-0×80060800 at 0xbfc00000: ..
… Erase from 0xbffe0000-0xbfff0000: .
… Program from 0x80ff0000-0×81000000 at 0xbffe0000: .
DD-WRT> reset
The router should reboot at this point of time. Wait for a while (30 seconds) before proceeding to the next section.
Preparing your system for board config recovery
Flashing back the board config
Ensure that you have placed the file shadowandy_board_config.bin into the TFTP server directory. Follow the following instructions to flash back the board config partition.
RedBoot> load -r -b %{FREEMEMLO} shadowandy_board_config.bin
Using default protocol (TFTP)
Raw file loaded 0×80036400-0x800463ff, assumed entry at 0×80036400
RedBoot> fwrite -f 0xbfff0000 -b 0×80036400 -l 0×10000 -e 0×80036400
About to write image into flash – continue (y/n)? y
… Erase from 0xbfff0000-0xc0000000: .
… Program from 0×80036400-0×80046400 at 0xbfff0000: .
update image info..
Update RedBoot non-volatile configuration – continue (y/n)? y
RedBoot> reset
Note: For those who are interested. You can issue the command “x -b 0xbfff0000 -l 0×100″ and ensure that memory location content starts with “5311.}..Atheros”
Your router would reboot after the reset command.
Preparing your system router recovery
Getting into Emergency Recovery Page
Uploading the original D-Link firmware

Flashing process
After the flashing process. Remove the power from the DIR-300. Wait for 30 seconds before proceeding to the next section.
Doing the final touching up
RedBoot> fconfig img_entry_addr 0×80040000
img_entry_addr: Setting to 0×80040000
Update RedBoot non-volatile configuration – continue (y/n)? y
… Erase from 0xbfff0000-0xbfffffff: .
… Program from 0×80036400-0×80046400 at 0xbfff0000: .
RedBoot> fconfig img_flash_addr 0xbfc20000
img_flash_addr: Setting to 0xbfc20000
Update RedBoot non-volatile configuration – continue (y/n)? y
… Erase from 0xbfff0000-0xbfffffff: .
… Program from 0×80036400-0×80046400 at 0xbfff0000: .
RedBoot> fconfig img_length 0x003c0000
img_length: Setting to 0x003c0000
Update RedBoot non-volatile configuration – continue (y/n)? y
… Erase from 0xbfff0000-0xbfffffff: .
… Program from 0×80036400-0×80046400 at 0xbfff0000: .
Power cycle the DIR-300 by powering off and on the DIR-300. Wait for the DIR-300 to power up. Set your system to DHCP and connect to the LAN port of DIR-300. Surf to http://192.168.0.1 and you should be greeted by the admin page.

DIR-300 with restored firmware
Enjoy your restored DIR-300.
Credits to vcn and fluffy@prog.ru for discovering the address for board config partition [forum thread]
Like to buy shadowandy a cup of Starbucks?