Recently I've bought an Asus WL500GP router. Just very quickly the list of it's features:
[*]
there are custom linux based firmares available for it
[*]
has 2 usb ports (supports USB hub, external hard drives, web cameras, card readers, usb sound cards)
[*]
high quality design ;)

(i've opened my router and added a small 4GByte microdrive so it has a permanent harddisk attached. WARNING: this voids its warranty !!!)
It has a really wide package support, and can be used as a real NAS with multiple harddisks.
Anyways - stay tuned: I'm going to publish a few tutorials on how to do stuff with the router ;)