Some of you know that the router inside is actually a small computer. And like any computer, it has an operating system. Some vendors wrote their OS and some adopt existing ones. These days, most of them use the existing OS because write own OS is very hard and costs a lot of money. With existing OS vendors just need to write a network driver and some kind of user interface.

And even writing a network driver is not an easy task. You need developers who are experts in that field and thousands and thousands of hours to make sure that it is stable. As you can imagine, it cost a lot of money and the vendor cannot work for

Here is an update on Cudy X6 after close to two months of use.

After I made Cudy X6 my main router, I had 2 cases where I shortly lost connectivity for about 10 seconds. First time I was quite busy and then forgot it, but the second one happened when I had time to research and I found this in logs:

NETDEV WATCHDOG: eth0 (mtk_soc_eth): transmit queue 0 timed out
…
[572627.361199] mtk_soc_eth 1e100000.ethernet eth0: transmit timed out
[572627.370851] mtk_soc_eth 1e100000.ethernet eth0: Link is Down
[572627.421492] mtk_soc_eth 1e100000.ethernet eth0: configuring for fixed/rgmii link mode
[572627.429576] mtk_soc_eth 1e100000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx

This issue was happening around once per 10 days. After some

As I wrote before, Cudy X6 router uses OpenWrt. But its UI is more user-friendly for the typical router user. I don’t want to use it for a few reasons:

  • I don’t want to be at mercy of the company to release software updates. In a year or two they may decide that it is not viable to support this router anymore
  • I’m quite familiar with OpenWrt for years I’m using it
  • I don’t trust Chinese software engineers. I had a lot of experience with Chinese software routers and the word “security” just does not applies to them. My first Chinese modem I cracked in 1 minute that it took me to search right answer on the Internet. The second one took 5 minutes searching for an answer and then login-in as a regular user. And changing the password dialog confirms my suspicions. Normally when you change passwords you need to confirm it, to avoid cases when you accidentally pressed the wrong key when you type a password. They didn’t have it
  • I don’t trust any Chinese company. They could add a backdoor by request from the Chinese government and somebody else can use this backdoor. I don’t have anything sensitive, but I prefer to know that the software come from a reliable source. I’m not sure if this is enough, but I hope it will increase security.

I don’t know how I missed it but by default OpenWrt router will be accessed via http. Http means that when you login, data will be transmitted via plain text and in many cases it can received by other devices in your network (depending on how you access router, type of router and what is you network configuration).

Many people can say that they have only trusted devices in your network. But devices have vulnerabilities. You never know if your device is vulnerable. Sometimes you may add friend of guest to your network. You have no idea if they update their devices or if they care about security at all. And in any case defense should be layers, so failure

Let me explain my network configuration. First is cable modem Arris SB6183 that works as dumb device that pretty much just transfer signal from cable to ethernet. Next is my main router based on TP-Link Archer C7. It has OpenWrt instead of stock firmware and it works great. Effectively cable modem plugged into WAN port of that router and my router does all heavy lifting. Main router is also Wi-Fi access point. But because I have relatively big house and connection cabinet is in one of its corners, I cannot provide stable Wi-Fi connectivity to opposite corner. As result I have second router based on TP-Link TL-WDR4310. It also running OpenWrt. Second routers to connected to main router by

In this post I will explain how to install OpenWrt on TP-Link Archer C7 but in general it can apply to any router.

Perparation

Before you start upgrading your router to OpenWrt you have to check following things:

  • Make sure that are still will be able to connect to internet when your router is offline. For example, you can connect your phone to your computer, or you can create hotspot on your phone and connect to it. This is necessary because you may need to troubleshoot or ask some questions etc. So, go ahead, power off your router and make sure that still able to connect to internet. If you are using your phone and have data limit, please do not use youtube or something like that as it consumes a lot of traffic. If you have to use youtube then reduce quality of video a lot.
  • Save all setting you have on your current router. It could be username and password for your internet provider. Perhaps your current Wi-Fi settings. Just in case you can go thru all settings and make screenshot of every single page. You never know.
  • Also, before you start you need to check how to revert to factory firmware. My understanding that for Archer C7 you just need to flash factory firmware: https://openwrt.org/toh/tp-link/archer-c5-c7-wdr7500#return_to_factory_firmware. It is good idea to download original firmware before you start upgrading to OpenWrt. Just in case.

As I mentioned in my previous post, I did order TP-Link Archer C7 router and finally it arrived. And I decided to create small unboxing post :)

Router arrived in nice looking box:

Back side:

After I removed plastic film from box I finally can see that I have i have US model and hardware version is 5:

This is latest version and it is even still supported by TP-Link. Here is box content:

as you can router is

Recently I decided to upgrade one of my routers and I begin my search. Number one requirement for my new router is compatibility with free open source firmware called OpenWrt. I wrote more about why you should use it here.

I don’t want to buy expensive router for $200. About half of the price of such router are features that I can get for free from OpenWrt. Also, many these routers are quite powerful and hot, and my router will be in room that is not ventilated well and close to quite hot cable modem.

As result here is list of requirements for new router:

  • Price between $50-$90
  • It should not be hot
  • Minimum 16MB of flash. It is space is used for OpenWrt and any additional packages. The more flash you have the more stuff you can install. My current router has 8MB of flash and in some cases, it became limiting factor.
  • At least 64Mb of RAM, so I will not be limited by it now or in future
  • Gigabit ports because 100 megabits are not enough in 2019. My internet speed already is 200 megabits
  • Router should support WLAN 5.0GHz ac
  • Router should have USB port as I could use it to store some data. It is optional, but it is great to have because to save something permanently you have to write it to router’s flash memory and it will wear. can replace USB flash drive, but I cannot replace flash inside of the 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