для маршрутизаторов и шлюзов удобнее всего использовать линукс. в ядре 2.6 уже очень хорошо реализован механизм шейпинга траффика.
фри больше подходят для серваков из-за особенностей фаервола.
у нас локался на 15 комов. стоит один срвек он же и шлюзх он же и файловый сервер. повесили на него poptop (PPTP VPN) и живём

правдо прокси не юзайем, но это можно сделать в любой момент даже юзерам настройки не надо будет ставить.