IPA_IP6FW(8) IPA_IP6FW(8) НАИМЕНОВАНИЕ ipa_ip6fw -- IPA модуль учёта трафика для FreeBSD IPv6 Firewall ОПИСАНИЕ ipa_ip6fw это IPA модуль учёта, обладающий следующими свойствами: - Модуль разработан для учёта трафика при помощи байтовых счётчи- ков правил FreeBSD IPv6 Firewall; - Модуль распознаёт переполнение байтовых счётчиков IPv6 Firewall правил; - Возможно суммировать и вычитать статистику байтовых счётчиков IPv6 Firewall правил; - Возможно различать IPv6 Firewall правила с одинаковыми номерами; - IPv6 Firewall правила могут быть динамически добавлены или уни- чтожены в системе, модуль будет корректно работать в такой ситу- ации. Перед чтением следующего параграфа необходимо прочитать в документации к IPv6 Firewall как устанавливать IPv6 Firewall правила для подсчёта трафика. Имя системы учёта -- ip6fw. ФОРМАТ КОНФИГУРАЦИОННОГО ФАЙЛА Конфигурация модуля интегрирована в ipa.conf(5). Конфигурационный пре- фикс модуля -- ``ip6fw''. Чтобы получать статистику трафика некоторого IPv6 Firewall правила, используйте параметр ip6fw:rules: ip6fw:rules = [-]номер[.подномер]; Этот параметр должен быть расположен в секции rule. В оригинальном формате IPv6 Firewall правила присутствует только один номер правила. Дополнительный подномер может быть добавлен чтобы раз- личать правила с одинаковыми номерами, первое правило с некоторым номе- ром имеет подномер равный 0, второе правило с таким же номером имеет подномер 1 и т.д. Если подномер не указан, то он считается равным 0. Понятие подномер в IPv6 Firewall правиле является новым и не упомина- ется в странице документации ip6fw(8). Перед номером IPv6 Firewall правила может быть поставлен знак `-', в этом случае модуль будет вычитать статистику этого правила. Несколько IPv6 Firewall правил, разделённые пробелами, могут быть ука- заны в параметре ip6fw:rules, в этом случае их статистика будет сумми- роваться или вычитаться, в зависимости от знака перед номером правила. Параметр ip6fw:maxchunk позволяет безопасно очищать таблицу IPv6 Fire- wall правил или уничтожать и добавлять одни и те же правила во время работы ipa(8): ip6fw:maxchunk = <bytes>; Этот параметр должен быть расположен в секциях global и rule. Если старое значение байтового счётчика больше чем новое значение этого же счётчика некоторого IPv6 Firewall правила и если различие (учитывая переполнение) между ними больше чем значение параметра ip6fw:maxchunk, то модуль берёт абсолютное значение байтового счётчика этого правила как прирост статистики этого правила. Слишком малое значение параметра ip6fw:maxchunk может привести к непра- вильным результатам. Значение этого параметра должно быть больше чем различие между байтовыми счётчиками любого IPv6 Firewall правила, ука- занного в правиле в ipa.conf(5), в течении времени обновления базы дан- ных. Было бы лучше проверять некоторые переменные в структурах ядра IPv6 Firewall и определять было ли изменено IPv6 Firewall правило. Но таких переменных нет в структурах ядра IPv6 Firewall (на момент написания этой страницы документации), поэтому необходимо использовать параметр ip6fw:maxchunk. Модуль всегда отправляет лог-сообщение, когда IPv6 Firewall правило переполняется или вероятно было изменено (это проверяется при помощи параметра ip6fw:maxchunk) и когда IPv6 Firewall правило добавляется в или уничтожается из IPv6 Firewall таблицы ядра. Возможно подавить эти сообщения используя параметр ip6fw:quiet: ip6fw:quiet = <value>; Этот параметр может быть расположен в секциях global и rule. По умолчанию значение этого параметра равно нулю, это означает, что все предупреждающие сообщения посылаются в лог. Если значение этого пара- метра имеет бит 0x1, то лог-сообщение не посылается если какое-то IPv6 Firewall правило переполнилось. Если значение этого параметра имеет бит 0x2, то лог-сообщение не посылается если какое-то IPv6 Firewall правило было добавлено или уничтожено. Параметр ip6fw:debug помогает отладить модуль: ip6fw:debug = <level>; Этот параметр должен быть расположен отдельно. Разрешены только два значения для уровня отладки: 0 и 1. По умолчанию значение этого параметра равно 0, это означает, что отладка отключена. Пример: ac_mod "ipa_ip6fw.so"; global { /* ... */ ac_list = ip6fw; ip6fw:quiet = 3; ip6fw:maxchunk = 1G; } rule 1 { /* ... */ ip6fw:rules = 100 200.1 300; } rule 2 { /* ... */ ip6fw:rules = 100 -200 300.0 300.1; ip6fw:maxchunk = 500M; } Первое правило наследует параметр ip6fw:maxchunk из секции global, оба правила наследуют параметр ip6fw:quiet из секции global. ДРУГИЕ ИСТОЧНИКИ ip6fw(8) СОВМЕСТИМОСТЬ IPv6 Firewall впервые появился в FreeBSD 4.0-RELEASE и был убран из FreeBSD 7.0 (>= 700017). Этот модуль должен работать с любой версией FreeBSD, которая содержит IPv6 Firewall. АВТОР Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua> НЕДОРАБОТКИ Если вы используете систему FreeBSD до 4.2-RELEASE, то модуль ipa_ip6fw будет работать только если в таблице правил IPv6 Firewall не больше чем 1024 правил, на таких системах ip6fw(8) также не может вывести полную таблицу IPv6 Firewall правил если она содержит более 1024 правил. Из-за не идеального интерфейса между пользовательским режимом и IPv6 Firewall частью ядра, ipa_ip6fw модуль не будет работать корректно если IPv6 Firewall не включён в ядро. Если вы проинсталлируете новое ядро FreeBSD с изменённым IPv6 Firewall API, то необходимо пересобрать этот модуль. Если вы обнаружите какие-либо ошибки, то, пожалуйста, сообщите мне по email. 4 января 2008 г. IPA_IP6FW(8)