Общая форма описания фильтра приведена выше в подразделе СИНТАКСИС.
Необязательное поле interface
определяет имя сетевого интерфейса, к которому применим данный фильтр.
Имя интерфейса зависит от конкретной модели маршрутизатора и может, например,
иметь вид eth1 или ar2
для обозначения ethernet или радио-интерфейса соответственно. Если
поле interface задано, то фильтр будет применяться только к тем пакетам,
которые поступают через этот интерфейс.
Поле disp (сокращение от disposition) определяет действие, которое должно быть выполнено в случае срабатывания данного фильтра. Возможные значения: accept, accept log или reject. Если указано accept, то пакет свободно пройдёт сквозь фильтр. Если указано accept log, то пакет свободно проходит сквозь фильтр и информация о нём отображается на системной консоли. Использование reject приводит к тому, что пакет будет отброшен фильтром и информация о нём будет отображена на системной консоли.
Поле proto определяет конкретный протокол семейства IP, используемый фильтром. Возможные значения: tcp, udp, icmp и all.
Необязательное поле modifiers может быть использовано для указания некоторых дополнительных характеристик пакета. Они описаны позже на этой странице.
Обязательное ключевое слово from разделяет поля proto и modifiers от адреса источника (endpoint). Ключевое слово to отделяет адрес источника от адреса получателя (endpoint).
endpoint определяет адреса источника или получателя. Точный синтаксис полей endpoint зависит от значения поля proto. Если proto указан как all или icmp, то endpoint содержит адресную информацию. Если proto задано как udp или tcp , то endpoint содержит адресную информацию и необязательный список портов.
Адресная информация задаётся
как IP адрес и необязательная маска (mask). IP
адрес должен задаваться в традиционном числовом формате (nn.nn.nn.nn).
Необязательная маска может быть задана
как длиной маски в битах, так и числовым значением в формате (nnn.nnn.nnn.nnn).
Возможные форматы задания адресной информации:
nn.nn.nn.nn
nn.nn.nn.nn:xxx.xxx.xxx.xxx
nn.nn.nn.nn/NN
Двоеточие указывает на то, что маска задана в числовом адресном формате.
Символ "/" указывает на использование длины маски (число начальных
бит, установленных в единицу, остальные будут установлены в ноль).
Например: 192.168.9.0/24 описывает адрес сети 192.168.9.0
с длиной маской в 24 бита.
Второй вариант: 192.168.9.0:255.255.255.0.
Запись 0/0 описывает все возможные IP
адреса.
Список портов задаётся в виде
простого перечисления номеров портов разделённых пробелами.
Первый элемент в списке может быть парой портов, разделённых
двоеточием. Эти порты будут определять диапазон номеров (от меньшего к
большему, включая указанные).
В текущей реализации может быть указано до 10 номеров портов в списке.
Заметьте, что пакеты, которые не являются первым фрагментом фрагментированного IP-пакета, не проверяются на номер порта (поскольку номер порта фигурирует только в первом фрагменте). Это не является серьёзным ограничением, поскольку если первый фрагмент будет отвергнут фильтром, то остальные фрагменты будут отвергнуты IP протоколом на целевой машине.
Поле modifiers используется
для указания дополнительных характеристик пакета, которые должен учитывать
фильтр.
Возможные значения: