I wanted to re-purpose an old Linksys WRT54GL by overwriting its firmware with the open source DD-WRT firmware, because the original Linksys firmware does not support a wireless repeater setup. A Wireless Repeater is used to “extend” the range of a primary wireless router by connecting a secondary wireless router (i.e. bridging), and routing Internet-bound traffic via the primary router. Here is how I got it working.

Background

You will need a computer with an Ethernet port connected to the secondary router in order to access the admin interface (at whatever the default firmware’s address is). Then you will have to flash it with a firmware from DD-WRT.I am using DD-WRT v3.0-r40559 mini (beta) for Linksys WRT54GL 1.1 dated 08/06/19 with the filename dd-wrt.v24_mini_generic.bin.

I am not going to explain the initial flashing and 30/30/30 hard reset.

Instead, I am going to focus only only the repeater setup below. Once the DD-WRT firmware is installed, you should be able to connect to the admin page at 192.168.1.1 and you should first change the admin username and password.

There is Repeater Bridge documentation at DD-WRT with a diagram of a Wireless Repeater setup, but these steps did not work for me. However, a basic repeater (with a separate subnet) setup worked for me. This guide at Quick-Fix Computer Solutions got me on the right track.

Setup

At each tab, make these changes and hit Save:

  1. Under the Setup > Basic Setup page:
    • If your main router provides DHCP addresses. select WAN Connection Type as Automatic Configuration - DHCP, else setup a Static IP.
    • Set the Router IP on a different subnet, i.e. my main router is 192.168.0.1 so my second is 192.168.1.1.
    • The Gateway is the secondary router itself.
    • I do want the secondary router to provide IP addresses, so I set DHCP Type to DHCP Server

DD-WRT Setup - Basic Setup

  1. Under the Setup > Advanced Routing page:
    • Make sure Operating Mode is Gateway - very important!

DD-WRT Setup - Advanced Routing

  1. Under the Wireless > Basic Settings page:
    • I am using the Repeater wireless mode (i.e. with a different subnet), whereas Repeater Bridge puts the second router on the same subnet as the first. However, I had issues with iOS devices connecting.
    • Under the Physical Interface panel, enter the wireless SSID name of the first router - exactly!
    • Click Add to create a new Virtual Interface, and use a different SSID for the second router.
    • Make sure both use Bridged network mode.

DD-WRT Wireless - Basic Settings

  1. Under Wireless > Wireless Security page:
    • Configure the primary router’s Security Mode (e.g. WPA2-PSK), Algorithm (e.g. CCMP AES), and Shared Key - this must match exactly.
    • Don’t make my mistake - do not assume the superset e.g. TKIP+CCMP or WPA2-PSK/WPA-PSK will cover both cases!

DD-WRT Wireless - Wireless Security

  • Similarly, you can use Status > Wireless > Site Survey to join your network, but again it does not set the correct security algorithm!

DD-WRT Status - Wireless - Site Survey

  1. Under Services, disable everything.

DD-WRT Services

  1. Similarly, disable everything under Security:
    • Except Filter Multicast and ARP Spoofing Protection - don’t ask why, I simply saw this mentioned somewhere.

DD-WRT Security

  1. I didn’t touch NAT / QoS, but it’s worth mentioning QoS should be disabled.

Finally, in whichever last tab you are at, hit Apply Settings to reboot the secondary router. In fact, completely turn it off or unplug the power, and then turn on / re-connect power.

Test

Once it is up - and it may take a few minutes to be fully ready - check that the primary router has assigned an IP address, either:

  • At the top right hand corner under the heading WAN IP, or
  • Under the Status > WAN page, check the IP address, gateway and DNS servers:

DD-WRT Status - WAN

You should be able to access the Internet via the wired Ethernet connection to the secondary router.

If that works, then connect via the wireless access point - remember to connect to new virtual interface SSID in step 3 above and not the primary router’s SSID. If it does connect then you can see the device connection under Status > Wireless. Test for Internet connectivity... the fewer the transmit (TX) and receive (RX) errors, the better.

DD-WRT Status - Wireless

Troubleshooting:

  • If WAN IP is remains 0.0.0.0 - probably the wireless authentication for the primary router is incorrect (Step 3) or is not using DHCP (Step 1).
  • If do get an IP adress, but no Internet access - probably you are not in Gateway mode (step 2) or missed the Gateway IP (Step 1).
  • If cannot connect to the secondary wireless - check the authentication for the virtual interface (Step 4).
  • If wired has Internet access but not wireless - check that the wireless interfaces are Bridged (Step 3) .

Conclusion

Much harder than expected, primarily because of conflicting, unclear documentation. I wouldn’t recommendation anyone to try re-purpose an old router like I did. It is much easier to buy a dedicated repeater or wireless extender from the same manufacturer as your primary router. Slower extenders are pretty cheap, under USD 10, and some even offer an easy-to-use mobile app to set it up.