I've heard the question asked a lot in windows/networking forums, for an internet sharing application under windows to do banddith throttling for certain clients, the only one I've seen is Sygate's ...
You're poking the bottom end of the barrel there, hardware wise. For a prepackaged distro which does all that you need (except root DNS. It does DNS caching though) is Astaro Linux. It has a nice web ...