Своя точка обмена трафиком в дата-центре. Часть 2. Инструменты для участников DataLine-IX

Используем BGP Communitу для управления исходящими и входящими анонсами и отражения DDoS-атак.

15 декабря 2016  •  Ян Широков
Одно из помещений Meet-Me-Room на площадке OST

Сегодня мы продолжаем говорить о точке обмена трафиком DataLine-IX. Первая часть была посвящена устройству нашей точки обмена трафиком. В этом посте расскажем про пару инструментов, которые пригодятся ее участникам в работе.

Личный кабинет

Личный кабинет DataLine-IX сделан на базе open-source проекта IXP Manager. Здесь собирается статистика по трафику участника и информация по связности с другими участниками.

Главная страница Личного кабинета

Скроллом статистика по трафику группируется по 12 часам, суткам, неделям и месяцам. Анализировать можно не только bit rate, но и packet rate, ошибки, количество отброшенных пакетов.

Здесь же можно посмотреть статистику распределения своего трафика по другим участникам DataLine-IX.

Через Личный кабинет участник может запросить прямое присоединение (private peering) к другим пирам.

Во вкладке “Интерфейсы” содержится информация о параметрах подключения участника к DataLine-IX.

BGP Community Tool

BGP Сommunity – это своего рода тэг, которым помечается маршрут. Когда RS получает маршрут с community, то он может выполнять определенные действия, основанные на значении атрибута.

Обычно community записывается в виде ASN:VALUE, т.е. номер автономной системы и значение community, которое определяет политику маршрутизации трафика. Для IX обычно используется другой формат: ACTION:VARIABLE, т.е. действие и переменная. ‘0’ в качестве действия означает запрет на анонсирование, номер AS DataLine-IX – разрешение.

По номеру AS нашей IX есть один нюанс: изначально он 203921, но поскольку BGP standard community в качестве ASN или Value могут принимать только 2 байта, то используется mapping (перевод) четырехбайтных ASN в двухбайтные. Поэтому номер AS DataLine-IX 203921 мапится в 64921.

С помощью BGP Community участники DataLine-IX могут управлять исходящими и входящими анонсами маршрутов, отражать DDoS-атаки.

Управление исходящими и входящими анонсами маршрутов. На RS DataLine-IX уже настроены фильтры для управления входящими и исходящими анонсами. Участнику остается только прописать в своих анонсах соответствующие community в сторону точки обмена трафиком.

Информация по community для DataLine-IX на RIPE NCC. Источник: https://apps.db.ripe.net/search

Вот пример фильтрации исходящих анонсов с помощью community:

Участник DataLine-IX – AS 49063 – хочет анонсировать маршруты всем участникам в Киеве, кроме участника AS 35297, и запрещает анонс всем участникам по всей Украине.

BGP COMMUNITY в анонсируемых префиксах будут выглядеть так:

0:35297 – запрет на анонс маршрутов для участника АS 35297. 64921:64611 – анонс разрешен всем участникам в Киеве. 0:64610 – запрет на анонс на всю Украину.

С входящими анонсами проще. Все маршруты прилетают уже с определенным community. Каждый соответствует какому-то городу и региону. Участник на своей стороне просто решает, принимать их или нет:

64921:64700 – анонсы маршрутов из России.

Стоит отметить, что геопринадлежность определяется исключительно местоположением оборудования участника, которое устанавливает BGP сессию с RS.

Для наглядного примера возьмем фрагмент конфигурации BGP на маршрутизаторе Cisco. Исходя из вышеуказанных правил, настройки буду выглядеть следующим образом:

Защита от DDoS-атак в IX с помощью BGP Blackhole. BGP Blackhole позволяет фильтровать вредоносный трафик еще до попадания в AS участника, т. е. на портах IX.

Этот способ предназначен для отражения атак на полосу пропускания каналов, в нашем случае – это линк между участником и DataLine-IX. При использовании BGP Blackhole участник жертвует доступностью хоста, зато DDoS не забьет весь канал и не затронет остальные сервисы.

В реализации BGP Blackhole также применяется community: маршруты для атакуемого хоста помечаются специальным community – 0:666. Во время атаки маршрут с этим community анонсируется на RS, который распространяет маршрут остальным участникам, подменяя Next-hop на специально выделенное значение.

Рассмотрим работу BGP Blackhole пошагово. Представим, что атакуемый хост находится в AS 64512 (IP 10.10.10.10):

  1. Администратор AS 64512 создает маршрут (10.10.10.10/32), помеченный community 0:666, и анонсирует этот префикс в сторону RS.
  2. RS, видя community 0:666, подменяет Next Hop на специально зарезервированный адрес 185.1.52.66 и распространяет этот машрут остальным участникам (на картинке AS 64513). В дальнейшем RS будет отвечать на ARP-запросы для хоста 185.1.52.66 MAC-адресом 0066.0066.0066.
  3. Если из AS 64513 идет трафик на атакуемый IP 10.10.10.10, то маршрутизатор в AS 64513 отправляет трафик с DMAC 0066.0066.0066.
  4. Далее трафик «отбрасывается» на порту, в который подключен AS 64513, и не попадает на порт атакуемого участника.
Схема работы BGP Blackhole

Looking Glass

Ну и конечно же у DataLine-IX есть свой Looking Glass. Здесь в режиме онлайн можно посмотреть:

  • Состояние BGP-сессий всех участников. UP – сессия установлена, Down – сессия не установлена, Start/Passive – сессия настроена со стороны DataLine-IX, и мы ожидаем, когда участник отправит нам запрос на установлении сессии.
  • детальную статистику по отдельным маршрутам для IPv4 и IPv6.
  • отображение AS PATH в виде графа.

Это всё, что мы хотели рассказать об инструментах DataLine-IX. Задавайте вопросы в комментариях, если что-то осталось за кадром.

Расскажите друзьям и коллегам о статье
  • Поделиться
  • Плюсануть
  • Поделиться

Подписка на новые статьи

Новые статьи почтой

Пишем редко, но по делу

Последние статьи

Рассказали об основных пунктах соглашения, зонах ответственности сторон и о том, как применяются инциденты.
31 августа  •  Михаил Соловьев

Что делать, чтобы сайт рос без боли.

11 августа  •  Дмитрий Сорокин

Разбираемся в работе архивирования и чем оно может быть полезно.

04 августа  •  Александр Васильев

Комментарии