Introduction to OpenWrt/LEDE/OpenWrt, Open Source Software for your router

History

The Original WRT-54G

Linksys released the WRT-54G router in December 2002. However Linksys used Linux under the covers, and the GPL License of Linux requires giving back changes to Open Source.

After some legal wrangling Linksys was forced to release the changes they had made to linux in order to support the original WRT-54G router, and OpenWrt was born in 2004

OpenWrt Logo

Split of OpenWrt and LEDE in 2016. LEDE is the Linux Embedded Development Environment. LEDE has remerged with OpenWrt at the end of 2017.

Installation

Installation appears similar to other Open Source router software such as DD-WRT and Tomato. However once the image is flashed to the router, it becomes more like a regular linux distro, allowing one to install packages as needed.

Note: use the factory image when upgrading from the manufacturer supplied router software.

SqashFS is a read-only filesystem. In order to make it appear to be read/write (for installing packages, OpenWrt/LENE uses an Overlay filesystem over the SquashFS. This makes resetting back to initial state easy, since the overlay FS is erased, leaving the original Squash FS.

OpenWrt supports several Processor types, and includes support for over 1000 routers (even the Raspberry Pi)

The most recent release is 18.06.4 (released in July 2019). However, release 19.07 is coming RSN (Real Soon Now). Based on the release number it should have been available in July 2019, however there are still some outstanding issues which are blocking release.

When Installations go bad

Don't try this at home

Fortunately, this rarely happens.

Features

OpenWrt comes with excellent support for IPv6, including transition methods such as tunneling to Hurricane Electric (e.g. if you have IPv4-only Shaw). Allowing you to move the router to the future.

OpenWrt supports older routers, including these with only 4MB of flash (version 15.05 or older). More modern versions as a minimum of 8MB of flash required, support list

A fully functional web interface LuCI, as well as a command line interface (CLI) via ssh is available for configuration.

Many how-to's are included make it easier to configure features such as VPN links, Asterix(VoIP switch), USB Webcam, and even a general purpose webserver.

A smaller world

Routers have less memory, and storage (flash) than single board computers, such as the Raspberry Pi, or Odroid. Typically a modern router will have 8MB of flash, and 64 MB of RAM. But even with a smaller amount of storage, many useful packages (OpenVPN, WireGuard, bash, tayga(NAT64), etc.)

Other Open Source Software for Routers

OpenWrt is not the only open source software (OSS) for your router. Linksys open sourcing, spawned several other WRT-based router projects.

OpenWrtLEDEDD-WRTTomato
Recent Release18.06.417.01.4v241.28
Release DateJuly 2019Oct 2017July 2008June 2010
# Routers supported96782037921

Degree of difficulty

The other OSS router projects are a monolithic approach, which means once installed, you have all the features you will have. There is no ability to add features/packages after the initial install. This tends to make the monolithic OSS easier for beginners.

Although Tomato is no longer actively being developed, there are many forks for that project including the most recent, Kill72 Mod, designed for ARM-based routers which was released this month (Sept 2019).

Web GUI - DEMO

The LuCI interface is rather clean, menu driven with most of the configuration in Network Menu. Configuration of:

The System Menu includes

The Status Menu includes

Wrapping up

Why use OpenWrt rather than the included router software?


Orignally published on 29 June 2018
Updated 23 September 2019