Alastair’s Place

Software development, Cocoa, Objective-C, life. Stuff like that.

I Hate Routers

I hate DSL routers. I don’t know why, but router manufacturers seem incapable of designing one that works properly. They’re usually let down by their software, and sometimes they’re also let down by their hardware too.

The most recent routers I’ve used are:

  • Alcatel SpeedTouch 780WL (Be branded)

    This one seems to be generally OK, although the web interface is pretty awful. I think the problem there is that Alcatel can’t make up its mind whether it wants the router to be easy-to-configure or full of features, so the web interface is an uneasy half-way house. The worst problem with it is that it’s badly organised and hard to navigate; there are pages that look just like the settings screens, but where you can’t change anything, and it often takes me a couple of minutes to find the right part of the interface. It seems to be fairly decent from the command line, though the docs for that are somewhat lacking. WLAN works OK on this router, which is a refreshing change.
  • ZyXEL Prestige 662HW

    The main problems with this router aren’t to do with the software, which is OK (not brilliant, but OK). It has a good range of features and a reasonable web interface, which is at least easy to navigate, unlike the Alcatel. No, the main problems are hardware ones. Firstly, this router’s input seems to be too heavily attenuated, as a result of which it has trouble sustaining a DSL connection at high data rates. I’m quite close to the local exchange, so there’s no good excuse for this, especially as other vendors’ products don’t suffer from this problem. Second, the WLAN is unreliable. When I bought this, I was hoping that I could replace an earlier ZyXEL Prestige (a 243, I think) and my Apple AirPort with just the one box. No such luck.
  • Netgear DG834N

    I bought this to replace the ZyXEL when it became apparent that I was going to have regular connectivity problems with the latter. It was easy to set up, with a simple web interface and the DSL connection has been very reliable with this unit. Unfortunately there are some serious deficiencies with the DG634N, which Netgear doesn’t seem to be in a great hurry to address:
    • It has a very small feature set compared to other manufacturers’ routers. On the plus side, that makes it easy to configure for end users.
    • It only supports 802.11n draft 1. Draft 2 has been “forthcoming” for some time now.
    • Its UPnP support is badly broken.1 As a result, it is impossible to use software that requires special support for NAT, unless the authors have taken account of the device’s eccentricities.
    • There is no command line.2
    Oh, and this is another router with unreliable WLAN. Maybe that’s because it’s trying to support 802.11n draft 1, but since I’m using 802.11g devices primarily, that doesn’t seem to be a good excuse. Nor does it matter how I configure the WLAN support. All of this might be OK if, as with other Linux-based routers, the firmware could be replaced with something a bit better. There are a couple of custom firmware packages out there, but because the drivers for the Broadcom chipset that is used by this router aren’t Open Source, they are basically the same firmware with rebuilt applications and/or modified web interface. </ul> Anyway, in a fit of irritation, I bought myself a new Airport Extreme and a Netgear DM111P DSL modem. The Airport in particular was spectacularly easy to set up, though I would have liked to have been able to choose a subnet of 10.32.x.x which is what I had been using previously (10.0.x.x is no good because if I do that then I can’t connect to the VPN between my home and my office). As a result, I now have reliable WLAN (with a better signal than I got from my previous Airport), a reliable DSL connection, and reliable NAT traversal courtesy presumably of NAT-PMP. I can finally screen share between work and home! Yay! OK, so the AirPort Extreme isn’t terribly configurable and doesn’t support UPnP. It does work however, which seems to be something of a unique selling point in the home router market.
    1 It uses the wrong namespace for responses ({urn:upnp-org:serviceId:WANIPConnection} rather than {urn:schemas-upnp-org:service:WANIPConnection}), and unhelpfully returns the wrong error code (402 Invalid Args rather than 713 SpecifiedArrayIndexInvalid) when you pass an out-of-range index to GetGenericPortMappingEntry(), which is irritating because the error is the only way to tell when you’ve finished enumerating mappings. 2 Yes, I know about debug mode and that you can get a Linux prompt, with all that that implies. That’s not the same thing, and as a result of the lack of a command line interface, the features in the web interface are basically all you get (unlike some other manufacturers’ equipment).