Друзья, помогите пожалуйста советом и примером. Ситуация у меня непонятная для реализации.
Есть шлюз, к которому подключен гигабитный свитч.
В этот же свитч входят кабеля с офисов, меж которыми он роутер и для которых центральный файловый сервер.
А: 100Mbit, подсетка 192.168.0.0/24
B: 100Mbit, подсетка 192.168.1.0/24
C: 1Gbit, подсетка 192.168.1.0/24В инет они выходят с этого шлюза на 100Мбитах.
Как мне выделить для каждого офиса свою полосу пропускания + сделать приоретизацию к сервису астериску работающему на этом же сервере, чтобы внутрисетевой трафик к астериску был приоритетней чем допустим к самбе. Т.е. чтобы если офисные линки серьёзно загружены самбовым трафиком с этого сервака, чтобы не страдал voip трафик астерисковый между телефонами. А в моменты когда пользователи активно линки офисные нагружают, икать начинают телефонные звонки.
У меня такое решение вариант, но хреновое:
ipfw+pipe+queue:
########### Pipes configure ##############
# A
${FW} pipe 1 config bw 95Mbits queue 95
${FW} pipe 2 config bw 95Mbits queue 95
# B
${FW} pipe 10 config bw 95Mbits queue 95
${FW} pipe 11 config bw 95Mbits queue 95
# C
${FW} pipe 20 config bw 800Mbits queue 95
${FW} pipe 21 config bw 800Mbits queue 95
############ queues #####################
#
# IN A
${FW} queue 1 config pipe 1 weight 20
${FW} queue 2 config pipe 1 weight 100
# OUT A
${FW} queue 3 config pipe 2 weight 20
${FW} queue 4 config pipe 2 weight 100
# IN B
${FW} queue 10 config pipe 10 weight 20
${FW} queue 11 config pipe 10 weight 100
# OUT B
${FW} queue 12 config pipe 11 weight 20
${FW} queue 13 config pipe 11 weight 100
# IN C
${FW} queue 20 config pipe 20 weight 20
${FW} queue 21 config pipe 20 weight 100
# OUT C
${FW} queue 22 config pipe 21 weight 20
${FW} queue 23 config pipe 21 weight 100
# Incoming traffic
# A
# ${FW} add 10 queue 1 all from 192.168.0.0/24 to not 10.1.1.1/32 in via ${intIF}
# ${FW} add 10 queue 2 all from 192.168.0.0/24 to 10.1.1.1/32 in via ${intIF}
# B
# ${FW} add 10 queue 10 all from 192.168.1.0/24 to not 10.1.1.1/32 in via ${intIF}
# ${FW} add 10 queue 11 all from 192.168.1.0/24 to 10.1.1.1/32 in via ${intIF}
# C
# ${FW} add 10 queue 20 all from 192.168.2.0/24 to not 10.1.1.1/32 in via ${intIF}
# ${FW} add 10 queue 21 all from 192.168.2.0/24 to 10.1.1.1/32 in via ${intIF}
# Outgoing traffic
# A
${FW} add 11 queue 3 all from not 10.1.1.1/32 to 192.168.0.0/24 out via ${intIF}
${FW} add 11 queue 4 all from 10.1.1.1/32 to 192.168.0.0/24 out via ${intIF}
# B
${FW} add 11 queue 12 all from not 10.1.1.1/32 to 192.168.1.0/24 out via ${intIF}
${FW} add 11 queue 13 all from 10.1.1.1/32 to 192.168.1.0/24 out via ${intIF}
# C
${FW} add 11 queue 22 all from not 10.1.1.1/32 to 192.168.2.0/24 out via ${intIF}
${FW} add 11 queue 23 all from 10.1.1.1/32 to 192.168.2.0/24 out via ${intIF}
А тут ещё по хорошему и в инет поток надо как-то этими очередями разрулить. Я полностью запутался, помогите пожалуйста!
Да, 10.1.1.1 - это астериск в джейле на этом серваке. Я наверное навертел тупейшую схему, ну простите и помогите :)
При таком варианте, ни у кого вообще нет интернета.