шейпит в одну сторону

Настройка сетевых служб, маршрутизации, фаерволлов. Проблемы с сетевым оборудованием.
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
zakachkin
проходил мимо
Сообщения: 7
Зарегистрирован: 2010-04-12 8:26:48

шейпит в одну сторону

Непрочитанное сообщение zakachkin » 2011-02-13 14:29:52

Имеются правила

Код: Выделить всё

bsd# ipfw list
00006 nat 123 ip from 10.10.0.0/16 to any
00007 nat 123 ip from any to 192.168.0.4
02030 allow ip from table(10,3) to table(2,1) out xmit sis0
02031 allow ip from table(2,1) to table(10,3) in recv sis0
02040 allow ip from table(10,4) to table(2,1) out xmit sis0
02041 allow ip from table(2,1) to table(10,4) in recv sis0
02060 allow ip from table(10,6) to table(2,1) out xmit sis0
02061 allow ip from table(2,1) to table(10,6) in recv sis0
02070 allow ip from table(10,7) to table(2,1) out xmit sis0
02071 allow ip from table(2,1) to table(10,7) in recv sis0
02080 allow ip from table(10,8) to table(2,1) out xmit sis0
02081 allow ip from table(2,1) to table(10,8) in recv sis0
02090 allow ip from table(10,9) to table(2,1) out xmit sis0
02091 allow ip from table(2,1) to table(10,9) in recv sis0
02100 allow ip from table(10,10) to table(2,1) out xmit sis0
02101 allow ip from table(2,1) to table(10,10) in recv sis0
02110 allow ip from table(10,11) to table(2,1) out xmit sis0
02111 allow ip from table(2,1) to table(10,11) in recv sis0
02120 allow ip from table(10,12) to table(2,1) out xmit sis0
02121 allow ip from table(2,1) to table(10,12) in recv sis0
03030 pipe 3030 ip from table(10,3) to any out xmit sis0
03031 pipe 3031 ip from any to table(10,3) in recv sis0
03040 pipe 3040 ip from table(10,4) to any out xmit sis0
03041 pipe 3041 ip from any to table(10,4) in recv sis0
03050 allow ip from table(10,5) to any out xmit sis0
03051 allow ip from any to table(10,5) in recv sis0
03060 allow ip from table(10,6) to any out xmit sis0
03061 allow ip from any to table(10,6) in recv sis0
03070 allow ip from table(10,7) to any out xmit sis0
03071 allow ip from any to table(10,7) in recv sis0
03080 allow ip from table(10,8) to any out xmit sis0
03081 allow ip from any to table(10,8) in recv sis0
03090 allow ip from table(10,9) to any out xmit sis0
03091 allow ip from any to table(10,9) in recv sis0
03100 allow ip from table(10,10) to any out xmit sis0
03101 allow ip from any to table(10,10) in recv sis0
03110 allow ip from table(10,11) to any out xmit sis0
03111 allow ip from any to table(10,11) in recv sis0
03120 pipe 3120 ip from table(10,12) to any out xmit sis0
03121 pipe 3121 ip from any to table(10,12) in recv sis0
03140 pipe 3140 ip from table(10,14) to any out xmit sis0
03141 pipe 3141 ip from any to table(10,14) in recv sis0
03150 pipe 3150 ip from table(10,15) to any out xmit sis0
03151 pipe 3151 ip from any to table(10,15) in recv sis0
03160 pipe 3160 ip from table(10,16) to any out xmit sis0
03161 pipe 3161 ip from any to table(10,16) in recv sis0
03170 allow ip from table(10,17) to any out xmit sis0
03171 allow ip from any to table(10,17) in recv sis0
08000 pipe 8000 ip from table(10,12500) to any out xmit sis0
08001 pipe 8001 ip from any to table(10,12500) in recv sis0
08002 pipe 8002 ip from table(10,14500) to any out xmit sis0
08003 pipe 8003 ip from any to table(10,14500) in recv sis0
08004 pipe 8004 ip from table(10,17500) to any out xmit sis0
08005 pipe 8005 ip from any to table(10,17500) in recv sis0
08006 pipe 8006 ip from table(10,10500) to any out xmit sis0
08007 pipe 8007 ip from any to table(10,10500) in recv sis0
65535 allow ip from any to any
В таком положении у абонента шейпится только входящий трафик
если правила ната перевести в конец то шейпиться только исходящий...
как сделать чтоб шейпилось в обе стороны

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
vadim64
майор
Сообщения: 2098
Зарегистрирован: 2009-09-17 15:15:26
Откуда: Засратовец

