
Есть университет, состоит из 4 корпусов, разнесены удаленно.
Исторически сложилось, каждый корпус был обособлен, имел свой выход в интеренет (но на одного провайдера), и у каждого - своя сетка, свой админ, свои правила. В принципе, связи особой между корпусами и не требовалось, все решалось электронной почтой, корпоративным сайтом и фтп. Недавно на ученом совете зачем-то постановили "обьединить локальные сети корпусов", оно-то, конечно, логически правильно, но возникают некоторые сложности.
Технически обьединять будем оптикой (или своя будет, или провайдер предоставлять будет) тут сложностей, кроме денежных, не предвидиться, тем более, кое-какой опыт уже есть (2 корпуса уже оптикой связаны).
Так вот, у меня, в главном корпусе стоит Netware 6.5, 2 сервера. 1й - файлы юзеров, 2й - почта, интернет (Border Manager). Сеть - 192.168.1.0. С одного из корпусов (там своя подсеть - 192.168.2.0) приходит оптика, втыкаеться в мой главный свич (обычный неуправляемый гигабитный DLINK), на одном из серверов (1м, который внутри сети) воткнута 2я сетевка, ей дан адрес - 192.168.2.1, настроена маршрутизация, все замечательно.
Обьединение с остальными корпусами я вижу себе аналогичным образом - оптикой связываю еще 2 подсети (допустим - 192.168.3.0., 192.168.4.0), добавляю соответственно 2 сетевки на сервер, делаю маршрутизация и все ок.
Но, возникает одна проблема (не считая организационных

Обьединив корпуса по описаной выше схеме, я теряю эту возможность, вследствие чего могу получить "забивание" канала нерадивыми пользователями. Конечно, все юзеры подключаемых корпусов будут пущены через BM, но, все равно будут люди, которым я буду вынужден дать много прав на скачивание.
Чем мне и как можно было бы реализовать такую схему - доступ к локальным ресурсам (192.168.1.0/2.0/3.0/4.0) - без оганичений, а вот все, что "идет" наружу, в интеренет - каким-то образом "нарезать" и лимитировать?
Интуитивно понимаю, что светит мне установка что-то типа FreeBSD, но вот как и в какое место такой схемы его втулить, я пока смутно представляю. Или возможны другие варианты и решения? И какие я еще могу получить проблемы при описаной реализации?