I needed to share a spectacularly slow DSL line with my college roommates. Soultion? Cobble together a router out of a cheap Pentium box, a PCI DSL modem, a 10mbit ISA nic, and Debian. Oh, and a couple of days of tinkering.
Ah ipchains. Those were the days.