Re: шейпит в одну сторону

Непрочитанное сообщение vadim64 » 2011-02-14 10:00:05

лень читать ваши правила, в любом случае перечитайте http://www.lissyara.su/articles/freebsd ... /ipfw_nat/
Люди не делятся на национальности, партии, фракции и религии. Люди делятся на умных и дураков, а вот дураки делятся на национальности, партии, фракции и религии.

Аватара пользователя
FreeBSP
майор
Сообщения: 2020
Зарегистрирован: 2009-05-24 20:20:19
Откуда: Москва

Re: шейпит в одну сторону

Непрочитанное сообщение FreeBSP » 2011-02-14 10:31:19

идея такая

Код: Выделить всё

nat  1 all from $extLan to any      in  recv $extIf
pipe 1 all from $extLan to $intLan  out recv $extIf xmit $intIf
pipe 2 all from $intLan to $extLan  in  recv $intIf
nat  1 all from $intLan to $extLan  out recv $intIf xmit $extIf
Человек начинает получать первые наслаждения от знакомства с unix системами. Ему нужно помочь - дальше он сможет получать наслаждение самостоятельно ©
Ламер — не желающий самостоятельно разбираться. Не путать с новичком: ламер опасен и знает это!

Аватара пользователя
zakachkin
проходил мимо
Сообщения: 7
Зарегистрирован: 2010-04-12 8:26:48

Re: шейпит в одну сторону

Непрочитанное сообщение zakachkin » 2011-02-14 21:23:16

FreeBSP писал(а):идея такая

Код: Выделить всё

nat  1 all from $extLan to any      in  recv $extIf
pipe 1 all from $extLan to $intLan  out recv $extIf xmit $intIf
pipe 2 all from $intLan to $extLan  in  recv $intIf
nat  1 all from $intLan to $extLan  out recv $intIf xmit $extIf
О, понял соль-) спасибо
Пайпы должны быть в промежности ната-)

rmn
старшина
Сообщения: 427
Зарегистрирован: 2008-10-03 18:52:02

Re: шейпит в одну сторону

Непрочитанное сообщение rmn » 2011-02-14 22:09:55

FreeBSP писал(а): идея такая

Код: Выделить всё

nat  1 all from $extLan to any      in  recv $extIf
pipe 1 all from $extLan to $intLan  out recv $extIf xmit $intIf
pipe 2 all from $intLan to $extLan  in  recv $intIf
nat  1 all from $intLan to $extLan  out recv $intIf xmit $extIf
эмм... идея неправильная (точнее реализация :)).

пакет, пришедший с внешки будет from any to $extIP, соотвественно, первое правило:

Код: Выделить всё

nat 1 all from any to $extIP in recv $extIf
после того, как входящий пакет пройдет через нат, он станет from any to $intLan:

Код: Выделить всё

pipe 1 all from any to $intLan in recv $extIf
дальше:

Код: Выделить всё

pipe 2 all from $intLan to any in recv $intIf
nat  1 all from $intLan to any out xmit $extIf

rmn
старшина
Сообщения: 427
Зарегистрирован: 2008-10-03 18:52:02

Re: шейпит в одну сторону

Непрочитанное сообщение rmn » 2011-02-14 22:19:31

2zakachkin

у тебя все правила указаны для одного интерфейса (внешнего?) sis0

если one_pass == 1, то действия nat и pipe фаерволла действуют как accept, т.е. после них пакет уходит из системы. Соответственно, если ставим первым nat, то пакет не попадет в следующее правило pipe и наоборот.
Или ставь one_pass = 0 или перепеши правила, к примеру, так: через шейпер пускаются пакеты, когда проходят через внутренний интерфейс; через nat - когда через внешний.

Аватара пользователя
zakachkin
проходил мимо
Сообщения: 7
Зарегистрирован: 2010-04-12 8:26:48

Re: шейпит в одну сторону

Непрочитанное сообщение zakachkin » 2011-02-14 22:24:50

Спасибо я уже всё решил-)