Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

Подсказка

IP ACL является более универсальным и поддерживает широкий список критерий фильтрации трафик, включая все доступные критерии MAC ACL. Это позволяет обеспечить гибридную фильтрацию трафика на обоих уровнях L2 и L3 в рамках одного ACLсписка доступа. Если требуется фильтровать трафик только по L2 критериям, рекомендуем использовать MAC ACL.

Настройка

Оба типа ACL работают по двум основным принципам: black list и white list.
В первом случае формируются правила запрета прохождения кадров на основе одного или нескольких критериев. Весь трафик, не подпадающий под логику запрещающих правил, будет пропущен.
Во втором случае формируется список разрешающих правил и трафик, не подпадающий под логику этого списка, будет отброшен.  

Рассмотрим несколько примеров настройки. 

Задача №1: Запретить прохождение PPPoE в сервисном vlan IPoE. Пусть тэг vlan равен 234.
Решение - сформируем black list на основе ethertype и vlan:

Блок кода
 access-list mac noPPPDo you have information what exactly problems they had?
    deny any any vlan 234 ethertype 0x8863 0xFFFF index 1
    deny any any vlan 234 ethertype 0x8864 0xFFFF index 2
Подсказка
 Значение 0xFFFF является маской для параметра ethertype.  
 Маска 0x0000 равнозначна any. Маска 0xFFFF соответствует одному конкретному ethertype.

Затем назначим его на pon-port :

Блок кода
    interface pon-port 1
        access-list mac "noPPP"
Примечание

Любой вид ACL применим только ко входящему трафику. Если требуется запретить прохождение определенных пакетов в обе стороны, то такой лист нужно назначить как на uplink, так и на downlink интерфейсы. 

Задача №2: Разрешить трафик из сетей 1.1.1.0 - 3.3.3.0/24 в сеть 5.0.0.0/8
Решение - сформировать white list на основе IP-адресов источника и назначения:

Блок кода
 access-list ip whiteListIp
    permit any 1.1.1.0 255.255.255.0 5.0.0.0 255.0.0.0 index 1
    permit any 2.2.2.0 255.255.255.0 5.0.0.0 255.0.0.0 index 2
    permit any 3.3.3.0 255.255.255.0 5.0.0.0 255.0.0.0 index 3
    deny any any any index 4
Примечание

Для формирования белого листа последним индексом всегда должно быть глобальное запрещающее правило.

Затем назначим его на pon-port :

Блок кода
    interface pon-port 1
        access-list ip "whiteListIp"
        access-list mac "noPPP"
Примечание

На один интерфейс можно назначить по одному ACL каждого типа (MAC access-list и access-list IP).

Задача №3:  Запретить прохождения трафика для протоколов RPC , SSDP и mDNS. 
Решение - сформировать black list на основе порта назначения протокола транспортного уровня. Правила будут выглядеть так: 

Блок кода
 access-list ip NoRpcSsdpmDns
    deny udp any any any 135 index 1  
    deny udp any any any 1900 index 2
    deny udp any any any 5353 index 3

Затем назначим его на pon-port :

...

По умолчанию списки доступа на OLT работают в режиме blacklist (разрешено всё, что не запрещено). Возможно также формирование whitelist, в этом случае после перечисления в списке доступа разрешающих правил, последним правилом необходимо указать правило, которое будет запрещать всё остальное –  deny any any.

Примечание

Списки доступа, настраиваемые на OLT, при их применении распространяются только на трафик, поступающий на интерфейсы (ingress). На один интерфейс можно назначить по одному ACL каждого типа (один MAC ACL + 1 IP ACL).

ACL могут быть применены только на uplink интерфейсы front-port, port-channel и downlink интерфейсы pon-port. Применение ACL по отдельно взятым ONT не поддержано.

Настройка функционала

В качестве примера рассмотрим комплексную настройку нескольких правил фильтрации трафика для интерфейсов pon-port и front-port. Схема фильтрации продемонстрирована на диаграмме:

draw.io Diagram
bordertrue
diagramNameДиаграмма без названия-1769097369419
simpleViewerfalse
width
linksauto
tbstyletop
lboxtrue
diagramWidth737
revision2

В соответствии с данной схемой необходимо:

  • Ограничить поступление входящих со стороны сети оператора пакетов UDP с src port = 68 (пакеты DHCP Discover, DHCP Request); 
  • Ограничить поступление входящих со стороны абонентов, подключенных к интерфейсу pon-port 1, фреймов PPPoE (ethertype 0x8863, 0x8864);
  • Ограничить поступление входящих со стороны абонентов, подключенных к интерфейсу pon-port 1, пакетов UDP с dst port = 1900, 5353 (протоколы SSDP, mDNS);
  • Весь остальной трафик пропускать без ограничений.

Для реализации данной задачи можно сформировать два списка доступа IP ACL, каждый из которых будет предназначаться для своего интерфейса. В IP ACL, предназначенном для интерфейса pon-port можно объединить L2 и L3 правила.

Порядок настройки. Подход к формированию ACL (пункты 1, 2) идентичен для OLT всех типов – LTP-N, LTX, MA5160. Порядок назначения ACL на интерфейсы несколько отличается для LTP-N, LTX и MA5160 по причине архитектурных отличий. На MA5160 ACL работают по каждому слоту отдельно. Интерфейсы, на которые будут применяться списки доступа на MA5160:

  • uplink в строну управляющих плат FC (lc-slot-channel);
  • downlink в сторону ONT (pon-port) – отличий относительно LTP-N, LTX здесь нет.
  1. Формирование списка доступа для uplink.
    Блок кода
    LTP-16N# configure terminal
    LTP-16N(configure)# access-list ip uplink_block
    LTP-16N(config)(access-list-ip-uplink_block)# deny udp any 68 any any index 1
    LTP-16N(config)(access-list-ip-uplink_block)# exit
  2. Формирование списка доступа для pon-port
    Блок кода
    LTP-16N(configure)# access-list ip pon_block
    LTP-16N(config)(access-list-ip-pon_block)# deny any any any ethertype 0x8863 0xFFFF 
    LTP-16N(config)(access-list-ip-pon_block)# deny any any any ethertype 0x8864 0xFFFF
    LTP-16N(config)(access-list-ip-pon_block)# deny udp any any any 1900
    LTP-16N(config)(access-list-ip-pon_block)# deny udp any any any 1900
    LTP-16N(config)(access-list-ip-pon_block)# exit
  3. Применение списков доступа на интерфейсы. Применение и сохранение настроек в энергонезависимую память.
    Для LTP-N, LTX данная часть конфигурации будет выглядеть следующим образом: 
    Блок кода
    LTP-16N(configure)# interface front-port 1
    LTP-16N(config)(if-front-1)# access-list ip uplink_block
    LTP-16N(config)(if-front-1)# exit
    LTP-16N(configure)# interface pon-port 1
    LTP-16N(config)(if-pon-1)# access-list ip pon_block 
    LTP-16N(config)(if-pon-1)# exit
    LTP-16N(configure)# exit
    LTP-16N# commit
    LTP-16N# save
    Для MA5160 (предположим что правила настраиваются для слота 1):
    Блок кода
    MA5160# configure terminal
    MA5160(configure)# interface lc-slot-channel 1
    MA5160(config)(if-lc-slot-channel-1)# access-list ip uplink_block
    MA5160(config)(if-lc-slot-channel-1)# exit
    MA5160(configure)# interface pon-port 1/1
    MA5160(config)(if-pon-1/1)# access-list ip pon_block 
    MA5160(config)(if-pon-1/1)# exit
    MA5160(configure)# exit
    MA5160# commit confirm