OpenWrt - software for your router.

Most of us own Wi-Fi router and many of us did own few of them. And here is common list of issues with most household routers:

* Lack of stability. After some time, Wi-fi will go slower and slower, sometimes you cannot even connect or in extreme cases it can disappear completely.
* Freezes. Router will stop transferring data and you will have to restart it.
* Lack of features. Most common home routers have just very basic features. Some of them have more exotic features and but very often they didn’t work properly.
* Lack of extensibility. You cannot add any feature by yourself.
* Short support live. After year or two your router is outdated and there will be no new versions of firmware and there will not be any security fixes. I should admit that some vendors do releases security fixes, but this is rare.

Why all of that happens? Usually most of vendors did decent routers from hardware point of view. But software requires a lot time to develop, test and support. And development cost a lot of money and if you are buying say $50-$100 router then vendor of that router simply cannot afford to put a lot of money into software. Many vendors just cut features from top end routers and use them in low and middle end routers but due to differences in hardware it not always works well.

Is there any solution to that problem? Yes, and it called OpenWrt. It is open source firmware that is based on Linux and it supports many routers. It is very stable; it has a lot of features and if you need something there are good chances that somebody else did it before and you can use it.

Basically, it turns your router into Linux based computer. You can create sub networks in your Wi-Fi, you can create VLAN, you can add authorization to your users, you can have VPN client, VPN server. It has support for USB and for 4G. You can run task at certain time say every Monday and Thursday. You can specify time of the day certain user can use Wi-Fi or ethernet. And if you need something else there are lot of additional packages available to install. For example, you can connect security camera to your camera and control it from router. It supports all modern technologies, have all security fixes that applicable to Linux and releases quickly and available for all versions except that are really really old.

You can use web interface or command line to setup and control your router. In general, it is a bit more complex than usual router but if you did watch any video it is not hard at all. You just need to know where to look and that’s it.

But not every router can run OpenWrt. Some routers use chips that don’t have public documentation on how to use it. As result OpenWrt team cannot support that router. Sometimes OpenWrt supports only part of functionality. For example, when USB or Wi-Fi controller does not have public documentation available. As result everything else will work but say USB or Wi-Fi will not. Also, some very old routers simply do not have enough memory to run general build. You can create stripped down version, but it is no easy to do.

As example I bought my router in 2012 and it did cost around $80. Factory firmware stops working after 3-4 hours of usual activity and I had to reset it (or power cycle) once or twice per day. Then I read about OpenWrt and I did install it. With OpenWrt it works rock solid for months and usually I had to restart it for other reasons (like power failure or unplug it to clean area where it stands). I have around 20 devices connected to my router and everything works just great. And it still able to run latest version of OpenWrt. And in fact, you can still buy it for around $45-$50 and it is still good.

Here are few examples of what I was able to do:

  • I did setup time when my kids can use Wi-Fi, it automatically disconnects at night and connects back at morning. But after few years I removed it as my kids did grow up
  • But I still can disable Wi-Fi for my kids with press of single button on iPad or iPhone
  • I did setup dynamic DNS so I can connect to my home computer by name instead of IP address
  • I did create guest Wi-Fi for people that come to my house, so they can use Wi-Fi but cannot connect to any device in home network
  • At my friend’s house I installed single Wi-Fi network for 4 routers as he has quite big house. Now he has single SSID and his devices automatically jump from one router to another as he moves from one part of the house to another. And routers also connected by Wi-Fi and there is not possible to put cables everywhere

I’m absolutely happy with OpenWrt and I recommend it to everyone who have a bit of patience to watch couple of videos and little bit of time to play with it.