Quick Links

Routers are basically little computers. By default, they run a manufacture-provided operating system, or firmware, to route network traffic and provide you with various settings and features. But you can often replace this firmware.

Most people don't need a third-party custom router firmware. Yes, custom firmware can provide you with additional features and other benefits, but they're more complex and most people just want their router to function as an appliance.

Firmware Basics

Your router runs an operating system, known as its firmware. Router manufacturers provide a way to "flash" new firmware, which is typically used to upgrade the router's firmware to a new version from the manufacturer. However, you don't necessarily have to flash a file provided by a manufacturer -- you could instead flash a file provided by a third-party. This file could have a customized operating system on it.

Routers aren't like PCs. You can't just install any old firmware on any old router. You'll need to use a firmware that's been specifically designed for your router- - one that supports its hardware devices and one that fits in the limited storage space your router includes.

openwrt-pacakges

The Linksys WRT54G

Custom router firmware first took off with the Linksys WRT54G router released back in 2003. These routers ran a firmware based on Linux. Linksys didn't release source code when they released the router, although they were supposed to. They eventually released the WRT54G firmware's source code after some pressure. Enthusiast's then had a router that ran Linux and the source code to the router. They could take that code and change it, adding features, tweaking it, modifying the interface, and then flashing their customized version back onto the router.

Future versions of the WRT54G ran a different operating system. However, the line of Linux-based WRT54G routers continues in Linksys's WRT54GL series -- the L stands for Linux. However, the WRT54GL series only supports 802.11b/g Wi-Fi and lacks support for 802.11n wireless, so it's not really the ideal router to purchase today.

linksys-wrt54gl-router

Why Bother?

Related: Secure Your Wireless Router: 8 Things You Can Do Right Now

People like installing custom router firmware because they provide additional features. For example, the OpenWrt firmware is basically a Linux distribution for your router, complete with a package manager. You can use it to install lightweight web, VPN, and SSH servers on your router. Even user-friendly options like DD-WRT add powerful features like quality of service (QoS) support for prioritizing network traffic, a feature often found only on higher-end routers. Here's a demo of the DD-WRT interface you can view online.

Custom router firmware can also be more stable than the manufacturer-provided firmware in some cases. If your router needs regular reboots, a custom firmware may make it run more stable.

Security is another concern. For example, some D-Link routers contained a backdoor -- if your browser used a special user agent string, you could access the administration interface without a username and password. Many consumer routers contained another backdoor which was fixed with a patch, but the patch actually just hid the backdoor so it was still usable by attackers. Asus routers with network file share features may expose your files to the Internet for anyone to access. The state of home router security is a nightmare, and these open-source projects based on Linux likely won't include amateurish backdoors.

dd-wrt-firmware-qos

How to Install a Third-Party Router Firmware

Related: Turn Your Home Router Into a Super-Powered Router with DD-WRT

If you want to use a third-party router firmware, you'll first need to choose the one you want to use. OpenWrt is a powerful Linux-based router firmware written from scratch to support WRT54G routers, and it's moved on to supporting more routers. DD-WRT is a more user-friendly distribution based on OpenWrt. Tomato has been popular in the past, but it was last updated in 2010 so it won't support as many routers and is more outdated. There are many other third-party firmware projects, too -- you'll find a long list on Wikipedia.

Next, you'll need to be sure you actually have a router that supports this firmware. You can find a list of router hardware firmware support on their websites -- here's the list of devices OpenWRT supports and here's the list of devices DD-WRT supports.

If you're shopping for a router, you'll want to do some research to find a solid modern router that supports third-party routers well. For example, we saw this advertisement on the DD-WRT site -- ASUS is advertising directly to enthusiasts looking for third-party router firmware, arguing that their hardware is the ideal platform for running your own router operating system. Geeks who hack their routers are a big enough market for manufacturers to pay attention to.

asus-dd-wrt-advert

You'll want to follow the firmware's instructions to go through the installation process. However, the process is generally as simple as downloading the appropriate firmware file for your device, visiting the Upgrade Firmware page in your router's web interface, and uploading the third-party firmware through this form. The router will then replace its original firmware with the third-party one.

upload-and-install-third-party-router-firmware

Of course, third-party router firmwares generally aren't supported by the router's manufacturer. They're like installing a custom ROM on Android or replacing your PC's operating system with Linux. If you encounter a problem, you can't just contact the router's manufacturer and expect them to troubleshoot problems with the third-party software.

Image Credit: webhamster on Flickr, Chad Ohman on Flickr