Perhaps you have decided that you need a feature that your old wireless router doesn’t support: How about the ability to provide a VPN service to access your home network securely from remote? Or maybe a guest network for those relatives coming over for Memorial day weekend? Wouldn’t IPv6 support come handy for this upcoming World IPv6 day event?. Or maybe you want to upgrade your home network to make your media server stutter free (300-450 Mbps would be cool, wouldn’t it?). In any case, running an alternative third-party firmware can provide you with a plethora of additional options at no cost (well, if you feel generous enough you could donate some money to one of these projects, but philanthropy is not cost, isn’t it?) and infuse new life into your older wireless router. In many cases, a third-party firmware is also more reliable, less buggy and runs smoother than the original vendor firmware included with the device.
There are several projects focused on building quality third-party software for wireless routers; some of the most well known and active projects are DD-WRT, OpenWRT, Tomato and Sveasoft. While the last two projects only support older wireless routers (WRT54G and family), DD-WRT and OpenWRT are constantly adding new routers to their lines and have a very active community. One caveat, Sveasoft uses a business model that requires a current subscription before you can try their latest firmware versions (and the older/stable versions tend to be quite limited), so I advice you to look to the other three projects first and resort to Sveasoft if none of them work for you.
Although these projects are all based on GNU/Linux, there are differences that go beyond the surface of the graphical user interface (GUI). The DD-WRT software tends to have a more thorough and consistent web based user interface, which minimizes the need for configuration through the command line interface (CLI). Support is usually very good through the DD-WRT forums, either from the active community or the developers themselves; documentation is also very high quality and gets regularly updated. DD-WRT also offers a good set of newbie friendly additional packages (Optware) to introduce additional features in a way that is mostly plug and play.
OpenWRT is more oriented towards the power user. Although the web interface (LuCI) is quite complete, advanced functionality can only be achieved using the command line interface; the filesystem layout is more in line with the standard Linux Filesystem Hierarchy so Linux folks should feel at home. OpenWRT has a large library of additional packages which can be installed directly from the central repository, either by using the opkg command line utility or through the LuCI web interface. Documentation is also good, with a substantial list of recipes and howtos guiding the users through basic and advanced topics, with an emphasis on command line configuration. On the downside, questions in the OpenWRT project forums are sometimes left unanswered, especially if they are not good questions, and there is typically less tolerance for newbies (see this document before asking for support) than in the DD-WRT project. However, if IPv6 support is a must and you don’t want the hassle of compiling your own ip6tables kernel modules, OpenWRT is your best option as these kernel modules are included in the standard backfire release; compiling any kernel module for a 2.6 DD-WRT kernel can be tricky if the version of the svn source code that your are using to build the kernel modules doesn’t match the exact svn version that you are running in your router (hint: 2.6 kernels require exact module symbol version matching in order to load the module, and the busybox insmod command seems not to allow to force modules without module symbol versions, giving back an “invalid module format” message).
If you haven’t purchased your router yet, you should stop now and head over to the supported hardware lists from DD-WRT and OpenWRT; and since making head or tails of such a long list can be difficult, I’ll give you a few tips. If you’re looking for the fastest supported router that can do simultaneous dual band and operate on a/b/g/n, then look no more: the Netgear WNDR3700 is probably the best option there (but make sure that the packaging of the unit you are buying indicates that it contains a wndr3700v2, as there have been reports of dead 2.4Ghz radios with some models of the first version running under DD-WRT). It is Atheros based, and with a very fast CPU, 8MB of flash and 64MB of RAM it is the clear performance king among supported routers. A close second choice would be the Linksys E3000 (with a slower Broadcom CPU, but otherwise similar features). Each one of these routers will set you back around $130-150 at current retail prices but considering that a wireless routers should last you for a good two to four years, you wouldn’t probably set for less. Do not select the Netgear WNDR4000 nor the Linksys E4200: these models are still not supported by either project, and although there may be ongoing efforts to support them, there is no guarantee that they will be supported at all.
If you plan on reusing existing hardware instead, and you have an older Linksys WRT54g/gs or similar device, this is your lucky day: every version has excellent support from DD-WRT (except for version 7, which is not and will probably never be supported). Tomato, OpenWRT and Sveasoft have all also good support for these devices, particularly for versions 1 through 4.
In any case, the list of supported devices by OpenWRT and DD-WRT covers hundreds of models across dozens of vendors. Chances are that your existing wireless router is supported by one of these projects and, if not, you can probably pick up an older/used supported unit for just a few dollars.
Depending on the specific router, the steps to upload the third-party software can involve a combination of either the web interface and/or tftp from a command line prompt. In very rare cases you may need a JTAG cable either to install the new software or to de-brick a modified router. I recommend that you stay away from any routers that require creating and soldering a JTAG cable for a third party software to work.
Before you start the process of deploying a third party software to your wireless router, you should ensure that you have a good backup of the settings for your network, including your PPPoE passwords, IP addresses and static DHCP leases, port forwards (in case you need support for incoming calls on a SIP phone, etc.) and recursive DNS settings if these are not dynamically configured by the provider. Some routers also have specific flash partitions containing calibration data, required if you want to ensure that your radios come back alive after a catastrophic flash overwrite or wipe, so go ahead and backup your caldata too (this is especially true for the WNDR3700). Information on how to backup your caldata is available on the DD-WRT forums.
After you covered these initial steps, head over to the particular project for the specific documentation on how to install that third party software on your device. For the OpenWRT project, you can use the hardware support table to identify your device and access the documentation for it. For the DD-WRT project, there is a similar table but you’re probably better off by looking it up in the hardware database.
Once you have installed the new software, sit back, relax and make yourself familiar with the myriad of options and open possibilities. Now it’s time to configure your router, enable those functions that were unavailable with the stock firmware, test everything and possibly donate to the project of your choice to demonstrate your appreciation.
Above all, enjoy and happy hacking!









