- ipfw dummnet, simba, 21:54 , 09-Июн-04 (1)
кто нить могёт рабочий конфиг дать ?
- ipfw dummnet, pev2000, 00:25 , 10-Июн-04 (2)
>кто нить могёт рабочий конфиг дать ? ########################################################################## fwcmd="/sbin/ipfw -q" ${fwcmd} -f flush local="192.168.0.0/16" opers="192.168.1.1/28" cafe="192.168.1.16/28" #Создание шлюза для всех =) ${fwcmd} add 98 divert natd ip from any to any in via ed0 ${fwcmd} add 99 divert natd ip from any to any out via ed0 ## а вот тут мы зло обрежем скорость прокачки с порта 8080 прокси сервера # ${fwcmd} add 103 pipe 103 tcp from me 8080 to ${opers} via fxp0 ${fwcmd} pipe 103 config bw ${oper_speed} # ${fwcmd} add 104 pipe 104 tcp from me 8080 to ${cafe} via fxp0 ${fwcmd} pipe 104 config bw ${cafe_speed} ########################################################################## P.S. С тебя пива!
- ipfw dummnet, simba, 18:36 , 10-Июн-04 (3)
>>кто нить могёт рабочий конфиг дать ? > >########################################################################## > >fwcmd="/sbin/ipfw -q" >${fwcmd} -f flush > >local="192.168.0.0/16" >opers="192.168.1.1/28" >cafe="192.168.1.16/28" > >#Создание шлюза для всех =) >${fwcmd} add 98 divert natd ip from any to any in via >ed0 >${fwcmd} add 99 divert natd ip from any to any out via >ed0 > >## а вот тут мы зло обрежем скорость прокачки с порта 8080 >прокси сервера ># >${fwcmd} add 103 pipe 103 tcp from me 8080 to ${opers} via >fxp0 >${fwcmd} pipe 103 config bw ${oper_speed} ># >${fwcmd} add 104 pipe 104 tcp from me 8080 to ${cafe} via >fxp0 >${fwcmd} pipe 104 config bw ${cafe_speed} >########################################################################## > >P.S. С тебя пива! еще маленький вопрос всё таки до или после диверта. ставлю после у меня не работает
- ipfw dummnet, pev2000, 20:27 , 10-Июн-04 (4)
>>${fwcmd} add 103 pipe 103 tcp from me 8080 to ${opers} via >>fxp0 >>${fwcmd} pipe 103 config bw ${oper_speed} >># >>${fwcmd} add 104 pipe 104 tcp from me 8080 to ${cafe} via >>fxp0 >>${fwcmd} pipe 104 config bw ${cafe_speed} >>########################################################################## >> >>P.S. С тебя пива! >еще маленький вопрос всё таки до или после диверта. >ставлю после у меня не работает гы... так прям и поставил? ;-)
совсем головой не хочешь думать!!! не добавил я эти строки: cafe_speed="30000bit/s" oper_speed="42000bit/s" а если переменая скорости = 0 скорость не обрезается
- ipfw dummnet, simba, 08:46 , 11-Июн-04 (5)
>>>${fwcmd} add 103 pipe 103 tcp from me 8080 to ${opers} via >>>fxp0 >>>${fwcmd} pipe 103 config bw ${oper_speed} >>># >>>${fwcmd} add 104 pipe 104 tcp from me 8080 to ${cafe} via >>>fxp0 >>>${fwcmd} pipe 104 config bw ${cafe_speed} >>>########################################################################## >>> >>>P.S. С тебя пива! >>еще маленький вопрос всё таки до или после диверта. >>ставлю после у меня не работает > > >гы... так прям и поставил? ;-) > >совсем головой не хочешь думать!!! >не добавил я эти строки: > >cafe_speed="30000bit/s" >oper_speed="42000bit/s" > >а если переменая скорости = 0 скорость не обрезается :lol: ясный пень ,токо мне надо круче выпендриться делю всё полосу на всех . поэтому 0. делаю очереди .с определённык айпишников weight 80 у других другой (30), если ставить до диверта то работают но со стороны пользователей не заметно. если после диверта то не работают вот конфиг rl0 inside interface rl0 outside ${fwcmd} pipe 1 config 0 ${fwcmd} queue 1 config pipe 1 weight 10 ${fwcmd} queue 2 config pipe 1 weight 90 ${fwcmd} queue 3 config pipe 1 weight 20 ${fwcmd} add 100 queue 1 ip from 10.10.2.16/28 to 10.10.2.1 via rl0 ${fwcmd} add 200 queue 1 ip from 10.10.2.1 to 10.10.2.16/28 via rl0 ${fwcmd} add 300 queue 1 ip from 10.10.2.1 to 10.10.2.32/28 via rl0 ${fwcmd} add 400 queue 1 ip from 10.10.2.32/28 to 10.10.2.1 via rl0 ${fwcmd} add 500 queue 1 ip from 10.10.2.48/28 to 10.10.2.1 via rl0 ${fwcmd} add 600 queue 1 ip from 10.10.2.1 to 10.10.2.48/28 via rl0 ${fwcmd} add 700 queue 1 ip from 10.10.2.64/26 to 10.10.2.1 via rl0 ${fwcmd} add 800 queue 1 ip from 10.10.2.1 to 10.10.2.64/26 via rl0${fwcmd} add 900 queue 1 ip from 10.10.2.128/25 to 10.10.2.1 via rl0 ${fwcmd} add 1000 queue 1 ip from 10.10.2.1 to 10.10.2.128/25 via rl0 ${fwcmd} add 1100 queue 2 ip from 10.10.2.0/28 to 10.10.2.1 via rl0 ${fwcmd} add 1200 queue 2 ip from 10.10.2.1 to 10.10.2.0/28 via rl0 ${fwcmd} add 1300 queue 3 tcp from 10.10.2.0/24 to any pop3 via rl0 ${fwcmd} add 1400 queuq 3 tcp from 10.10.2.0/24 to any stmp via rl0 ${fwcmd} add 1500 queue 3 tcp from any to 10.10.2.0/24 pop3 via rl0 ${fwcmd} add 1600 queue 3 tcp from any to 10.10.2.0/24 smtp via rl0 ${fwcmd} add 1700 allow all from any to any via gif0 ${fwcmd} add 1800 allow udp from a.b.c.d to q.w.e.r isakmp ${fwcmd} add 1900 allow udp from q.w.e.r to a.b.c.d isakmp ${fwcmd} add 2000 allow esp from q.w.e.r to a.b.c.d ${fwcmd} add 2100 allow esp from a.b.c.d to q.w.e.r ${fwcmd} add 2200 allow ipencap from q.w.e.r to a.b.c.d ${fwcmd} add 2300 allow ipencap from a.b.c.d to q.w.e.r ${fwcmd} add allow log logamount 100 tcp from 10.10.2.0/24 to 10.10.2.1 ${fwcmd} add allow log logamount 100 tcp from 10.10.2.1 to 10.10.2.0/24 case ${natd_enable} in [Yy][Ee][Ss]) if [ -n "${natd_interface}" ]; then ${fwcmd} add divert natd all from any to any via ${natd_interface} fi ;; esac ..... зы: думать пытаюс. просто не видел статьи где бы правильно описывалось очереёдность строк в ipfw
- ipfw dummnet, A Clockwork Orange, 10:23 , 11-Июн-04 (6)
$fwcmd add prob 0.90 pipe 1 tcp from any 80,443 to 192.168.0.1/24 $fwcmd pipe 1 config bw 9200bit/s mask dst-ip 0x00000000Вопрос. to 192.168.0.1/24 тут указвается вроде как не сеть а хост, везде так.. Разъясните этот момент пожалуйста
- ipfw dummnet, simba, 10:36 , 11-Июн-04 (7)
>$fwcmd add prob 0.90 pipe 1 tcp from any 80,443 to 192.168.0.1/24 > >$fwcmd pipe 1 config bw 9200bit/s mask dst-ip 0x00000000 > >Вопрос. > >to 192.168.0.1/24 > >тут указвается вроде как не сеть а хост, везде так.. Разъясните этот >момент пожалуйста 192.168.0.1/24 - это сеть :) /24 это побитовая маска http://home.mark-itt.ru/~sen/cgi-bin/ipcalc.cgi?host=192.168... изучай^^^^^
- ipfw dummnet, A Clockwork Orange, 11:27 , 11-Июн-04 (8)
Ну и покажи хоть один хост в этой сети
- ipfw dummnet, pev2000, 12:33 , 11-Июн-04 (9)
>Ну и покажи хоть один хост в этой сети если ты имел честь заглянуть по приведеной ссылке - http://home.mark-itt.ru/~sen/cgi-bin/ipcalc.cgi?host=192.168... "сеть" 192.168.0.1/24 - есть сеть 192.168.0.0/24, а вообще если поэксперементировать на продакшине :-D то можно понять что есть "сеть" 192.168.0.254/24, где: первый хост - 192.168.0.1 последний - 192.168.0.254 но если уж придераться то по правилам описывать нужно как 192.168.0.0/24, или 192.168.1.0/24, или 192.168.2.0/24, продолжать? ;-) что придераешься... работает и хорошо... ну и что что не по стандартам... они их не читали... Удачи в эксперементах!
- ipfw dummnet, A Clockwork Orange, 15:45 , 11-Июн-04 (11)
А вот тебе статься http://ipfw.ism.kiev.ua/nipfw.html /sbin/ipfw pipe 1 config bw 1000Kbit/s /sbin/ipfw queue 1 config pipe 1 weight 50 mask dst-ip 0x00000000 /sbin/ipfw queue 2 config pipe 2 weight 75 mask dst-ip 0x00000000 /sbin/ipfw add queue 1 ip from any to 192.168.0.1/25 /sbin/ipfw add queue 2 ip from any to 192.168.0.128/25
даст некоторый проиоритет в использовании канала пользователям с адресами, большими 192.168.0.128. Это неплохой инструмент для VIP-обслуживания некоторых абонентов сети без "глобального" ущемления прав рядовых пользователей: если никому из VIP-группы в данный момент канал не нужен, то обычные пользователи делят между собой пропускную способность поровну, но если VIP-абоненту понадобились услуги - простые пользователи автоматически подвигаются ...(процент за использование идеи можно присылать мне - о способе передачи договоримся :) ладно, шучу - пользуйтесь за так) Аналогичным образом можно, например, дать приоритет использования канала любителям поиграть через Интернет (отправив через привелегированную очередь пакеты с известных игровых серверов) за счет "качальщиков". /sbin/ipfw pipe 1 config bw 1000Kbit/s /sbin/ipfw queue 1 config pipe 1 weight 50 mask dst-ip 0x00000000 /sbin/ipfw add queue 1 ip from any to 192.168.0.1/24 справедливо разделит пропускную способность в 1 мегабит между всеми пользователями сети, т.к. очереди равноприоритетны (пакеты будут выходить из пользовательских очередей "по очереди") Что Вы на это скажете по поводу этого?
- ipfw dummnet, pev2000, 12:52 , 11-Июн-04 (10)
>Подскажите правила для pipe должны идти до divert или после ? У меня все правила стоят и работают после диверта, единственое что стоит до диверта это count с интерфейсов
- ipfw dummnet, simba, 16:54 , 11-Июн-04 (12)
>>Подскажите правила для pipe должны идти до divert или после ? > >У меня все правила стоят и работают после диверта, единственое что стоит >до диверта это count с интерфейсов получается , если ты до диверта пакеты никакие не режишь,а сразу всё впускаешь или выпускаешь из своей сети. помоему это не совсем правильно - ipfw dummnet, khan, 17:34 , 11-Июн-04 (13)
>>Подскажите правила для pipe должны идти до divert или после ? > >У меня все правила стоят и работают после диверта, единственое что стоит >до диверта это count с интерфейсов Ну вот собственно в мане все написано просто и доходчиво. Для каждого пакета идет в фаерволе перебор правил до совпадения, и если оно произошло, пакет обрабатывается и дальнейший поиск прекращается. Это не касается ipfw count, после совпадения с этим правилом перебор продолжается, и зависит от переменной net.inet.ip.fw.one_pass. 00010 pipe 1 ip from any to any via rl0 01061 count ip from 192.168.100.106 to any via ng30 01062 count ip from any to 192.168.100.106 via ng30 01071 pipe 2 ip from any to 192.168.100.105 08000 divert 8668 ip from 192.168.100.0/24 to any out xmit fxp0 09000 divert 8668 ip from any to 193.9.165.10 09010 pipe 3 ip from 192.168.100.0/24 to any 09010 pipe 4 ip from any to 193.9.165.10 50000 allow ip from any to any 65535 deny ip from any to any Итак В пайп 1 попадают все пакеты, проходящие чарез rl0 В каунт все что идет на/с 192.168.100.106 В пайп 2 все на 192.168.100.105 В НАТ идет все сеть 192.168.100.105/24 кроме 192.168.100.106 потому как пакеты от него до этого правила не доходят, они уже обработаны. В пайп 3 попадают пакеты с 192.168.100.0/24 которые не идут через fxp0 И в пайп 4 не попадает ни одного пакета
- ipfw dummnet, pev2000, 17:53 , 11-Июн-04 (14)
>от переменной net.inet.ip.fw.one_pass. и в данном случае у тебя оно 1 или 0? :-)
- ipfw dummnet, khan, 14:06 , 12-Июн-04 (15)
>>от переменной net.inet.ip.fw.one_pass. > >и в данном случае у тебя оно 1 или 0? :-) В данном - 1, у меня оно всегда один, а то если 0 после некоторых совпадений пакеты снова в фаерволл загоняются и хрен потом разберешься по каким правилам еще пакет проходит
- ipfw dummnet, pev2000, 16:46 , 12-Июн-04 (16)
>ipfw count, после совпадения с этим правилом перебор продолжается, и зависит >от переменной net.inet.ip.fw.one_pass. которая у тебя как и у меня = 1 > >00010 pipe 1 ip from any to any via rl0 >01061 count ip from 192.168.100.106 to any via ng30 >01062 count ip from any to 192.168.100.106 via ng30 >01071 pipe 2 ip from any to 192.168.100.105 >08000 divert 8668 ip from 192.168.100.0/24 to any out xmit fxp0 >09000 divert 8668 ip from any to 193.9.165.10 >09010 pipe 3 ip from 192.168.100.0/24 to any >09010 pipe 4 ip from any to 193.9.165.10 >50000 allow ip from any to any >65535 deny ip from any to any > >Итак В пайп 1 попадают все пакеты, проходящие чарез rl0 >В каунт все что идет на/с 192.168.100.106 >В пайп 2 все на 192.168.100.105 >В НАТ идет все сеть 192.168.100.105/24 кроме 192.168.100.106 потому как пакеты от >него до этого правила не доходят, они уже обработаны. обработаны кем count'ом? #man ipfw count Update counters for all packets that match rule. The search continues with the next rule. значит по твоему 192.168.100.106 в инет не ходит? так на кой считать что ходит от него/к нему? :) абсурд! ;) и вообще правила какие то веселые =)
- ipfw dummnet, ppa, 00:38 , 13-Июн-04 (17)
>>ipfw count, после совпадения с этим правилом перебор продолжается, и зависит >>от переменной net.inet.ip.fw.one_pass. > которая у тебя как и у меня = 1 >> >>00010 pipe 1 ip from any to any via rl0 >>01061 count ip from 192.168.100.106 to any via ng30 >>01062 count ip from any to 192.168.100.106 via ng30 >>01071 pipe 2 ip from any to 192.168.100.105 >>08000 divert 8668 ip from 192.168.100.0/24 to any out xmit fxp0 >>09000 divert 8668 ip from any to 193.9.165.10 >>09010 pipe 3 ip from 192.168.100.0/24 to any >>09010 pipe 4 ip from any to 193.9.165.10 >>50000 allow ip from any to any >>65535 deny ip from any to any >> >>Итак В пайп 1 попадают все пакеты, проходящие чарез rl0 >>В каунт все что идет на/с 192.168.100.106 >>В пайп 2 все на 192.168.100.105 >>В НАТ идет все сеть 192.168.100.105/24 кроме 192.168.100.106 потому как пакеты от >>него до этого правила не доходят, они уже обработаны. нужно ограничивать действие диверта или трубы интерфейсом тогда можно будет сделать чтобы эти пакеты попали в фаервол _как бы_ еще раз например если у тебя все юзеры из это сетки висят на ng* то можно сделать так: 08000 divert 8668 ip from 192.168.100.0/24 to any out xmit fxp0 09000 divert 8668 ip from any to 193.9.165.10 09010 pipe 3 ip from any to any via ng* in 09010 pipe 4 ip from any to any via ng* out -- ppa
- ipfw dummnet, khan, 11:58 , 14-Июн-04 (20)
>>ipfw count, после совпадения с этим правилом перебор продолжается, и зависит >>01061 count ip from 192.168.100.106 to any via ng30 >>01062 count ip from any to 192.168.100.106 via ng30 >>08000 divert 8668 ip from 192.168.100.0/24 to any out xmit fxp0 >> >>В НАТ идет все сеть 192.168.100.105/24 кроме 192.168.100.106 потому как пакеты от >>него до этого правила не доходят, они уже обработаны. > >обработаны кем count'ом? > >#man ipfw >count Update counters for all packets that match rule. >The search continues with the next rule. > >значит по твоему 192.168.100.106 в инет не ходит? так на кой считать >что ходит от него/к нему? :) >абсурд! ;) Ну это я конечно прогнал, см первое предложение, да и если было бы allow то на выходе пакеты все равно попадали бы в НАТ, т.к. в правилах указано через какие интерфейсы они идут. ..........to any via ng30 ..........to any out xmit fxp0
- ipfw dummnet - всем двойка!, Дмитрий Ю. Карпов www.prof.pi2.ru, 23:47 , 13-Июн-04 (18)
Все правила ipfw обрабатываются дважды - на входе пакета и на выходе. Если ты используешь divert ->в natd для маскарадинга, то на divert работает только на внешнем интерфейсе, а на внутреннем и происходит shaping (но его надо ставить до allow, а то allow прерывает просмотр правил).
- ipfw dummnet - всем двойка!, pev2000, 02:14 , 14-Июн-04 (19)
>Все правила ipfw обрабатываются дважды - на входе пакета и на выходе. Если ты используешь divert ->в natd для маскарадинга, то на divert работает только на внешнем интерфейсе, а на внутреннем и происходит shaping (но его надо ставить до allow, а то allow прерывает просмотр правил). и не только allow, man ipfwallow | accept | pass | permit Allow packets that match rule. The search terminates. хм... это совсем всем двойка? вот все что Вы имели честь писать это о ipfw вообще или применительно лишь к нашем случаю, а то я тоже щас как начну придераться... к запятым =) а как объяснити ниже следущее? у меня до divert стоит allow ip from 192.168.0.0/16 to me allow ip from me to 192.168.0.0/16 тут есть allow и пакет из моей сети 192.168.1.0/24 попадает под это правило? ДА! так перебор правил как я понял с ваших слов и "man ipfw" прекращается после прохождения allow, Ура! но далее идут правила: divert 8668 ip from any to any out via ed0 divert 8668 ip from any to any in via ed0 первое изменяет ip-src в пакете на ip сервера(делает маскарад, для меня проще NАТ), а второе проделывает обратное "превращение" внимание вопрос! что должен divert'ить divert если пакет попал под правило allow из ваших рассуждений получается что тут ни чего уже больше не происходит и не работает... приплыли... СТОП! а ведь работает! вы сударь наверное теоретик, а статейки у вас не плохие! :) Удачи!
- ipfw dummnet - всем двойка!, khan, 12:15 , 14-Июн-04 (21)
>и не только allow, >man ipfw > >allow | accept | pass | permit >Allow packets that match rule. The search terminates. > >хм... это совсем всем двойка? >вот все что Вы имели честь писать это о ipfw вообще или >применительно лишь к нашем случаю, а то я тоже щас как >начну придераться... к запятым =) >а как объяснити ниже следущее? >у меня до divert стоит >allow ip from 192.168.0.0/16 to me >allow ip from me to 192.168.0.0/16 >тут есть allow и пакет из моей сети 192.168.1.0/24 попадает под это >правило? ДА! так перебор правил как я понял с ваших слов >и "man ipfw" прекращается после прохождения allow, Ура! но далее идут >правила: >divert 8668 ip from any to any out via ed0 >divert 8668 ip from any to any in via ed0 > >первое изменяет ip-src в пакете на ip сервера(делает маскарад, для меня проще >NАТ), а второе проделывает обратное "превращение" >внимание вопрос! что должен divert'ить divert если пакет попал под правило >allow из ваших рассуждений получается что тут ни чего уже больше >не происходит и не работает... приплыли... СТОП! а ведь работает! вы >сударь наверное теоретик, а статейки у вас не плохие! :) >Удачи! Ты сам понял что написал? Во-первых что скрывается под me? Во-вторых какие у тебя интерфейсы и для чего? В-третьих что чем маскируется в НАТе? В-четвертых в sysctl глянь значение вышеупомянутой переменной. А теперь эмпирическая модель: есть три интерфейса на одном сеть 192.168.0.0/16, на втором 10.0.0.0/8, на третьем ed0 чего-то реальное, вся 10-я сетка дивертится в НАТ, теперь что такое me? это может быть какой-нибудь левый адресок напр 1.1.1.1 и тогда вся 192.168 тоже в НАТ. Это так набросочек, вариантов как понимает All масса.
- ipfw dummnet - всем двойка!, pev2000, 14:02 , 14-Июн-04 (23)
>Ты сам понял что написал? конечно! и у меня это работает!>Во-первых что скрывается под me? а под _me_ скрываются все ip адреса данного компутера, это снова man ipfw который галсит: any matches any IP address. me matches any IP address configured on an interface in the system. The address list is evaluated at the time the packet is analysed. >Во-вторых какие у тебя интерфейсы и для чего? Один в инет(ed0), один в локалку(fxp0), ну и еще один на dial-in (ppp0) >В-третьих что чем маскируется в НАТе? если правильно понял вопрос, за натом сидит все и локалка и модем >В-четвертых в sysctl глянь значение вышеупомянутой переменной. почитай топик внимательнее! оно равно 1 >А теперь эмпирическая модель: >есть три интерфейса на одном сеть 192.168.0.0/16, на втором 10.0.0.0/8, >на третьем ed0 чего-то реальное, вся 10-я сетка дивертится в НАТ, теперь >что такое me? это может быть какой-нибудь левый адресок напр 1.1.1.1 >и тогда вся 192.168 тоже в НАТ. Это так набросочек, вариантов >как понимает All масса. Уважаемый вам man ipfw... до посидения! ;)
- ipfw dummnet - всем двойка!, khan, 15:56 , 14-Июн-04 (26)
>>Ты сам понял что написал? >конечно! и у меня это работает! > >>Во-первых что скрывается под me? >а под _me_ скрываются все ip адреса данного компутера, это снова man >ipfw >который галсит: >any matches any IP address. >me matches any IP address configured on > >>В-четвертых в sysctl глянь значение вышеупомянутой переменной. >почитай топик внимательнее! оно равно 1 > >Уважаемый вам man ipfw... до посидения! ;) Ну ладно с me у нас не сложилось. Но ага поставь allow ip from 192.168.0.0/16 to any и посмотрим как у тебя пакеты до диверта дойдут. Они приходят на машину allow ip from 192.168.0.0/16 to me У тебя дефолт роут стоит ?! Идут туда с 192.168.0.0/16 пока только уже не на me, а на интерфейс присоединенный к дефолт гейтвею.И очень странным кажется то, что проходя через фаерволл опять, они попадают в НАТ.
- ipfw dummnet - всем Удачи!!!, pev2000, 17:49 , 14-Июн-04 (27)
>Ну ладно с me у нас не сложилось. Но ага поставь allow >ip from 192.168.0.0/16 to any и посмотрим как у тебя пакеты >до диверта дойдут. естественно не дайдут! а ты знаешь для чего я вообще добавил эти правила( to me / from me)?>Они приходят на машину allow ip from 192.168.0.0/16 to me >У тебя дефолт роут стоит ?! Идут туда с 192.168.0.0/16 пока только >уже не на me, а на интерфейс присоединенный к дефолт гейтвею.И >очень странным кажется то, что проходя через фаерволл опять, они попадают >в НАТ. да все работает, пакет проходит через весь список правил! и обрабатывается правилами только подходящими правилами... вот так! правило allow ip from 192.168.0.0/16 to me подходит так как это шлюз дальше срабатывает divert, pipe, fwd и deny того что не надо... все работает! P.S. Мы совсем отошли от темы "кто вперед divert или pipe?"
- ipfw dummnet - всем двойка!, Дмитрий Ю. Карпов www.prof.pi2.ru, 13:02 , 14-Июн-04 (22)
> и не только allow, > man ipfw > allow | accept | pass | permit > Allow packets that match rule. The search terminates.Правильно. Но вот deny надо размещать ДО divert, т.к. divert+natd меняют IP-номера и порты; и желательно до шейпинга, дабы запрещённые (убитые) пакеты не засчитывались в трафик. Обычно deny срабатывает на входе пакета в машину, а divert - на выходе (точнее - на внутреннем и внешнем интерфейсе соотвественно, просто мы счиаем, что клиенты внутри, а серверы снаружи). Короче, сия задача нетривиальна есмь. PS: Только не надо тут обсуждать разницу между deny и reject... > хм... это совсем всем двойка? Ну, тем, кто успел написАть до того, как я прочитал (а ответы я пишу небыстро). Может, кого и пропустил... > вот все что Вы имели честь писать это о ipfw вообще или применительно лишь к нашем случаю, а то я тоже щас как начну придераться... к запятым =) Скорее, к данному случаю. НаписАть общие рекомендации - работа на неделю. > а как объяснити ниже следущее? у меня до divert стоит > allow ip from 192.168.0.0/16 to me > allow ip from me to 192.168.0.0/16 > тут есть allow и пакет из моей сети 192.168.1.0/24 попадает под это правило? ДА! Смотря кому направлен этот пакет. IMHO, natd всё равно не станет маскарадить пакет, идущий к локальной машине, а пакеты к нелокальной машине просвистят сквоь эти правила. > так перебор правил как я понял с ваших слов и "man ipfw" прекращается после прохождения allow, Ура! > но далее идут правила: > divert 8668 ip from any to any out via ed0 > divert 8668 ip from any to any in via ed0 > первое изменяет ip-src в пакете на ip сервера (делает маскарад, для меня проще NАТ), а второе проделывает обратное "превращение" Вообще говоря, уже неправильно. Правила ничего не меняют, а только передают пакеты natd-демону, который там кто-то меняет. > внимание вопрос! что должен divert'ить divert если пакет попал под правило allow из ваших рассуждений получается что тут ни чего уже больше не происходит и не работает... приплыли... СТОП! а ведь работает! Я не понял, про какое "правило allow из моих рассуждений" идёт речь. Если мы рассматриваем набор правил allow ip from 192.168.0.0/16 to me allow ip from me to 192.168.0.0/16 divert 8668 ip from any to any out via ed0 divert 8668 ip from any to any in via ed0 то дивертиться будут только транзитные пакеты, чего нам и требуется. > вы сударь наверное теоретик, Свою статью по IP-маршрутизации я написАл по собственной практике. А склонность к теоретическим обобщениям у меня очень ярко выражена... > а статейки у вас не плохие! :) Статейки я пишу в расчёте на тех, кто понимант мало, и потому там рассматриваю всё подробно. А тут нет места расписывать все случаи - отсюда и недомолвки.
- ipfw dummnet - всем двойка!, pev2000, 15:24 , 14-Июн-04 (24)
>и порты; и желательно до шейпинга, дабы запрещённые (убитые) пакеты не >засчитывались в трафик. Обычно deny срабатывает на входе пакета в машину, >а divert - на выходе (точнее - на внутреннем и внешнем >интерфейсе соотвественно, просто мы счиаем, что клиенты внутри, а серверы снаружи). >Короче, сия задача нетривиальна есмь. правильный учет трафика, считать ли deny трафик или не считать, это совсем другая история!>Если мы рассматриваем набор правил > allow ip from 192.168.0.0/16 to me > allow ip from me to 192.168.0.0/16 > divert 8668 ip from any to any out via ed0 > divert 8668 ip from any to any in via ed0 >то дивертиться будут только транзитные пакеты, чего нам и требуется. хорошо, будут дивертиться хе-хе... сел утром поглядел как у меня пакетики ходят с модема (ppp0 - 192.168.255.1 -> 192.168.255.2) в инет(ed0) - весело! ;) они проходят allow потом проходят divert и продолжают идти и искать подходящее правило так что на одном allow не заканчивается странствия пакета по правилам! >> вы сударь наверное теоретик, > >Свою статью по IP-маршрутизации я написАл по собственной практике. А склонность к >теоретическим обобщениям у меня очень ярко выражена... меня тоже заставляют писать, но вот в голове есть, а на бумагу сложно положить =( >> а статейки у вас не плохие! :) > >Статейки я пишу в расчёте на тех, кто понимант мало, и потому >там рассматриваю всё подробно. А тут нет места расписывать все случаи >- отсюда и недомолвки. вот всем бы кто туго соображает ;) почитать бы их всем доходчиво... дошло даже до меня ;)
- ipfw dummnet - всем двойка!, Misha Volkov, 20:01 , 19-Июн-04 (28)
Я не знаю кто чего на это ответит, но выскажу некоторые соображения по поводу прочитаного.Для работи с фаерволов я использую два средства: ipfw - для пайпов и каунтов ipf & ipnat - для фильтрации и ната (редикекта и переброса на опр. порт) и всем так рекомендую, потому что удобно. Вот взаять к примеру natd. Кто сказал что он не может вывалится в самый неудобный момент? Никаких гарантий. Мало того, что ната не будет, так и все пакеты что дивертятся уйдут в никуда. А ipnat в ядре - сухо и комфортно, да и настроить можно гибко. Синтаксис ipf напорядок оптимальней чем в ipfw. Никаких номеров правил, да и не нужны они при фильтрации. Есть структура груп, могут групы вкладываться одна в одну и потом проверка пакета проходит в заданой групе. На мой взгляд очень удобно. Я тоже сначала использовал natd пока он не упал и к машине пропал доступ. Пришлось ехать в другой конец города. Да и трафик с помощю ipf можно считать. Долго проверял совпадаит ли он с ipfw count - совпадает. Жалею только об одном, что в пакете ipf до сих пор не сделали аналог пайпов :(
|