Setting up OpenWrt on the DSL-AC68U for 1 Gig speeds
With default settings, OpenWrt only reaches 360Mbps download on a DSL-AC68U. This guide explains how to set up OpenWrt on this device and reach speeds of over 900Mbps!
Note: At time of writing, OpenWrt does not support WiFi or ADSL/VDSL on this device. This is fine for me, as I’m just using it as an ethernet router. If you need these capabilities, consider using the stock firmware or Asuswrt-Merlin (gnuton's version).
Flashing
Warning: This should be safe, and Asus makes it easy to recover a router from a weird state. That said, I take no responsibility if you break your router.
You will need:
- 1x DSL-AC68U
- 1x Ethernet cable
- 1x Computer with ethernet port
Follow the guide from the OpenWrt wiki for the RT-AC68U. In short:
- Turn off the device
- Press and hold the reset button
- Turn on the device
- Wait until the power LED blinks slowly (in about 10 seconds). Then release the reset button.
- On your computer, download the latest1
While I recommend using the latest firmware, one that definitely worked for me was 23.05.5
‘Factory image’ linked on the wiki - Connect your computer with an ethernet cable to any LAN port (you may need to set your computer to have a static IP)
- Visit 192.168.1.1 in your browser, which should show the CFE miniWeb Server
- Don’t see anything? Do an NVRAM reset, go back to step 1.
- Upload the factory image you downloaded and wait for the upgrade (in about 3 minutes)
- Login to OpenWrt at 192.168.1.1 in your browser (username:
root, password: leave blank) - Do an NVRAM reset.
Break something along the way? Do an NVRAM reset, then start again from step 1.
To go back to the stock (original) firmware, download it here (unzip it to get the .trx file) and follow the steps above but upload the stock firmware at step 8.
Configuration
Configure OpenWrt as normal. If you’re new, you probably want to:
- Open Luci (the web portal for configuring OpenWrt) at 192.168.1.1
- Set a router password (you’ll be prompted to do this automatically)
- Configure a WAN port (to connect your devices to the internet)
- [This assumes you want to use the LAN 1 port for WAN. Adjust accordingly if not.]
- Connect your WAN cable (the one from your internet provider) to LAN 1
- Connect your computer to any other LAN port
- In Luci, go to ‘Network > Interfaces’
- In the ‘Interfaces’ tab (selected by default)
- Click ‘Edit’ for ‘wan’, and set the device to
lan1 - Click ‘Edit’ for ‘wan6’, and set the device to
lan1
- Click ‘Edit’ for ‘wan’, and set the device to
- On the same page in the ‘Devices’ tab
- Click ‘Configure…’ for br-lan, and in ‘Bridge ports’ remove
lan1. Then ‘Save’. - Click ‘Unconfigure’ for
wan.
- Click ‘Configure…’ for br-lan, and in ‘Bridge ports’ remove
- Click ‘Save & Apply’
If you make bad changes and can’t reach the router, just wait 90 seconds and they’ll be reverted.
Performance tuning
With the configuration above, OpenWrt achieves about 360Mbps download. This might be fine for many use cases, but we can do better. Two tricks - software flow offloading and increasing the CPU clock speed - take us to over 900Mbps!
Software flow offloading
The default firewall implementation may slow down traffic considerably. Enable offloading to speed this up:
- Open Luci (the web portal for configuring OpenWrt) at 192.168.1.1
- Go to ‘Network > Firewall’
- Tick the box for ‘Software flow offloading’, then ‘Save & Apply’
Increasing CPU clock
The OpenWrt firmware we installed was for the RT-AC68U, which has a lower default clock speed. We can increase the clock speed back to what the DSL-AC68U supports without sacrificing stability.
To do this:
- SSH into the router. On most systems this will be running
ssh root@192.168.1.1in the terminal and using your router password. See the OpenWrt wiki for more details about SSH. - On the router, run:
nvram set clkfreq=1200,666 && nvram commit && reboot. This will increase the CPU frequency to 1200Mhz, set the RAM frequency to 666Mhz, and reboot the router (takes about a minute).- You can push the number even higher, which might eke out a bit more performance. I didn’t bother, as I was already maxing out my internet connection. If you push it too high, the router might not boot - an NVRAM reset will undo your changes and fix this.
Full benchmarks
Here’s the full table of benchmarks for the DSL-AC68U on OpenWrt, plus a comparison against the stock firmware:
| CPU Clock (Mhz) | Firewall offloading | Download (Mbps) | Upload (Mbps) |
|---|---|---|---|
| <stock ASUS firmware> | NA | 917 | 922 |
| 800 | None | 362 | 439 |
| 800 | Software | 621 | 752 |
| 1000 | Software | 764 | 919 |
| 1200 | None | 515 | 667 |
| 1200 | Software | 🏆 924* | 🏆 927* |
| 1200 | Software + hardware | 892 | 893 |
*The fastest I’ve ever got with any router on this connection - so this may simply be the limit of my connection rather than the router.
Appendix: NVRAM reset
- Turn off the device
- Press and hold the WPS button
- Turn on the device
- Wait until the power LED blinks fast (in about 30 seconds). Then release the WPS button.
Footnotes
-
While I recommend using the latest firmware, one that definitely worked for me was 23.05.5 ↩