After last week’s rewiring and laying of cables, I settled down Monday evening to install my latest gizmo, a FRITZ!Box Fon WLAN 7170 from the German manufacturer, AVM.
Now, FRITZ!Box may just possibly be the worst-name ever devised for a product, but the product itself is as sound as a pound.
Basically, the 7170 is a combined DSL modem, IP router and PBX. The DSL modem/IP router combo is a common one nowadays, and more and more are appearing with RJ-11 sockets for attaching analogue telephone equipment, which can then be used for Internet telephony, a.k.a. VoIP.
Where the 7170 leaves most of its peers behind is in the inclusion of the PBX. Not only can analogue equipment be connected, but on the Annex B model, there’s also an S0 bus for attaching ISDN equipment. The 7170 is then connected to your ISDN NT1. (The Annex A model is for attaching to an analogue line.)
But that’s only where the fun begins, because you can also define up to 10 VoIP carriers and then put together a comprehensive dialing plan.
The telephone hardware topography is now as follows. The ISDN line enters the building in the meter cupboard and the signal is split for DSL and telephony. The alarm is connected directly to the ISDN line at this point. Our legacy NEC ISDN PBX is located here, too.
A cable carries the NEC PBX to the patch panel in the cupboard under the stairs, where most of our server and network equipment is located. There, the NEC PBX is connected to the S0 bus of the FRITZ!Box and the analogue telephone is plugged into the appropriate socket. The FRITZ!Box is then patched back to the meter cupboard, where the DSL and telephony join the ISDN NT1 box.
Our fax machine is still attached to the NEC PBX, as I couldn’t find a way to make it call out using the correct number when attached to the FRITZ!Box. It will answer the right number, but it calls out using the main ISDN number. No matter, having it attached to the NEC means that we keep an analogue socket free for future use on the FRITZ!Box.
Next comes the dialling plan and that’s where the magic really begins.
As we all know, different carriers have different tariffs and some are cheaper than others in one area, whilst being more expensive in a second. The situation is further complicated by the fact that some carriers cannot be used to call certain numbers at all.
The dialling plan allows you to determine how your telephony is routed. You do this by categorising numbers based on their initial digits.
Our dialling plan ends up looking like this:
Numbers beginning | Purpose | Routed via |
---|---|---|
112 | emergency calls | fixed line |
090 | commercial services (0900, 0906 & 0909) | fixed line |
087 | essentially XS4ALL subscribers | XS4ALL VoIP |
0800 | free services | fixed line |
0 | all other traffic | VoipCheap VoIP |
Here, we see that emergency calls and information services are routed via the fixed line. In the case of emergency calls, that’s for the sake of reliability. In the latter case, it’s because some (but not all) of these numbers can’t be dialled usng VoIP.
Other XS4ALL subscribers are contacted over XS4ALL’s VoIP network, because such calls are free and this is the shortest path.
All other calls are routed via VoipCheap, because this carrier has the cheapest rates available, as far as I can ascertain.
VoipCheap works like this. You deposit €10 of credit, which allows you to make calls on their network. However, it also entitles you to 90 days of 300 minutes per week of free calls to large parts of the world. This basically includes Europe, North America and New Zealand, which are the places Sarah and I are most likely to call.
You may have noticed that our dialling plan will default to routing calls to Dutch mobile phones also through VoipCheap. That’s because VoipCheap offers such calls at the rate of 10 cents per minute, which is cheaper even than when I call a mobile number from my own mobile phone. It’s amazing to me that a foreign carrier can offer cheaper calls to Dutch mobile numbers than any Dutch carrier (including all of the mobile operators), but there you go.
Once your 90 free days are up or you go over your 300 minutes per week of free calls, calls are charged at VoipCheap’s normal rate, which is basically 1 cent per minute to the destinations I listed. That’s still cheaper than any of the alternatives, before you even consider the 90 days of free calls per €10 of credit.
Yes, it’s actually cheaper for me to call another number in Amsterdam via a foreign carrier than it is to use a Dutch carrier, unless I sign up for a flat-fee subscription with the latter, but those are priced in such a way that it’s cheaper for us to just pay as we go. We simply don’t make enough calls for it to be economical.
The end result is that we can now pick up any phone in the house and make a call without having to first think about who we’re calling. That we happen to pick up an ISDN or an analogue handset says nothing about how the call we make will be routed. The ISDN handset could have its call sent out over the Internet. The analogue handset, which we had previously attached to our SpeedTouch 780 DSL modem and could therefore use only for VoIP calls, could now just as easily send a call over ISDN.
The one area where the dialling plan lacks sophistication is that you can’t configure time-based rules. Our ISDN Bellvrij Weekend subscription, which we need for the alarm system, gives us free calls to any destination in the Netherlands at the weekend.
Ideally, we would route any domestic weekend calls over ISDN instead of through VoipCheap, since a fixed line is always more reliable than VoIP. Additionally, we would preserve some of our 300 minutes per week of free calls or, if we had already used them up or were past our 90 days of free calls, still be able to make free calls.
If we really cared, we could still elect to make a fixed line call at the weekend for a number that wouldn’t ordinarily be routed that way by prefixing the number with *111#. That allows you to manually select the fixed line for an outgoing call. Similarly, you can also manually select a particular VoIP carrier.
The FRITZ!Box has a lot of useful (prefix) codes like this. For example, by picking up a handset and typing in a code, I can turn off or on the radio transmitter, thereby disabling or enabling the WLAN facility.
Using another such code, I can start or stop the FRITZ!Box’s telnet daemon that allows me command-line access.
What a cool toy the FRITZ!Box is, in spite of its appalling name. There are a few disadvantages, however. Given the wealth of features and settings on the box, it’s rather surprising to find that some things that I regard as basic are missing.
For example, you can’t configure static DHCP addresses. Any hosts that you require to always have the same IP address must be manually configured at source, outside the defined DHCP range.
Staying with DHCP, it’s not possible to pass a list of extra or alternative DNS servers to clients. The FRITZ!Box always configures hosts with itself as the DNS server. This proved problematic yesterday when I somehow ended up with a negative cache entry (or something with the same effect) for gmail.com, so that Sarah spent the whole day unable to read her e-mail until I was able to troubleshoot the issue.
Another minor issue is that once a host has obtained an address over DHCP, it remains in the list of known hosts long after its lease has expired. The only way to flush this table is apparently to save the FRITZ!Box’s settings to a file and reload them. Why not make them manually deletable?
As I mentioned earlier, another issue is that I can’t find a way to make an analogue device make an ISDN call using an MSN other than the main number. Perhaps it can be done, but if so, it’s not obvious how.
Finally, WLAN range seems to be a little less than with the SpeedTouch 780, but it’s not a big difference.
Small niggles aside, the FRITZ!Box is great. For the money (about €160), it’s hard to imagine a more intelligent and flexible device. To get more flexibility than this, you’d be looking at expensive, rack-mountable devices for the business market. In particular, the ability to connect to an ISDN fixed line and to allow the definition of up to 10 VoIP carriers are, for me, its main selling points.
Telnetting in, it was nice — and not altogether surprising — to discover that the FRITZ!Box is, in fact, just another Linux box, running a 2.6.13 kernel on a MIPS processor. It’s always nice to support a company using Linux, as long as the product is actually any good, which, in this case, it clearly is.
The FRITZ!Box has a million features. Here, I’ve touched only on those of most importance to me, namely the ones that allow me to call transparently and cheaply.