I just bought a new router, a Linksys WRT54GS, solely because the thing is so hackable. Linksys based their firmware off Linux and politely followed the GPL, making the firmware source available. A bunch of smart hackers then made custom firmware that lets you log into the router, tweak wireless power settings, install network tools, etc. You basically get a little solid state Linux box with lots of network ports for $80. Great deal, and smart of Linksys.
The tweaked firmware that got things going is sveasoft. But those guys are assholes, trying to sell the GPL code for money. So I installed the brand new HyperWRT 2.0. It's a very lean tweak of the core firmware that gives you more control over the radio, more routing and QoS options, and a shell with a basic BusyBox setup. You can install batbox on top of HyperWRT for more features.
I love tinkering. I'm the kind of guy who spends half a day tweaking his video card settings for max framerate, then resets it to factory default because overclocking is stupid. I probably won't do much with my custom firmware except boost the radio and maybe install some monitoring on the router. But it's important to me to be able to tweak things.
Update: the WRT54GS v1.1 may corrupt packets.