Ask HN: Best current model routers for OpenWRT, DD-WRT, Tomato, etc.?
There are many models of routers that support open source router software/firmware like OpenWRT, DD-WRT and Tomato. However, when you look around, it's very difficult to determine the recency of router models out there and post date isn't always useful since many use which ever router just happens to be available to them for free. If one were to decide to buy a brand new model router to install open source router software on, where would you go to find out the best current models and be able to compare their features?
While it would be nice to know the best models as of today (December 1st 2013), I think it's more interesting to be taught how to fish instead of being given a fish. This also makes it easier for me (and anyone else) to pass this advice onto the next person.
120 comments
[ 4.1 ms ] story [ 201 ms ] threadThat said, if you are not too cost conscious you can build a wireless router out of the Intel NUC really easily, and for modest loads I've used a Beaglebone as an access point. So you may find you can cobble together the pieces in a fairly straight forward way. I do not recommend a Raspberry Pi as a wireless router as its network is all going through the USB hub and as such it has a lot of latency spikes.
Funnily enough, I never bothered installing any firmware, I found the default to be excellent (despite the reviews on amazon trashing the Asus firmware). I found it fine for me.
(Yes, I tried googling it.)
Here's their networking section: http://thewirecutter.com/leaderboard/networking/
Its cheap, stable and un-brickable. So much so that there is a special tomato version dedicated to this model.[1]
[1] http://www.easytomato.org/download
http://thewirecutter.com/reviews/best-wi-fi-router-asus-rt-n...
I have one myself but have not loaded Tomato on it yet.
There were some pretty good router deal on Black Friday, be on the lookout for the ASUS on Cyber Monday I'd say.
Run pfSense on an old x86 box and you'll end up with something an order of magnitude better. As far as an access point goes I'd suggest going with ubiquiti gear if it's in your budget.
If you wanted to sensibly advise using pfsense you could point at the zrouter project http://zrouter.org/projects/zrouter/wiki/Supported_devices
Size is irrelevant unless you're putting it in your entertainment center (why?) or live on a sailboat. Just stick it in the basement, stack on top of the fileserver, whatever. If you're doing the dorm room thing or living aboard a sailboat you have to realize that involves some highly unusual lifestyle compromises. For most people its not an issue.
Noise: I did splurge on some large slow fans (like $10) to replace old small fast (LOUD) fans. Again this is a lifestyle thing, where if your castle has no location further than 5 feet from your sleeping head, you're going to have serious lifestyle issues that most people simply will not have. I don't find my desktop at home or work to be particularly loud. I did at one time run a more modern desktop as a firewall and specifically ripped out the fancy graphic card and used the on board video, to reduce noise a little. After installation I never used the video or keyboard again, all SSH access, so its not like it needed fancy graphics. My main firewall/wifi/dhcp/asterisk/stuff/etc box is about 50 walking feet from my sleeping head, past the (sometimes) loud fridge, the dishwasher, the clothes dryer, the hot water heater... For most people its not going to be an issue.
Power consumption. Not an issue. I was drawing about 50 watts which will cost about $50 or about 3 weeks of cablemodem service per year. Using the EE tradition of it costs about $1 to provide 1 watt for one year. I admit I was an idiot and upgraded to a soekris box many years ago which is basically a 5 watt PC. So I save about $45 per year of damage to my finances and the environment. Great, that'll only take like ten years to pay off the capital expense / manufacturing environmental degradation. That was a dumb move on my part and I'd suggest you're always better off both financially and environmentally by reusing an old desktop.
Lack of ethernet ports (LOL, serious? Plug in another board?)
No, it's not. If you're using *DSL (including FTTC) then how much space you have available depends on where your phone line enters your house, for instance.
My lines comes in, from a pole in the alley behind my house, to my kitchen and the master socket is by my kitchen door in the hall. I certainly don't have room for a large box there, but a typical router fits nicely.
pfSense is radical. It's like OpenWRT in that it's a self-contained router/firewall/etc... operating system, with great gui and cli management tools. It's based on FreeBSD and has a very active community of developers and users. There's even a pretty cool subreddit for it: http://reddit.com/r/pfsense
One of the unexpected side-effects of the pfSense box was seeing my internet speeds increase significantly. The only variable that I changed was from the ASUS router to an older system running pfSense. In both scenarios I was hardwired using cat6. Prior to pfSense I would get ~20mbps down and now I am hitting ~30 with no problems.
I've got it setup with a dual gigabit nic. The motherboard ethernet port goes to my cable modem for WAN, and each port on the gig nic corresponds with my LAN and LAB subnets. LAN goes to my house, wifi devices, etc... and the LAB subnet is for my servers.
It's nice having an ipsec VPN running that I can connect to when on the road. For example, I'm in California right now for the holidays and can still hit my Freenas box for file storage/backups that is 3,000 miles away in Northern Virginia.
I built a rack for the setup, you can see the black pfSense box down below: http://instagram.com/p/g4JuvrBf7N/
It's an older Compaq/AMD Sempron system that I refurbished a bit. After installing the HP dual-gig nic, I also threw in a cheap SSD and upgraded the processor to a dual-core AMD Athlon. It was like $6 on Amazon.
Here's a video that I made explaining some of it, for those who are curious: https://www.youtube.com/watch?v=O8Lk07vi98o
---
Alternatively, there's some cool hardware out there that is more custom/indie such as Mikrotik (http://www.mikrotik.com) or Netgate (http://store.netgate.com)
Although you do not even need pfSense. You just need a BSD with pf. You can run your own customized BSD image with a Soekris or Alix board.
Can you run BSD with Ubiquiti's boards? What if I do not want a Linux-based system? There is no GNU pf.
I will one up that with: run pfsense on an old s86 laptop with two pcmcia card slots. Because xircom realport.
Because it is a laptop you'll never need KVM because KVM is built-in - no more fiddling with the com port or lugging over a monitor, etc. (also, built-in UPS is a nice bonus).
But my favorite part is that by using two xircom realport LAN cards[1], you end up with a device with three full size rj45 ports on it (assuming the laptop itself has one).
It's cute and sexy to have some tiny little embedded board, but the laptop wins for usability by a wide margin.
[1] http://reviews.cnet.com/adapters-nics/xircom-realport-2-card...
http://wiki.openwrt.org/toh/netgear/wndr3700
I can also recommend Netgear WNDR3700 if you want 5Ghz.
I recently flashed a TP-Link TL-WR1043ND with OpenWRT and it worked like a charm. I'm planning to flash it with the Pantou[4] OpenWRT distribution so I can start running OpenFlow with real hardware.
[1]: http://wiki.openwrt.org/
[2]: http://wiki.openwrt.org/toh/buyerguide
[3]: http://wiki.openwrt.org/toh/start
[4]: http://archive.openflow.org/wk/index.php/Pantou_:_OpenFlow_1...
Also, about an year ago, switch support was nearly non-existent - they just had the configuration struct hardcoded right inside kernel and nobody (including me) hadn't enough patience to properly expose config to userspace. But that matters only if you want 802.1Q, which is rarely a requirement for typical home networks. And maybe someone bothered to hack that, already.
Otherwise TL-WR{7,8,9,10}4[13]ND is a good platform. Unless they changed something recently, I'm not aware of.
You can find the firmware here: http://tomato.groov.pl/download/K26RT-AC/
After that though, it ran great for a few years until the motherboard died. In all, $100 well-spent for a quiet and small pfSense box with enough power to handle 100mbit internet at wire speed.
Here's an example of what you can get these days:
http://www.ebay.com/itm/NG816AA-HP-Compaq-GT7725-Thin-Client... ($60 and it has either a PCI or PCI-E slot).
Now I'm happily on a Ubiquiti EdgeRouter Lite, which is a great little Debian ARM box that runs Vyatta for $100: http://www.ubnt.com/edgemax (protip: learn the CLI; it's very similar to Cisco's IOS)
If you don't have 802.11ac-capable devices and just want a cheap solid dd-wrt box, I would suggest the Asus RT-N16 or RT-N66U. The thing to look for is the amount of ram in these things. An 8M router is going to suck at running dd-wrt. See the big huge table here:
http://www.dd-wrt.com/wiki/index.php/Supported_Devices
And pay attention to the ram column.
There is code.google.com/p/rt-n56u/ but it's nowhere as good as my old Tomato.
- http://at.prahec.com/ - http://tomato.groov.pl/
I really like vyatta, but now that vyatta is basically dead, I'm happy that it lives on in edgeos.
Don't be fooled by the GUI though, it's very incomplete, but the full feature set of vyatta/edgeos is there accessible in the CLI.
If you can disregard the fact that the firmware isn't open source, have a look at www.ubnt.com and www.routerboard.com . Those don't run openwrt, but price/performance and features beat everything else that's on the market. The mikrotik routers are performing so well and have so many features it's ridiculous. If you really need Cisco, you'll know. If you're not sure, get a mikrotik, it will cover everything you'll ever need.
Anyway their hardware is excellent...
I buy literally thousands of them for work (we re-purpose them as network measurement devices, running OpenWrt), and the models we use are as follows:
* TL-WR741ND - 100M ports (can saturate the WAN link).
* TL-WDR3600 - 1G ports (LAN-WAN can hit around 500Mbps with careful tuning, but I don't know how that changes when NAT is enabled)
* TL-WDR4900 - 1G ports (LAN-WAN can hit around 900Mbps, and that's even without using the NAT co-processor, which OpenWrt doesn't support)
Ones I would avoid - WR1043ND (very popular, but old now - it was the precursor to the WDR3600), WDR3500 (100Mbps ports - yuck), WDR4300 (very little difference to the WDR3600, but more expensive)
The TL-WDR4900 really is blindingly quick, largely because it has a PPC CPU inside rather than the MIPS CPU, but it's also double the price of the 3600.
Unless you need the horsepower, the TL-WDR3600 really is the way forward.
I would avoid the 802.11ac models at the moment; they're more expensive, and there's no 802.11ac driver for OpenWrt yet, so you'd be wasting your money.
I'm running Merlin's AsusWrt on an RT-AC66U and I've been very happy with it. I bought it earlier this year to replace my aging WRT54GL which had run with Tomato for years.
I'm also a fan of OpenWrt, but I use the x86 build on a VM host, it acts as a router/firewall to other VMs in a private bridge.
If I could do it all again, I'd go for OpenWRT, though in my case that's just because OpenWRT has some features that ddwrt is lacking (e.g. native IPv6).
It's a pretty amazing little project.
Also, if you ever need to roll your own firmware, prepare for a big uphill struggle with DD-WRT, but it's a (relative) breeze with OpenWrt.
Yes, it is true that the wiki has conflicting information, but it's not that hard to find a version that works well with your set up. And most routers are really hard to brick (and worst case scenario most models have JTAG in the PCB, so you can un-brick your router even from the worst mistakes).
Once you have a stable config, you'll enjoy several years of rock-solid performance - at least until you need to upgrade your router again. Rinse and repeat.
FWIW, I'm using Asus RT-N16 with DD-WRT v24-sp2 (03/17/12) kingkong, and also used WRT-350N, WRT-54G/GL. All services I use are rock-solid: VPN, QoS, DynDNS, MAC filtering, USB storage, printer support, etc. Of course, YMMV.
On the negative side, making even trivial firewall changes such as adding or removing port forwarding rules still requires a router reboot. Apple routers do (or did) this too. I'd like to know who decided that this was an acceptable behavior.
I also loaded DD-WRT on the AC66U and it was unable to get the WAN interface moving. And Shibby's TomatoUSB suffered from show-stopping configuration bugs.
Switching from dd-wrt to Merlin's ASUSWRT, I find that it kinda screws with airplay.
When I play a movie, I'd usually select the sound to output to my Airplay speaker on my apple tv. After switching to Merlin's FW, I tried playing a movie and there was interference and distortion in the sound.
I suspect its due to the ethernet connection/port that brought about that problem since the issue went away when connecting the apple tv via wifi. I only use shielded cat5e cables btw. All in all, the problem went away when I switched back to dd-wrt.
I remembered spending a whole Sunday just to figure that out. Also, I'm not sure if its just isolated to Merlin's ASUSWRT since stock ASUSWRT might also be affected(I didn't test).
It's kind of annyoing that it comes with DD-WRT preinstalled, but it's half-assed and is not configured for easy modification.
I have not taken the plunge yet, because I do not want to deal with jtag cables if it bricks, and the whole "install our binary, and then do not even breathe in the direction of the router for 10 minutes" part does not inspire much confidence...
Telnet into DD-WRT, then wget followed by mtd.
The console approach makes it clear what's happening.
http://wiki.openwrt.org/toh/buffalo/wzr-600dhp
As for router models, development seems to be slow these days - I can only recommend the older Linksys routers, the Belkin F7D4301 and the many TPLinks (WR7-10xx series in particular)...
But any model that has a stable DD WRT release should be good - most important thing is the processor and Flash/RAM size in my opinion...
http://www.dd-wrt.com/wiki/index.php/Supported_Devices
With a powered USB hub and an external disk drive and a webcam, it functions as remote backup via. rsync and monitoring my home when I'm on vacation, when enabled it takes pictures every 2 seconds when there's movement in the frame. The pictures are uploaded offsite immediately.
I'm using OpenWRT and have had very little problems, only issue I've noticed is that the wifi transfer speeds are a bit slower (10-30%) than when using the factory firmware, but I can live with that.
I like this because x86 will always be compatible with anything I might run in the future, and changing out wireless hardware from 2.4 N to dual-band N to ac has been trivial and required no thought to compatibility.
This kind of logic is why I use plain old Debian as the OS with roughly the same hardware architecture as your design.