Optimized and feature rich trunk build for selected routers

These builds here are based on arokh’s Optimized and feature rich trunk build for selected routers. As with my builds I’m also going for an out-of-the-box experience with almost no setup/configuration after flashing needed.

Currently the following routers are supported:

  • TP-Link Archer C5/C7 (archer_cx)
  • TP-Link WDR4900 (wdr4900)
  • NETGEAR WNDR3700/WNDR3800/WNDRMAC (wndr3x00)
  • NETGEAR WNDR3700 V4/WNDR4300 (wndrnand)

For other routers just download the source tarball, copy one of the profiles/* to .config (e.g. cp -fpR profiles/wdr4900 .config), run make menuconfig and select your router as a target then save the .config and copy the .config to the profiles/ folder (cp -fpR .config profiles/myrouter). Finally run ./build.sh profiles/myrouter.

Recommended installation method is sysupgrade -n or TFTP. If you keep settings when you upgrade, expect things to break! This is a trunk build, so stuff can and will change that require certain stuff in UCI config that gets overwritten when you keep settings. Same goes for my customization. To keep settings without breakage, you can create a script using UCI commands that you run after upgrading.


  • All frequencies and channels at full power – custom regdb.txt and CONFIG_ATH_USER_REGD=y
  • DNSCrypt (encrypts DNS requests with minimal overhead, uses OpenDNS by default which has some additional benefits)
  • F2FS/exFAT filesystem support
  • Adblocking through hosts file
    • disabled by default, enable by running “adblock.sh enable”
    • mvps.org, malwaredomainlist.com, hosts-file.net and adaway.org are combined
    • servers transparent GIF instead of ads like pixelserv
    • works transparently for TOR/OpenVPN/LAN
  • SQM QoS traffic shaping from CeroWrt
  • Default OpenWrt SSID password: changeme
  • Overclock for WNDR3700 (760MHz/800MHz)
  • Compiles with GCC 4.9 and probably optimized for the target CPU
  • Packages compiled with -O2 optimization: openssl, dropbear, openvpn, libsodium, nettle, dnscrypt-proxy
  • Default root password: changeme
  • miniupnpd
  • DNSSec support
    • Change resolver in /etc/config/dnscrypt-proxy to one that supports DNSSec (see which one supports in the resolver list)
    • Add option dnssec 1 in /etc/config/dhcp
    • Restart dnscrypt-proxy / dnsmasq as needed
  • Enabled utmp/wtmp login records (for last/who applets)
  • Busybox saves ash history, enabled reverse search
  • Incerased log size to 64kb and made some services more quiet to make the log readable
  • Dynamic DNS support
  • IPv6 support (native/6in4/6to4/6rd)
  • LuCI web interface
    • Apps: ddns, mwan3, hd-idle, sqm, statistics, upnp, wol
  • USB storage support
  • hd-idle for putting connected hard drive to sleep when idle
  • SFTP server (openssh-sftp-server)
  • NFS server (unfs3)
    • Shares /mnt automatically when a disk is connected
  • Jumbo frames (passthrough enabled by default)
  • ECDSA host key support for dropbear
  • Some handy tools (tcpdump-mini, etherwake, wassup.lua)

snake and tetris available through opkg 😉

Download here: Downloads

Configure a guest WLAN using the LuCI web GUI

Guest WLAN provides internet access to your network members. It also provides firewall security rules to isolate your guest network from the rest. This recipe is based on the more comprehensive Guest WLAN page, providing a more user-friendly approach through the LuCI web GUI.

Create and configure a new wireless controller

After logging into the web GUI, manoeuvre to the Wifi page under Network. Click Add over the wireless controller (e.g. the 2.4 GHz radio) you want to have your guest network on. A new interface will be added as shown here:



As you can see, our new wireless controller is created, and we named it GUEST-WLAN. Next up is configuring it. Choose the Edit button for the controller. You will need to create a new network, as you can see we named our new network GUEST here:



Also, make sure to setup wireless security if you want to protect the connection:




Configure the new interface

Now if you manoeuvre to the Interfaces page under Network, and you should see you new interface, looking similar to this:


You will need to configure your interface before you can use it. Choose Edit, pick the protocol Static Address and fill out your choosen IPv4 address. We choose here, but you may have different preferences. However, avoid using or as they may already be in use and prevent your guests from acquiring IP addresses. Remember to set the netmask. You will also need to enable DHCP, we choose to go with the default options here expect for the Leasetime which is only one hour, suitable for environments where a large number of guests connect and leave through a day.