Hacking your Linksys WRT54G Wireless-G Router with DD-WRT firmware

Published January 01, 2009

linksys wrt54g aruljohn.com

I have a Linksys WRT54G Wireless-G router that runs Linux.

The great thing about this router is that it is easily customisable and highly configurable after uploading third-party firmwares like DD-WRT, Tomato and OpenWRT. You can even write your own scripts and upload them to the router.

At the moment, I have a client-bridge setup with the Linksys WRT54G router as the primary router and a Buffalo WHR-G125 as a secondary router using the same SSID.

DISCLAIMER: Anything you do below this line carries a certain amount of risk and there is always a possibility of bricking your router! I have only detailed the steps I took to install DD-WRT on my router and several other routers. Note that this is NOT an official DD-WRT site.

**Whatever you do is done AT YOUR OWN RISK. I AM NOT RESPONSIBLE for what happens to your router. If you are willing to risk your router with the firmware change, read on, or else look somewhere else.

Serial numbers of Linksys WRT54G and WRT54GL routers

Before buying the routers, you need to check the serial numbers so you'll know the version.

WRT54G versions 1-4 and any version of WRT54GL are the best since they have Linux.
WRT54G versions 5-8 come with VXWorks, a lousy proprietary operating system. To get DD-WRT on this, you have to kill VxWorks first.

Here's how you detect the version of Linux routers from the carton. The serial number of the router should end in this

SerialVersionVersion/Notes
CDF0, CDF1WRT54G 1.0DD-WRT 23 SP2 standard
CDF2, CDF3WRT54G 1.1DD-WRT 23 SP2 standard
CDF5WRT54G 2.0DD-WRT 23 SP2 standard
CDF7WRT54G 2.2DD-WRT 23 SP2 standard
CDF8WRT54G 3.0DD-WRT 23 SP2 standard
CDF9WRT54G 3.1DD-WRT 23 SP2 standard
CDFAWRT54G 4.0DD-WRT 23 SP2 standard
CDFBWRT54G 5.0DD-WRT 23 SP2 micro
CDFCWRT54G 5.1DD-WRT 23 SP2 micro
CDFDWRT54G 6.0DD-WRT 23 SP2 micro
CDFEWRT54G 7.0**DO NOT BUY THIS, it is not supported by DD-WRT**

Installing DD-WRT in Linksys WRT54G versions 1.0, 1.1, 2.0, 2.1, 3.0, 4.0

  • Download the mini version of DD-WRT (dd-wrt.v23_sp2_mini.zip)
  • Log on to your Linksys in the admin mode. Click on http://192.168.1.1.
  • Go to Administration โ†’ Firmware Upgrade and upload the DD-WRT mini firmware. Do NOT interrupt the process or your router will be toast! (The mini version was uploaded first because the default Linksys firmware contains insufficient space in the nvram, so we have to blow it up with the mini before the std.)
  • Now, lets upload the real standard version. Download and unzip the standard version (dd-wrt.v23_sp2_standard.zip). You will need to use corresponding .bin file, for example, if you have a WRT54G, you would be using the firmware dd-wrt.v23_wrt54g.bin for the upgrade.
  • You should get a message like "Upgrade successful".
  • Check if DD-WRT standard version 23 is installed by going to http://192.168.1.1.

If everything is alright, you may log in now. The default username is root and default password is the same password that you used before.

Installing DD-WRT in Linksys WRT54G versions 5.0, 5.1, 6.0, 8.0

    - Login to the router interface at http://192.168.1.1 - Go to _Administration_ โ†’ _Factory Defaults_ and reset it - Update your firmware with VxWorks Killer - Go to _Administration_ โ†’ _Firmware Upgrade_ - Select vxworkskillerGv8-v3.bin and click on the **Upgrade** button. - Wait for a couple of minutes till it resets and then move to the next step. - Upgrade to dd-wrt micro - Double-click on tftp2.exe and enter these details. Server: 192.168.1.1 Password: admin File: _path to dd-wrt.v24_micro_generic.bin_ - Click on **Upgrade**

    tftp2 aruljohn.com

    - Wait for it to upgrade. If you get this message **Upgrade are successful** login to the new DD-WRT firmware. If everything is alright, you may log in now. The default username is **root** and default password is **admin**. ### Configuring DD-WRT **Enable SSH** Go to _Administration_ ยป _Management_ and select _Enable_ for **SSH Management** Set any other settings that you would like. Then, click on the Save Settings button. **Increase transmit power** The default transmit power is only 28 mW! You can increase it upto more than 200 mW, but lets keep it below 70. Go to _Wireless_ ยป _Advanced Settings_ and enter a decent value (below 70) for **Xmit Power**. Federal regulations prevent increasing your wireless signal beyond a point because the signals may kick out other signals (your poor neighbours'). --- ### Shell commands DD-WRT comes with a built-in shell called ash. Lets play around with the commands. Connect to your router via SSH using PuTTY (if you use Windows) or any remote terminal software. Login as "root" and type in your password. You should get something like this: [arul's linksys wrt54g screenshot] ### Display CPU information of your router
    ~ # cat /proc/cpuinfo
    system type             : Broadcom BCM4712 chip rev 1
    processor               : 0
    cpu model               : BCM3302 V0.7
    BogoMIPS                : 199.06
    wait instruction        : no
    microsecond timers      : yes
    tlb_entries             : 32
    extra interrupt vector  : no
    hardware watchpoint     : no
    VCED exceptions         : not available
    VCEI exceptions         : not available
    ## Display time the router has been up
    ~ # uptime
     08:49:30 up 7 days, 11:56, load average: 0.03, 0.02, 0.00
    ## Display Linux version
    ~ # cat /proc/version
    Linux version 2.4.33-pre2 (root@linux) (gcc version 4.1.0) #775 Tue May 16 20:13:17 CEST 2006
    ## Scan for wireless networks nearby
    ~ # wl ap 0
    ~ # wl scanresults
    ~ # wl ap 1

    Related Posts

    If you have any questions, please contact me at arulbOsutkNiqlzziyties@gNqmaizl.bkcom. You can also post questions in our Facebook group. Thank you.

Disclaimer: Our website is supported by our users. We sometimes earn affiliate links when you click through the affiliate links on our website.

Last Updated: January 01, 2009. ย ย ย  This post was originally written on January 02, 2009.

โ† Previous Post
How to remove CTRL M characters

Next Post โ†’
Solaris Commands