Кратко

  • Внутренний домен маршрутизации объявил множество префиксов в сторону магистрали центров обработки данных. На каждом был BGP-комьюнити, законно назначенный этому домену; объявления прошли входную route-map. Маршрутизаторы агрегации получили весь набор, память закончилась, а демоны маршрутизации перезапустились.
  • Предложение Daria Shantalova разделяет идентификацию префикса, разрешение на проход через каждую границу и непрерывную проверку фактического состояния сети.
  • В докладе сказано, что за несколько месяцев устранили почти все замеченные нарушения, но не приведены исходное число, точный остаток и датированный ряд.

Метка была подлинной. Проверки права не было.

Самая неприятная деталь случая, который Daria Shantalova представила на RIPE 93, — неверные маршруты пришли с правильной меткой. Соседний внутренний домен отправил большое число префиксов в Express Backbone, связывающую центры обработки данных. Каждый маршрут нёс BGP-комьюнити, законно назначенный этому домену. Входная route-map узнала значение и пропустила объявления.

Дальше маршруты разошлись по внутренней iBGP-сети. Маршрутизаторы агрегации центров данных приняли полный набор; демону маршрутизации не хватило доступной памяти, и он перезапустился. В опубликованных материалах нет точного числа префиксов и маршрутизаторов или длительности сбоя. Зато ясно, чего не проверил фильтр: он сопоставил комьюнити с доменом-отправителем, но не выяснил, разрешено ли каждому префиксу пересечь границу и попасть в магистраль.

Комьюнити может обозначать домен происхождения или область распространения маршрута. Оно не выдаёт каждому префиксу с этим значением универсальный пропуск. Система приняла верную метку за полное разрешение.

Ограничение количества не выбирает разрешённые маршруты

У привычных мер разные задачи. Максимум префиксов спрашивает, сколько маршрутов пришло. Список разрешённых префиксов — какие можно пропустить через границу. Фильтр сообществ проверяет, известно ли значение и следует ли его сохранять. Эти меры дополняют, но не заменяют друг друга. RFC 7454 отдельно рассматривает фильтрацию префиксов, лимиты количества и обработку сообществ; RFC 4271 описывает обмен сведениями о достижимости и выбор маршрута в BGP.

Первый слой в схеме Shantalova — идентификатор: каждый префикс получает одно BGP ID-сообщество с доменом происхождения и разрешённой областью распространения. Отсутствующий, неверный, повторный или противоречивый ID считается нарушением. Затем внутренний Route Registry хранит ожидаемые домен и ID для каждого префикса и генерирует входные фильтры на каждой границе доменов. Третий слой непрерывно сверяет производственные RIB с реестром, находит незарегистрированные префиксы, пропущенные или неверные ID и расхождения с заданным состоянием, после чего отправляет сигналы мониторинга и тревоги.

Реестр хранит намерение, RIB показывает то, что приняли маршрутизаторы. Однократная выгрузка конфигурации при внедрении не сохраняет это соответствие сама по себе.

Для «почти всех» нужен знаменатель

В описании RIPE сказано, что за несколько месяцев команда устранила «почти все» наблюдавшиеся нарушения и что автоматическое применение правил исключает рецидив. В слайдах нет исходного количества, точного остатка, временного ряда или числа защищённых границ. Датированные показатели до и после вместе с охватом внедрения показали бы, что дала первоначальная очистка, а что — постоянная автоматизация.

Практический вывод — не поставить ещё один фильтр и закрыть задачу. Каждому контролю нужна собственная функция, а мониторинг должен сравнивать замысел с тем, что реально установлено. Если верная метка становится универсальным разрешением, оборудование безошибочно выполняет полномочие, которое никто не проверил.

Источники: сессия и описание RIPE 93; официальная стенограмма; оригинальные слайды; RFC 4271; RFC 7454.