When I say my WiFi performance was suffering, I really mean it: I live in a large high-rise apartment building and there are 100+ WiFi access points visible from my home office. All of the contentious traffic was severely curtailing my WiFi reliability. I was lucky to get 1 Mbit/second throughput. Sometimes I was lucky to stay connected even with my WiFi router in the same room.
I decided it was time to go for 5 GHz, which is a WiFi band which is used less frequently and which has a tougher time traversing walls. And of course I wanted DD-WRT support. The set of features I was looking for included:
- Trouble-free DD-WRT support
- 5 GHz 802.11n Support
- Simultaneous dual band capability
- Inexpensive. Maybe even cheap. For me this means under $50. Under $35 is even better!
It sounds like an easy task to bring all this together: All of this technology has been around for over 5 years. But nothing is as easy as it seems until you know exactly what to do. Finding the best router for DD-WRT takes a lot of qualitative analysis.
Finding the best router: WNDR3400 (or N600)After doing some research I found that some Netgear WNDR3400's can be very inexpensive and support DD-WRT. This router is also known as the Netgear N600. In particular, DD-WRT is compatible with version 1 of the '3400.
In shopping around, I found this refurbished Netgear WNDR3400 routers for sale on Amazon for under $35. I figured the price was right, and if I managed to get a version 2+ I would assess it on its own merits. (Update: For the real bargain WNDR3400s, make sure you check out the "new and used".)
Well, I ended up getting a version 2, which is not DD-WRT compatible†. But I fired it up anyway, and it performed wonderfully in terms of reliability - it sped up my home WiFi incredibly. I decided to keep the WNDR3400v2 using the principle that "super-fast working WiFi without DD-WRT" is better than "awful WiFi".
|Version 2 Label|
After a month or so of operation I remained happy - the N600 was working great. A family member gave me a call and needed a new router, so I decided to buy another WNDR-3400 for her. After all, it provided great performance and at an incredible price. But when I got my next refurb, it was a Version 1! The gamble paid off!
|Version 1 label|
|The N600: v1 on top, v2 on bottom. They must be very different on the inside.|
Choosing the right DD-WRT firmware for the WNDR3400The hardest part about DD-WRT is knowing what firmware to install. I have a list of what I look for:
- A version that has the features I need
- 2.4 & 5 GHz WiFi
- Working Ethernet
- Working SSH
- Working IPTables
- No Heartbleed-ing
- Known not to brick or otherwise destroy the router
After some significant research, I chose a build that seemed to have the right mix of reliability and working features that wouldn't brick my WNDR3400. To be precise, I used exactly this build:
Installing DD-WRT on the WNDR3400Now, before you try to do this, just remember that this worked perfectly for me but it may not work for you at all. So please proceed at your own risk. After all, some people do things like drive their car to the repair shop because the oil light is flashing red.
Once I downloaded the firmware build noted above, I installed the firmware using the following procedure:
- Turned off my computer's wifi
- Connected my computer to the router's port #1 via an ethernet cable.
- Restarted the WNDR3400 via its power switch
- Fired up Firefox on my computer
- Entered the Netgear firmware update page on http://192.168.1.1/
- Used the Netgear's firmware update page to install the firmware.
- Waited about 5 minutes
- Set the local password
- Set the SSID and WPA2 password
- Configured DDNS
- Configured SSH
- Configured port forwarding, static DNS entries, etc.
Now my WiFi is fast, reliable, and has DD-WRT. My old v2 router will go to my family, who can use it without DD-WRT.
|My WNDR3400 v1 in action with DD-WRT!|
The only impactful bug I have found so far is related to SSHd. Despite leaving the private sshd port 22 and putting the public sshd port on 10002, SSHd was publicly listening on 22 and 10002. This is behavior is different than other DD-WRT builds I have used.
My simple work-around was to have sshd only available on 10003. Interestingly, I didn't immediately see this via iptables or netstat. It took a portscan for me to reveal this.
So far I find the WNDR3400 very reliable. It has been up and running for more than a month without any known issues.
Installing DD-WRT on a WNDR3400v2I have read about some people being successful installing DD-WRT on a v2, but I was unwilling to try - the evidence I saw out there wasn't that strong or compelling. But if you try, please let me know the outcome in the comments.
UPDATE: I was also able to install DD-WRT on a v2! Yes, it is possible. I haven't tried all features, but everything I use on a daily basis is working great. See this post for details.