Компания Cloudflare опубликовала (https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-.../) отчёт о вчерашнем инциденте, в результате которого на протяжении трёх часов (https://twitter.com/bgpmon/status/1143149817473847296) с 13:34 до 16:26 (MSK) наблюдались проблемы с доступом ко многим ресурсам в глобальной сети, включая инфраструктуру Cloudflare, Facebook, Akamai, Apple, Linode и Amazon AWS. Проблемы в инфраструктуре Cloudflare, которая предоставляет CDN для 16 млн сайтов, наблюдались (https://www.cloudflarestatus.com/incidents/46z55mdhg0t5) с 14:02 до 16:02 (MSK). По оценке Cloudflare во время сбоя фиксировалась потеря приблизительно 15% глобального трафика.
Проблема была вызвана (https://mailman.nanog.org/pipermail/nanog/2019-June/101590.html) утечкой маршрутов через BGP, в ходе которой около 20 тысяч префиксов для 2400 сетей были некорректно перенаправлены. Источником утечки был провайдер DQE Communications, который использовал ПО BGP Optimizer (https://www.noction.com/intelligent_routing_platform/traffic...) для оптимизации маршрутизации. BGP Optimizer разбивает IP-префиксы на более мелкие, например, разделяет 104.20.0.0/20 на 104.20.0.0/21 и 104.20.8.0/21, и как следствие DQE Communications держал на своей стороне большое число специфичных маршрутов, переопределяющих более общие маршруты (т.е. вместо общих маршрутов к Cloudflare использовались более гранулированные маршруты к конкретным подсетям Cloudflare).
Данные точечные маршруты были анонсированы одному из клиентов (Allegheny Technologies, AS396531), который затем транслировал эти маршруты другому транзитному провайдеру (Verizon, AS701). Из-за отсутствия надлежащей фильтрации BGP-анонсов и ограничения на число префиксов, Verizon подхватил данный анонс и транслировал эти маршруты для остального интернета, которые из-за своей гранулированности были восприняты как более приоритетные (конкретный маршрут имеет более высокий приоритет, чем общий).
В итоге трафик для многих крупных сетей стал направляться через Verizon к мелкому провайдеру DQE Communications, не способному обработать нахлынувший трафик (эффект сравним с тем, как если бы часть нагруженной автострады заменили на просёлочную дорогу).
Для предотвращения возникновение подобных инцидентов в будущем
рекомендовано (https://mailman.nanog.org/pipermail/nanog/2019-June/101589.html) использовать верификацию (https://www.opennet.ru/opennews/art.shtml?num=47303) анонсов на основе RPKI (BGP Origin Validation, разрешает приём анонсов только от владельцев сети), ограничить максимальное число принимаемых префиксов для всех сеансов EBGP (maximum-prefix), применять фильтрацию на основе реестра IRR (Internet Routing Registry, определяет AS через которые допустима маршрутизация заданных префиксов), использовать на маршрутизаторах рекомендуемые в RFC 8212 настройки для блокировки по умолчанию ('default deny') и прекратить использование оптимизаторов BGP.
URL: https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-.../
Новость: https://www.opennet.ru/opennews/art.shtml?num=50955