с 14 июля 2019 года
приказом Министерства цифрового
развития, связи и массовых коммуникаций
Российской Федерации
от 15 апреля 2019 года N 139)
Синтаксис правил отбора и фильтрации трафика
1. Общие положения.
Синтаксис правил отбора и фильтрации предназначен для выполнения отбора и фильтрации трафика по типам и полям протоколов канального, сетевого и транспортного уровней.
Правило фильтрации представляет собой строку, состоящую из одного или нескольких атомарных правил фильтрации (далее - примитивы), связанных между собой логическими операциями. Правила фильтрации должны применяться по каждому пакету.
2. Атомарные правила.
Примитивы имеют следующий общий формат:
classifier1 [classifier2 classifier3...] [identifier] [field]
где:
а) classifier - классификатор, указывающий проверяемое свойство пакета. Классификаторов может быть несколько, это позволяет уточнить проверяемое свойство;
б) identifier - идентификатор, указывает требуемое значение проверяемого свойства. Если идентификатор отсутствует в правиле, пакет считается соответствующим правилу при наличии проверяемого свойства в заголовках пакета;
в) field - условие, позволяющее рассматривать произвольное поле заданного протокола как байтовый массив вида proto[offset:size]=value, где
proto - тип протокола в соответствии с таблицей 3 настоящего приложения;
offset - опциональный параметр, обозначающий смещение от начала пакета; по умолчанию равен 0, что равносильно началу пакета;
size - опциональный параметр, обозначающий размер сравниваемого массива от заданного параметра offset; по умолчанию равен 1 байту;
value - численное значение проверяемого поля.
2. Допустимые классификаторы.
Классификаторы представляются в виде: типа объекта, направления и протокола.
3. Тип объекта.
Тип объекта указывает тип проверяемого свойства пакета и характер проверки. Возможные типы объектов приведены в таблице N 1.
Таблица N 1
Классификатор | Описание | Тип | Пример правила |
host | Адрес хоста равен заданному | IP-адрес, МАС-адрес | host 192.168.1.3 |
net | Адрес хоста попадает в заданную подсеть | Адрес подсети | net 192.168.1.0/24 |
port | Порт транспортного протокола равен заданному | Число | port 80 |
portrange | Порт транспортного протокола попадает в заданный диапазон | Диапазон | portrange 80-100 |
vlan | Метка VLAN равна заданной | Число | vlan 200 |
mpls | Метка MPLS равна заданной | Число | mpls 100 |
proto | Вложенный протокол соответствует заданному (определенному либо кодом протокола, либо одним из классификаторов протокола) | Число или строка | ether proto ip |
В случае если классификатор типа в правиле не указан, то должен подразумеваться классификатор "host".
4. Направление.
Направление позволяет ограничить проверку свойства пакета только стороной отправителя или стороной получателя, указывается по отношению к объекту. Возможные значения поля направление указаны в таблице N 2.