The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
ipfw dummnet, !*! simba, 09-Июн-04, 21:52  [смотреть все]
Подскажите правила для pipe должны идти до divert или после ?
  • 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 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 из ваших рассуждений получается что тут ни чего уже больше не происходит и не работает... приплыли... СТОП! а ведь работает! вы сударь наверное теоретик, а статейки у вас не плохие! :)
      Удачи!

      • 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 до сих пор не сделали аналог пайпов :(




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру