Назад | Перейти на главную страницу

Почему в списках управления доступом при переадресации IP используется обратная маска?

Изучая концепцию контроля доступа, я обнаружил, что в списках ACL используются обратные маски. Но пока мы проходим объяснение, данное в сайт cisco Что касается списков Contrl, я заметил, что во всех их объяснениях они преобразуют обратную маску в исходную маску, а затем делают необходимое.

Если это так, зачем нам вообще нужны обратные маски? Насколько я понимаю, обратные маски могут оказаться полезными только в том случае, если они объединены с IP-адресом по биту. Но я сомневаюсь, что это так. Так в чем же настоящая причина использования обратной маски?

Обратные битовые маски обеспечивают большую гибкость, чем простое использование сетевой маски. Подавляющее большинство приложений просто инвертируют сетевую маску в инверсную маску, например:

! Deny tcp/25 traffic from all sources going to addresses 
! in the seqence matching [172.16.0.4, 172.16.1.4, 172.16.2.4, etc...]
ip access-list 101 deny tcp any 172.16.0.4 0.0.0.0 eq 25
ip access-list 101 deny tcp any 172.16.1.4 0.0.0.0 eq 25
ip access-list 101 deny tcp any 172.16.2.4 0.0.0.0 eq 25
ip access-list 101 deny tcp any 172.16.3.4 0.0.0.0 eq 25
ip access-list 101 deny tcp any 172.16.4.4 0.0.0.0 eq 25
ip access-list 101 deny tcp any 172.16.5.4 0.0.0.0 eq 25
! keep repeating the pattern all the way to 172.16.255.4

По сути, acl 101 блокирует пакеты на основе сетевых масок / 32. Более компактный способ выразить то же самое -

! 255 in the third octet of the wildcard mask matches from 0-255
ip access-list 102 deny any 172.16.0.4 0.0.255.0 eq 25

ACL 102 - это просто более компактный способ выражения первого ACL.

В те дни, когда Cisco IOS коммутировала весь трафик только на основе мощности процессора и не имела встроенных оптимизаций внутреннего шаблона ACL, ACL 101 был бы намного медленнее, чем ACL 102 из-за количества записей в ACL 101. Теперь Cisco IOS включает некоторые существенные оптимизации в механизме сопоставления с образцом и на платформах более высокого уровня даже используют ASIC для фильтрации ... поэтому выражение ACL, как 102, больше для удобства.

Имейте в виду, что ваши конфигурации IOS хороши ровно настолько, насколько хороши ваши сотрудники в 3 часа ночи, когда что-то ломается; поэтому, если вы будете писать списки ACL как можно более умно, возможно, вам понадобится гораздо больше времени для отладки во время раннего кризиса.