IPA_IPFW(8)                                                        IPA_IPFW(8)



НАИМЕНОВАНИЕ
       ipa_ipfw -- IPA модуль учёта трафика для FreeBSD IP Firewall

ОПИСАНИЕ
       ipa_ipfw это IPA модуль учёта, обладающий следующими свойствами:

       -      Модуль  разработан для учёта трафика при помощи байтовых счётчи-
              ков правил FreeBSD IP Firewall (включая IPFW2);

       -      Модуль распознаёт переполнение байтовых  счётчиков  IP  Firewall
              правил;

       -      Возможно суммировать и вычитать статистику байтовых счётчиков IP
              Firewall правил;

       -      Возможно различать IP Firewall правила с одинаковыми номерами;

       -      IP Firewall правила могут быть динамически добавлены или уничто-
              жены  в  системе, модуль будет корректно работать в такой ситуа-
              ции.

       Перед чтением следующего параграфа необходимо прочитать в  документации
       к  IP  Firewall как устанавливать IP Firewall правила для подсчёта тра-
       фика.

       Имя системы учёта -- ipfw.

ФОРМАТ КОНФИГУРАЦИОННОГО ФАЙЛА
       Конфигурация модуля интегрирована в ipa.conf(5).  Конфигурационный пре-
       фикс модуля -- ``ipfw''.

       Чтобы  получать  статистику  трафика  некоторого  IP  Firewall правила,
       используйте параметр ipfw:rules:

           ipfw:rules = [-]номер[.подномер];

       Этот параметр должен быть расположен в секции rule.

       В оригинальном формате IP Firewall  правила  присутствует  только  один
       номер  правила.  Дополнительный подномер может быть добавлен чтобы раз-
       личать правила с одинаковыми номерами, первое правило с некоторым номе-
       ром  имеет  подномер  равный 0, второе правило с таким же номером имеет
       подномер 1 и т.д.  Если подномер не указан, то он считается  равным  0.
       Понятие  подномер в IP Firewall правиле является новым и не упоминается
       в странице документации ipfw(8).

       Перед номером IP Firewall правила может быть поставлен знак `-', в этом
       случае модуль будет вычитать статистику этого правила.

       Несколько IP Firewall правил, разделённые пробелами, могут быть указаны
       в параметре ipfw:rules, в этом случае их статистика будет суммироваться
       или вычитаться, в зависимости от знака перед номером правила.

       Параметр  ipfw:maxchunk позволяет безопасно очищать таблицу IP Firewall
       правил или уничтожать и добавлять одни и те же правила во время  работы
       ipa(8):

           ipfw:maxchunk = <bytes>;

       Этот параметр должен быть расположен в секциях global и rule.

       Если старое значение байтового счётчика больше чем новое значение этого
       же счётчика некоторого IP Firewall правила и  если  различие  (учитывая
       переполнение)  между  ними больше чем значение параметра ipfw:maxchunk,
       то модуль берёт абсолютное значение байтового  счётчика  этого  правила
       как прирост статистики этого правила.

       Слишком  малое значение параметра ipfw:maxchunk может привести к непра-
       вильным результатам.  Значение этого параметра должно быть  больше  чем
       различие между байтовыми счётчиками любого IP Firewall правила, указан-
       ного в правиле в ipa.conf(5), в течении времени обновления базы данных.

       Было бы лучше проверять некоторые переменные в структурах ядра IP Fire-
       wall и определять было ли изменено IP Firewall правило.  Но таких пере-
       менных  нет  в  структурах  ядра  IP Firewall (на момент написания этой
       страницы  документации),  поэтому  необходимо   использовать   параметр
       ipfw:maxchunk.

       Модуль всегда отправляет лог-сообщение, когда IP Firewall правило пере-
       полняется или вероятно было изменено (это проверяется при помощи  пара-
       метра ipfw:maxchunk) и когда IP Firewall правило добавляется в или уни-
       чтожается из IP Firewall таблицы ядра.  Возможно подавить эти сообщения
       используя параметр ipfw:quiet:

           ipfw:quiet = <value>;

       Этот параметр может быть расположен в секциях global и rule.

       По умолчанию значение этого параметра равно нулю, это означает, что все
       предупреждающие сообщения посылаются в лог.  Если значение этого  пара-
       метра  имеет  бит  0x1, то лог-сообщение не посылается если какое-то IP
       Firewall правило переполнилось.  Если значение  этого  параметра  имеет
       бит  0x2, то лог-сообщение не посылается если какое-то IP Firewall пра-
       вило было добавлено или уничтожено.

       Параметр ipfw:debug помогает отладить модуль:

           ipfw:debug = <level>;

       Этот параметр должен быть расположен отдельно.

       Разрешены только два значения для уровня отладки: 0 и 1.  По  умолчанию
       значение  этого параметра равно 0, это означает, что отладка отключена.

       Пример:

           ac_mod "ipa_ipfw.so";

           global {
               /* ... */
               ac_list = ipfw;
               ipfw:quiet = 3;
               ipfw:maxchunk = 1G;
           }

           rule 1 {
               /* ... */
               ipfw:rules = 100 200.1 300;
           }

           rule 2 {
               /* ... */
               ipfw:rules = 100 -200 300.0 300.1;
               ipfw:maxchunk = 500M;
           }

       Первое правило наследует параметр ipfw:maxchunk из секции  global,  оба
       правила наследуют параметр ipfw:quiet из секции global.

ДРУГИЕ ИСТОЧНИКИ
       ipfw(8)

СОВМЕСТИМОСТЬ
       IP  Firewall  впервые  появился  в FreeBSD 2.0-RELEASE.  IPFW2 появился
       летом 2002 г.  Этот модуль должен работать с FreeBSD начиная  с  версии
       3.0-RELEASE.

АВТОР
       Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua>

НЕДОРАБОТКИ
       Если  вы  проинсталлируете  новое ядро FreeBSD с изменённым IP Firewall
       API, то необходимо пересобрать этот модуль.

       Если вы обнаружите какие-либо ошибки, то, пожалуйста, сообщите  мне  по
       email.



                               4 января 2008 г.                    IPA_IPFW(8)