Ну с двумя железками на концах - это понятно. А вот как бы такое на Win2003 замутить. Если честно, не понимаю причем здесь изобретение велосипеда. Может просто туплю.
Провайдер, как выяснилось, организовал все как раз на железках...
А насчет реализации на Линухе вот ссылка:
http://www.opennet.ru/base/net/remote_bridging.txt.html