How To: Install DD-WRT on a Linksys WRT-54G v5.0
09.16.08 - 11:29am
Having a bit of free time today I decided to install a custom firmware onto my Linksys WRT-54G. Why would I do this you might ask? The default firmware is awfully restrictive and well.. plain. DD-WRT is a free Linux-based firmware that empowers the consumer with many features not included in the original firmware such as advanced Quality of Service, wireless radio signal adjustment, scripts and services, overclocking, and advanced statistics and monitoring. With Comcast initiating 250GB caps across it’s entire network in the United States, I’ve decided I needed an accurate way to monitor my bandwidth consumption and DD-WRT provides me with enough data so I can make sure to stick it to Comcast by pegging that cap every month.
Preparation
First off you will need an Ethernet connection to your router. Make sure you have a functional connection first, there is nothing worse than not being able to communicate with a blanked router. Next up, download all the below mentioned bits and pieces before you start step one. Otherwise you’ll have to plug directly into your modem or WAN connection and take longer than necessary. I managed this entire process in about 5 minutes and I was completely lost for half of it. Now go check this list to see if your router is supported. I’m going to detail below briefly the installation process for the version 5 of the WRT54G.
Bits and Pieces
First off you’ll need the VXWorks Prep binary file. This file will place your router into a blank diagnostic/management state and prepare it to accept the new firmware. Next up you’ll need the VXWorks Killer G binary file. The final file you’ll need is the actual firmware you’ll be installing. Go here and select the proper firmware for your router, I chose the v.24 micro generic binary file due to the limited 8 megabyte memory in the V.5 WRT-54G. Lastly you’ll need the Linksys FTP client to upload the firmware to the router.
Directions
These are slightly modified and reworded directions from the Bitsum Technologies Wiki article on this process. To kick things off log into the web management terminal for the router. This is typically accessed by pointing your browser at http://192.168.1.1. After doing this, click on the admin panel and upgrade the firmware with the VXWorks Prep binary file. The browser window should to go a blank white screen when this is complete. Once that happens, unplug the power to the router, wait a few seconds, and then plug it back in. This is the first time you’ll have to cycle the power.
Once again pull up http://192.16.1.1 and you’ll be presented with a new prompt asking for a firmware file. Select the VXWorks Killer G binary file and wait till the screen says Upload Success or some variant of Success. Now cycle the power on your router again, this is the second time you’ll do this.
Now fire up the Linksys FTP client, enter 192.168.1.1 for the address and select the micro generic firmware binary file for the router. This is the final firmware and the last step in modifying the firmware. Make sure any software firewalls are disabled for this process or the FTP transaction may be blocked. Now open up a browser and load up http://192.168.1.1 once again. It may takes a few minutes for the router to complete the rebooting process but once it’s complete you should see a prompt where you can change the username and password. The defaults are username : root and password : admin.
MAC Address Startup Script
I chose to run a script to set the MAC address for the router rather than modify the VXWorks Killer G file. Under the administrator panel in the commands tab there is a prompt to create a startup script. Here you will enter the following commands, substituting in your own MAC addresses.
nvram set et0macaddr=00:vv:ww:xx:yy:zz
nvram set il0macaddr=00:vv:ww:xx:yy:zz+1
nvram set wl0_hwaddr=00:vv:ww:xx:yy:zz+2
nvram commit
The MAC address for your router can be found on a sticker on the bottom of the router. The address listed should go into the eth0macaddr line. The il0macaddr line should have the last number incremented by one and the wl0_hwaddr line should be incremented by two. This will setup your WAN, LAN, and WLAN MAC addresses. Once you have properly entered the MAC addresses, hit Save Startup and then copy the lines into the box and hit Run Commands. Navigate over to the status tab and the system info sub tab and you should see your MAC addresses listed.
Finishing Things Up
Now do your regular things like setting the router’s name, enabling and configuring the wireless security and SSID. I personally upgraded to the DD-WRT firmare just for the stat tracking but there are many other things that can be done with the new firmware. Just do a little bit of Googling and you’ll find a slew of scripts. Now if you are on a Comcast line you know when it’s near the end of the month to ramp up your downloads.
This would be more helpful with screenshots, fyi. :-)
I want to change the MAC adress for my LINKSYS WAP54G V3.1
Can i do it the way you describe, except for the flashfile, I can take the original LINKSYS one?
Interesting article.. Thanks so far.
Thanks a million! Worked like a charm!