Because Everyone Needs a Router
codinghorror.com
codinghorror.com
- hardware failure of the previous device
- hardware that can't keep up - an older WRT54GL class device will have trouble routing more than 20-25Mbit/s, which is getting pretty close to what is available from consumer level internet service
- Local speed. Gigabit wired and N-wireless are both valid reasons to upgrade, if you're going from 10/100 and G-wireless.
- Power usage - if you need gigabit networking and have very few devices, it makes sense to not run an older router and a gig switch - consolidating to one device is power efficient and probably pulls less power than older devices.
There are probably plenty of other reasons, but these came to mind immediately.
He never says that's why he did it, and it appears he just got tired of everything being exactly the same. He even complains that there were no firmware updates. But he did have at least 1 problem that he was confident the new router would solve.
1) Easiest, most bullet-proof solution is to wire a central router to more routers acting as wireless gateways. If the stock firmware doesn't support this, dd-wrt does with ease.
2) The open source solution: http://www.dd-wrt.com/wiki/index.php/WDS_Linked_router_netwo...
3) The apple solution: http://www.apple.com/airportexpress/
(OK, it won't boot unless I shove a resistor into the DVI port. But it's an Apple product, so it's not expected to be useful for anything other than buying iTunes movies.)
Anyway, with OpenBSD I have a fast OpenVPN endpoint, full IPv6 support for my whole home network via a Hurricane Electric tunnel, flexible QoS, and of course, proper firewalling and NAT that actually works. The consumer-level router I had before was a joke -- even when I put my main machine into the "DMZ", it still blocked my IPv6 tunnel. What a piece of shit. (ddwrt probably doesn't have this problem, but pf is still nicer than iptables.)
With that thing gone, I can browse kame.net in all its dancing-turtle glory!
My favorite feature is the QoS. If I'm downloading a TV show on my TV and something else on the network decides it wants to download something, I keep enough bandwidth allocated to the TV to keep the stream from being interrupted. And, I prioritize ACKs over all other traffic, so I get full download speed even when the uplink is saturated. And, my ssh sessions stay interactive no matter how much other traffic there is.
My only complaint is power consumption -- the thing runs pretty hot even when it's not loaded, and that's a waste of electricity. But a computer I already had was cheaper than a Soekris device, so...
I'll take http://www.polarcloud.com/img/ssbn100.png running on $50 hardware any day. And yes, it does QoS (http://www.polarcloud.com/img/ssqosg108.png).
The problem I've had with cheap routers (Linux or otherwise) is that their state table fills up and then it stops accepting connections. I was at a conference with flaky Wi-Fi once, and kept losing my ssh connections. Eventually, after only about 10 dropped connections and IP changes, the router's state table filled up and the thing was dead to the world. No ping, no web interface, no routing, no ssh. Dead.
And then when the states expired the next day, it was back again.
This is unacceptable.
In my case, apparently the external monitor attached to my MacBook would disturb the signal somehow. Luckily, simply switching the channel fixed it. It just never occured to me to switch the channel because signal strength was always good.
What amazed me most is that I was able to find a solution even though I had 0 idea on how to debug a WLAN network. Buying a router with a stronger signal was my only idea initally.
Blog article: http://blog.blinker.net/2010/09/12/fixing-wlan-connectivity-...
Their source distribution is really nice too--they keep everything in a sort of ports style makefile setup. When you get the source and build, it ends up compiling the appropriate gcc for cross compiling (a bunch of times for different libraries), etc. It was all very pleasant.
Could somebody give me a reason why I should?
It runs open-wrt, it does NAT, it does packet switching, it powers on in a few seconds.
What else could your router possibly do for you?
Routers are refrigerators, if they're still keeping things cool, don't touch them.
Its got plenty of bandwidth for most internet delivered video purposes, without hogging your entire house's bandwidth. Theoretically it could pipe full Blu-Ray streams across your home network though YMMV
I've had an old Linksys WRT54G for years running DD-WRT and thats the reason I'm upgrading.
(Be careful, though; some equipment has limited support for dual band operation, which you only learn from hard to find fine print or third party online sources. E.g. Only one band at a time. Or degrading all connections to G if any of them are G. Or effective throttling due to an under-powered processor. As a couple of examples I encountered a year or a bit more ago while helping someone buy one.)
As for me, still on my 54GL -- good enough for my limited needs at home.
Then I installed Tomato on it. It's been six months and I don't think I've even looked at the router. It's fantastic.
Netgear, D-Link, Linksys, Buffalo, pretty much any brand you can think of do not really do the heavy lifting of the design work on anything you're going to find on the shelf at Best Buy. Instead, they take reference designs from chipset vendors like Broadcom, Atheros, or RALink then brand the firmware and put the whole think in whatever plastic package they want.
What really matters when it comes to consumer networking gear is what internal chipset the manufacturer is using on a particular model; this can be tricky because manufacturers have been known to do things like completely change the internal hardware while retaining the same model number. Either way, the chipset is what's going to determine what the unit is capable of, whether it's hackable, and what problems if may have. Whether it says Netgear or Linksys on the box is of relatively little consequence.
(Though I will admit I tend to look at Buffalo gear first when I'm shopping simply because they're pretty good at putting out inexpensive, hackable hardware. As others have noted, their factory firmware on some newer models is actually a branded version of DD-WRT).
No, not really. When's the last time his mother or mother-in-law flashed their router to Tomato or even just updated the stock firmware? I've been running Tomato on a WRT54G for years now, and DD-WRT before then, and I love it, but you can't expect a normal person to have any interest in that. They buy whatever is shiny and/or the Best Buy guy tells them is good.
Finally I did some searching and found that Buffalo makes routers which ship with stock openwrt firmware.
I bought one (it was $70) and it's worked wonderfully. It has only crashed once in the 3 months I've owned it.
I wish I'd kept the original Linksys router I bought 10 years ago and replaced when I upgraded to "G" a few years later. It never crashed.
What I don't understand is that most ADSL-modems include a router? I usually set it up in bridge-mode, like I did with the ancient Zyxel 650.
Funny development: I will now have to replace the modem because it has become the limiting factor: The maximum throughput of the modem is about 60% of what my current ADSL connection could handle.
I don't see a need for all the hedging. Commodity hardware + open source already "won" in various applications over the past couple decades. Here's another.
Sent from my iPad (just kidding)
Personally, I think the future is going to be for the tech savvy to build their own firmware with OpenWRT (http://openwrt.org/), which lets you building from more current linux kernel sources (thus you're more likely to get patches to kernel level security issues), and pick your packages. It currently isn't as smooth of an install as ddwrt, but it's getting there quickly.