Код: Выделить всё
altq on $int_if cbq bandwidth 100Mb queue { inet_in, default_in }
queue inet_in bandwidth 240Kb { user1_in, user2_in }
queue user1_in bandwidth 50% cbq(borrow)
queue user2_in bandwidth 50% cbq(borrow)
queue default_in bandwidth 99% cbq(default)
altq on $ext_if cbq bandwidth 100Mb queue { inet_out, default_out }
queue inet_out bandwidth 400Kb { user1_out, user2_out }
queue user1_out bandwidth 50% cbq(borrow)
queue user2_out bandwidth 50% cbq( borrow)
queue default_out bandwidth 99% cbq(default)Правила распихивания:
Код: Выделить всё
pass in on $int_if from <user1_ips> to !$lan queue user1_out no state
pass in on $int_if from <user2_ips> to !$lan queue user2_out no state
pass out on $int_if from !$lan to <user1_ips> queue user1_in no state
pass out on $int_if from !$lan to <user2_ips> queue user2_in no stateТо есть на скачивание определено по 120 килобит/с, на отдачу по 200
килобит/с
Если один из юзеров отсутствует, то второму весь его канал не отдаётся.
Максимальная скорость для скачивания получается 132 килобита/с, на отдачу
где-то 230 килобит/с.
Почему не весь канал? Что я делаю не так?