Dinoll
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Отписал на форуме http://www.obsd.ru и дублирую сдесь ( если нельзя указывать линки на другие ресурсы прошу простить по первому разу ) Некоторое время назад задумал на шлюзе разделить внутренний и внешний трафик, как я думал тривиальная задача в результате наваял следующий конфиг : ext_if="xl0" int_if="rl0" table <trast> { 192.168.0.111, 192.168.0.50, 192.168.0.93 } set block-policy drop set skip on lo0 set require-order yes set optimization normal altq on $int_if cbq bandwidth 100Mb queue { net_in, lan_in } queue net_in cbq bandwidth 256Kb { d, x, a } queue d cbq ( default, borrow, red ) bandwidth 34% queue x cbq ( borrow, red ) bandwidth 33% queue a cbq ( borrow, red ) bandwidth 33% queue lan_in bandwidth 90Mb cbq ################## NAT ################# nat on $ext_if from <trast> to any -> $ext_if block in block out ############# INTERNAL NET ############# pass in quick on $int_if from <trast> to 192.168.0.112 keep state queue lan_in ############# TRAST NET ############## pass in on $int_if from 192.168.0.111 to { $ext_if, !192.168.0.112 } keep state queue d pass in on $int_if from 192.168.0.50 to { $ext_if, !192.168.0.112 } keep state queue x pass in on $int_if from 192.168.0.93 to { $ext_if, !192.168.0.112 } keep state queue a pass out on $ext_if from $ext_if to any keep state pass out on $int_if from $int_if to any keep state результат приятно поразил за одним исключением, дочерние очереди ( d x a )не заимствовали полосу у родительской ( net_in ) после недели неудачных экспириментов, перечитав ещё раз форум на www.obsd.ru написал конфиг практически 1 в 1 как у уважаемого lector'a ( 2 пост http://www.obsd.ru/cgi-bin/forum.cgi?op=view_thread;board=5;thread=474 ) конфиг с виртуальной машины но различия только в именах ифейсов и айпишках, также перепроверялся и на реальной машине ext_if="pcn1" int_if="pcn0" table <trast> { 192.168.136.1, 192.168.136.50, 192.168.136.93 } set block-policy drop set skip on lo0 set require-order yes set optimization normal altq on $int_if tbrsize 1 cbq bandwidth 100Mb queue { net_in, lan_in } queue net_in bandwidth 256Kb { d, x, a } queue d bandwidth 25% priority 2 cbq(borrow) queue x bandwidth 25% priority 1 cbq(borrow) queue a bandwidth 50% priority 4 cbq(borrow) queue lan_in bandwidth 90Mb cbq(default) ################## NAT ################# nat on $ext_if from <trast> to any -> $ext_if pass in pass out ############# INTERNAL NET ############# pass out quick on $int_if from ($int_if) to <trast> queue lan_in ############# TRAST NET ############## pass out on $int_if from any to 192.168.136.1 queue d pass out on $int_if from any to 192.168.136.50 queue x pass out on $int_if from any to 192.168.136.93 queue a pass out on $ext_if from $ext_if to any keep state pass out on $int_if from $int_if to any keep state результат тотже, незаимствуется полоса Гдето я ошибаюсь, понять где немогу, помогите плз, вера в волшебный бубен практически утеряна PS. OpenBSD 4.0 / i386 | Всего записей: 6 | Зарегистр. 03-06-2006 | Отправлено: 18:37 06-10-2007 | Исправлено: Dinoll, 18:39 06-10-2007 |
|