- NAT.
- Firewalling.
- Port redirection.
- A dynamic DHCP server.
- Ability to configure DHCP static entries (used for servers within the network).
- A local DNS server to resolve names for local machines.
However, due to lazyness and fear of breaking it, I didn't flash the router with these non-official firmwares until a couple of days ago. I finally decided to give DD-WRT a try given that it includes the same (but improved) nice web interface that came with the official software. I certainly did not want to configure it through the command line.
For some reason the first flashing attempt failed in a strange way because I could access the router through telnet but not through the web. Trying to fix that through the command line resulted in much worse results rendering the router useless: it wouldn't boot at all because the firmware was corrupt. Panic!
Fortunately, after playing a lot with TFTP I finally achieved to flash it again with the correct firmware. After that, I was greeted by the web interface waiting for me to configure everything again. At first everything looked as before (except for the visual theme change) with some minor additions, but then I discovered the "Services" tab which accomplished my initial goal: set up static DHCP entries for hosts and configure local DNS names. Simply wonderful.
So now that the router provides DHCP and DNS as I needed, the only remaining tasks that the server does are file sharing, Monotone database serving (for the local network only), P2P management and daily NetBSD rebuilds. Note that in the past it also ran Apache, Courier IMAP, Spamassassin, FTP and probably something else. I'm now thinking how to best get rid of them all and shut down that annoying machine that continuously pollutes the living room with noise and wastes power unnecessarily.