Чтобы перезагрузить все роутеры, нужен внешний толчок
Роутеры разных производителей, прошивок и годов выпуска не могут синхронно уйти на перезагрузку сами по себе. Сегодня в мире работает около 700 миллионов домашних устройств такого типа, и их число продолжает расти. Чтобы все они перезагрузились одновременно, нужен общий триггер: масштабная атака на механизм автообновлений прошивок или взлом цепочки поставок.
Прецедент, пусть и частичный, уже был: в 2018 году вредоносная программа VPNFilter заразила более 500 тысяч роутеров в 54 странах, открывая возможность одновременно перезагрузить или вывести из строя всю эту массу устройств. Именно поэтому это мысленный эксперимент. Но он точно показывает, в каких местах у интернета самые узкие места.
Роутеры штурмуют DHCP-серверы
Сразу после включения домашний роутер делает одно обязательное действие — запрашивает у провайдера IP-адрес. Этот процесс описан в стандарте RFC 2131 и называется DHCP. Устройство рассылает широковещательный пакет — DHCPDISCOVER — в сеть, один из серверов провайдера отвечает и выдает адрес. Вся процедура занимает секунды.
В обычных условиях такие запросы рассредоточены во времени: один роутер включили утром, другой перезапустился после грозы, третий — при плановом обновлении прошивки. Серверы провайдеров рассчитаны на этот размеренный поток. RFC 2131 даже предусматривает случайный сдвиг тайминга — «джиттер» — чтобы сглаживать пики при локальных авариях в пределах одного района. Но джиттер бессилен, когда речь идет о 700 миллионах устройств по всей планете.
Убери этот временной разброс — и серверы провайдеров получат одновременных запросов в тысячи раз больше расчетного. Они не сломаются: просто перестанут успевать отвечать. Устройства начнут ждать и повторять попытки, каждый раз добавляя новые пакеты в уже перегруженный поток.
DNS-серверы тоже не справляются
Пока роутеры ждут IP-адрес, следующая волна нагрузки уже формируется. Получив адрес, каждое устройство и каждое приложение на нем начинают выяснять, где живут нужные серверы. Браузер спрашивает DNS о google.com, телефон — о серверах синхронизации, умная колонка — о своем облаке. Обычно такие ответы хранятся в кеше резолвера (временном хранилище, где сохраняются результаты DNS-запросов). При перезагрузке кеш сброшен, и все запросы идут напрямую к серверам.
Публичные DNS-серверы — например, 8.8.8.8 от Google или 1.1.1.1 от Cloudflare — работают через anycast: один адрес обслуживают сотни узлов по всему миру, что в норме отлично распределяет нагрузку. Но при одновременном старте сотен миллионов устройств с пустым кешем очередь на обработку вырастет с миллисекунд до секунд и минут. Серверы при этом живы, просто адрес никто не успевает найти вовремя, и сайты кажутся недоступными.
Маршруты в интернете начинают плыть
BGP — протокол, по которому интернет-провайдеры и крупные сети договариваются о путях передачи данных. Когда провайдер захлебывается под потоком DHCP- и DNS-запросов, его маршрутизаторы начинают работать нестабильно. Соседние сети это замечают: BGP-сессии между ними нервно мигают, обновления маршрутов задерживаются.
В обычных условиях BGP сходится — находит стабильные маршруты после аварии за 3−15 минут. При одновременном давлении по всей планете нестабильность распространяется шире: маршруты провисают, пакеты теряются или уходят обходными путями с лишними задержками. Магистральные кабели целы, трафик не разорван, он просто встал.
Именно такой механизм сработал в октябре 2021 года, когда Facebook (принадлежит компании Meta, которая признана в России экстремистской и запрещена) случайно отозвал собственные BGP-маршруты: DNS-серверы компании стали недоступны из любой точки интернета, и все сервисы пропали примерно на шесть часов. Там был один неверный сигнал в одной компании. В нашем сценарии источников нестабильности — 700 миллионов.
Постоянные соединения рвутся первыми
Платежные системы, VoIP-звонки и облачные сервисы держатся на постоянных соединениях: пока связь есть, данные текут. Перезагрузка роутера обрывает соединение на стороне клиента, и сервер, не дождавшись пакетов, закрывает его сам.
В штатной ситуации приложение переподключается за секунды. Но при нашем сценарии переподключиться пытаются сразу все: мобильный банк, видеозвонок, игровой сервер, умный замок. Серверы захлебываются запросами на установку новых сессий в момент, когда DNS ещe в очереди, а маршруты нестабильны. Транзакция, не успевшая записаться до обрыва, зависает. Платеж, начатый за секунду до перезагрузки, скорее всего вернется с ошибкой.
Быстрее всего придут в норму сервисы с сильным кешем и без длинных цепочек зависимостей: статические сайты, CDN. Медленнее — финансовые платформы с жесткими требованиями к согласованности данных.
Восстановление будет неравномерным
Если перезагрузка произошла синхронно по UTC, первой из ступора выйдет Азия. Местные провайдеры разберут очередь запросов, трафик двинется, пусть и с задержками из-за нестабильных маршрутов до западных серверов. Европа и Северная Америка подтянутся следом по часовым поясам.
Авария Fastly в июне 2021 года показывает, как быстро глобальная сеть восстанавливается при хорошей организации: 85 процентов трафика упало за минуты, а через 49 минут 95 процентов сети уже работало в норме. Но там был один сбой с одной точкой входа. В нашем сценарии таких точек — 700 миллионов, единого рубильника нет. По аналогии с аварией Facebook (принадлежит компании Meta, которая признана в России экстремистской и запрещена), где восстановление потребовало около шести часов ручной работы, нормализация в нашем случае заняла бы от двух до шести часов. Без единой физической поломки — только из-за перегрузки живых систем.
Главный парадокс
Главный парадокс сценария именно в этом: физически интернет не пострадал бы ни на байт. Ни один кабель не перегорел, ни один сервер не сломался. Просто 700 миллионов устройств попросили об одном и том же в одну секунду — и этого оказалось достаточно, чтобы парализовать сеть, которую строили с расчетом на любые отдельные катастрофы.
Ранее мы рассказывали, почему Агентство национальной безопасности США советует перезагружать домашний роутер раз в месяц и что это дает для защиты от взлома.
Источник новости: hi-tech.mail.ru