TomatoUSB supports some newer routers and is based on vanilla Tomato – http://tomatousb.org/
You guys should check out http://www.gargoyle-router.com/
Good article, though not really a “howto”. By the time you finish reading a proper howto, you are generally able to perform the task described.
I second Tim’s message.
Good article , made my old Wifi Router a bit more intresseting.
But a HowTo explains much more.
Thx
Just got this ruteor today.Im a total noob. your tutorial seems easy to follow. good job. Question: what exactly can i do if i change the firmware to DD-WRT? Is this what my friends are telling me that I can use my ruteor to download torrent files and share my attached hdd to the usb to the network?Thanks and more power to you bro.cheers,murk
The first thing that you should do is head over to: http://dd-wrt.com/site/support/router-database and enter the router model that you have. If it is a Netgear wndr3700 you can check this wiki entry: http://www.dd-wrt.com/wiki/index.php/Netgear_WNDR3700 directly.
Loading DD-WRT can be as easy as downloading the correct firmware (beware of the two different versions of the router when doing so), going to the “upgrade firmware” page in your router and uploading the new firmware.
However, I recommend that you read the Wiki entry for your router entirely before attempting the upload.
Please let me know how it goes.
Flavio
Pingback: Links 16/5/2011: Many New Distro Releases, Netflix Comes To Android | Techrights
A year back I saw a similar article suggesting improve your router using Open Router firmware – however the router support list is quite small and mainly old hardware.
I needed a 3G WiFi-N Router (am mobile, no fixed phoneline) to work with the majority of the worlds HSPA 3G+ networks, and so bought the 300Mbps (not that new) AZTECH HW550-3G
When I looked in the supported router lists then, Aztech nowhere to be seen. Same in the lists in your post today. When googling for info on my router last year, I read in one blog it used a fairly old MIPS SoC and a linux – thats the only info I could find afer an hours searching. I would like to be able to add a few addtional features, like forward to my laptop, any Status data on the 3G signal, Signal Strength, info on the Tower, ISP etc; also a function to provide a separate ‘Guest’ LAN without having to buy an additional Router.
Can you advise me if I am wasting my time looking for a open firmware upgrade for my 3G WiFi-N Router – and if so, for what reason ?
Thanking you for your time.
You may just be getting lucky. There have been some recent discussions in the OpenWRT developers mailing list about upcoming support for that router. But don’t hold your breath just yet; it may take a few months to have a firmware ready for general consumption.
generally, the aenwsr to this question is yes. Routers with more antennas can generally provide a stronger and more reliable signal than those with just one. Multiple antennas can also be pointed in separate directions to provide a directed signal.
Pingback: Install Linux on your wi-fi router « 0ddn1x: tricks with *nix
Pingback: Howto: Linux on your wireless router – Flavio's Technotalk | Linux OS News
Excellent article on the status source routing. I have been running two DD-WRT routers for the last 2 months, an E3000 and an Asus RT-N16 , both on DD-WRT mega.
I had some issues flashing them and trying out to figure the right version so I found a site to purchase them, . They were fast and customized it to my network specifications. Thank the lord for DD-WRT.
You can do so much more with it, the list is too long just go to dd-wrt weibste. You can actually connect a USB hub to the router, so you can access flash drive, hdd, printer, and more.Thanks and have fun with it
Pingback: cheap wireless router reviews