В нашей прошлой статье мы рассмотрели, как OSPF может автоматически фильтровать маршруты с помощью специальных областей и типов LSA. Но как насчет вариантов ручной фильтрации маршрутов в OSPF? В этой статье мы рассмотрим методы, которые можно использовать в различных точках топологии.
![Ручная фильтрация маршрутов OSPF Ручная фильтрация маршрутов OSPF](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/1.png)
Предыдущие статьи:
Видео: протокол OSPF (Open Shortest Path First) за 8 минут
Фильтрация на ASBR
Одним из простых и эффективных методов фильтрации на ASBR является использование распределенного списка. Здесь мы определяем правила идентификации маршрута со списком доступа, а затем ссылаемся на этот список доступа в списке распространения.
![Топология Топология](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/2.png)
Рисунок 1. Топология OSPF
В этом примере наша область 1 настроена как нормальная, не являющаяся магистральной областью. Вы можете увидеть это, при просмотре таблицы маршрутизации на ORL.
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/3.png)
Обратите внимание на два префикса (E2) 192.168.10.0 и 192.168.20.0. Давайте отфильтруем 192.168.10.0 на ASBR ATL.
ATL# configuration terminal Enter configuration commands , one per line . End with CNTL/Z . ATL(config)#access-list 1 deny 192.168.10 .0 0.0.0.255 ATL(config)#access-list 1 permit any ATL(config)#router ospf 1 ATL(config-router)#distribute-list 1 out eigrp 100 ATL(config-router)#end ATL#
Обратите внимание, насколько проста эта конфигурация. Давайте посмотрим, сработало ли это, еще раз изучив таблицу маршрутов ORL:
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/4.png)
Конфигурация работет отлично, и 192.168.10.0 больше не доступен на ORL.
Другой простой метод - использовать команду summary-address
на ASBR и использовать ключевое слово not-advertise
.
Вот пример из нашей топологии. Обратите внимание, что был удален предыдущий список рассылки из конфигурации ATL до этой настройки здесь:
ATL#conf t Enter configuration commands, one per line. End with CNTL/Z . ATL(config)#router ospf 1 ATL(config-router)#summary-address 192 .168.10.0 not-advertise ATL(config-router)#end ATL#
Проверка на ORL доказывает успешную фильтрацию сети 192.168.10.0.
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/5.png)
Нет ничего удивительного в том, что вы можете использовать подход route map для фильтрации в ASBR. Ведь route map невероятно полезны и гибки.
Здесь мы определим правила со списком доступа (еще раз) и используем их в логике route map:
ATL#conf t Enter configuration commands, one per line . End with CNTL/Z . ATL(config)#access-list 1 deny 192.168.10.0 0.0.0.255 ATL(config)#access-list 1 permit any ATL(config)#route-map МУМАР permit 10 ATL(config-route-map)#match ip address 1 ATL(config-route-map)#router ospf 1 ATL(config-router)#redistribute eigrp 100 metric 1000 route-map МУМАР subnets ATL(config-router)#end ATL#
Как вы можете догадаться, проверка на ORL показывает отличную работу.
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/6.png)
Фильтрация на ABR
Вы также можете фильтровать на ABR. Наиболее распространенным методом является использование списка префиксов, как показано здесь:
ATL2#conf t Enter configuration commands, one per line. End with CNTL/Z. ATL2 (config)#ip prefix-list 1 deny 192.168.10.0/24 ATL2 (config)#ip prefix-list 1 permit 0.0.0.0/0 ATL2 (config)#router ospf 1 ATL2 (config-router )#area 1 filter-list prefix 1 out ATL2 (config-router )#end ATL2#
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/7.png)
Мы фильтруем префикс 192.168.10.0, но мы делаем это на ABR, и мы фильтруем по Type 3. Это контрастирует с фильтрацией типа 5 (для того же префикса!) Мы уже делали это раньше в ASBR.
Фильтрация в роутере
Имейте в виду, что вы можете легко фильтровать на любом спикере OSPF внутри самого маршрутизатора. Например, вы можете настроить подход к распределению списка и фильтровать входящие сообщения с его помощью.
В этом примере мы еще раз остановимся на 192.168.10.0. Мы заблокируем его в ACL и будем использовать этот ACL в списке рассылки.
Обратите внимание, что мы находимся на ORL:
ORL#conf t Enter configuration commands , one per line . End with CNTL/Z . ORL(config) #access-list 1 deny 192.168.10.0 0.0.0.255 ORL(config) #access-list 1 permit any ORL(config)#router ospf 1 ORL(config-router)#distribute-list 1 in ORL(config- router)#end ORL#
И снова наш желаемый результат проверки:
show ip route
![show ip route show ip route](http://wiki.merionet.ru/images/ruchnaya-filtraciya-marshrutov-ospf/8.png)