Yesterday I bought an Apple Airport Extreme base station (read: a wireless router) to replace my current router, which has a failing WiFi card in it. I figured it'd be nice having a small, neat package that does everything my current Linux router box does. The first minor annoyance was that it only allows you to maintain a class C (/24 - 192.168.1.x) network. I like to use class B (/16 - 192.168.x.y) to partition all of the networked devices in my house nicely. After devising a new class C network, I then found out it wasn't possible to assign names to systems so that I could address systems by name rather than IP. To get around this I had to add a new zone to my BIND server to and make all computers search this "local" zone when resolving names, which didn't work very well. Further to this, you can reserve IPs on the DHCP table for MAC addresses within the Airport Extreme setup program, but when configuring NAT forwarding you have to use the IP address rather than the name which means despite naming machines, you still need to recall their IP addresses in order to setup NAT.
To top everything off, the Airport Extreme does not allow you to forward port 53 via NAT (thanks to a bug in the software, which Apple is aware of but has not yet fixed). This makes it totally impossible to host DNS behind the Airport Extreme! I've had to put my old router above it in the network and use the Airport Extreme as a wireless bridge only. I would probably have been better off just buying a new WiFi card!