Июньская ситуация с недоступностью ресурсов из-за блокировок веб-сайтов
Все провайдеры интернета в России вынуждены блокировать ссылки, внесенные в Единый реестр запрещенных сайтов. Он представляет собой огромную свалку ссылок (в том числе не соответствующих стандартам), доменов и IP-адресов. Общей методики блокировок не существует, есть только абстрактные рекомендации от Роскомнадзора, поэтому каждый провайдер блокирует сайты по-своему, в меру понимания реестра, своей технической продвинутости и бюджета.
Подавляющее большинство провайдеров используют те или иные системы анализа трафика, чтобы блокировать конкретные URL, а не IP-адрес: аппаратные комплексы DPI, открытые DPI под Linux, прозрачные прокси-серверы. Этого вполне достаточно для блокировки ссылок в HTTP, но не все системы поддерживают анализ домена (параметра SNI) в HTTPS-трафике, из-за чего провайдерам с такими системами приходится блокировать HTTPS-ссылки реестра по IP-адресу.
Также в реестре есть сайты, внесенные по домену, без указания протокола. Некоторые провайдеры блокируют такие записи по IP-адресу, другие — только HTTP и HTTPS-протокол у этих доменов. Чтобы не покупать дорогие конфигурации DPI, которые могут анализировать весь огромный поток трафика, провайдеры пропускали через DPI только известные IP-адреса заблокированных сайтов, и обходились конфигурацией дешевле. У каждой записи в реестре, будь то домен или ссылка, есть свой список IP-адресов. До конца января этого года провайдерам, блокирующим частично или полностью по IP-адресам, достаточно было фильтровать доступ только к IP-адресам из реестра. В конце января обновилось ПО «Ревизора» — системы, проверяющей, насколько качественно провайдер блокирует веб-сайты. Если раньше «Ревизор» пытался открыть сайт по одному IP-адресу из DNS, как любой обычный браузер или программа, то после обновления совершает запросы по всем IP-адресам и из DNS-ответа, и из реестра. Вместе с этим, провайдеров начали штрафовать за открывшиеся сайты, не было никаких поблажек и допустимого порога внезапно открывшихся сайтов.
Дабы не быть оштрафованными, провайдеры начали постоянно проверять, не появились ли на домене новые IP-адреса, и добавлять их в списки блокируемых и пропускаемых через DPI.
Веселье начинается…
Начиная с 29 мая, люди начали потихоньку скупать разделегированные домены из реестра, которые были добавлены в 2014-2016 годах, и устанавливать на них A-записи на IP-адреса популярных ресурсов. Провайдеры резолвили эти домены, добавляли IP-адреса в список блокируемых, доступ к ресурсам пропадал. Первые шутники добавили записи Вконтакте и Яндекса, из-за чего некоторые провайдеры заблокировали к ним доступ. Роскомнадзор прислал следующее уведомление:
Затем последовала частичная неработоспособность Telegram и некоторых других сайтов. При особом стечении обстоятельств, если IP-адрес ресурса добавили на домен, внесенный без URL, или на URL с HTTPS, и трафик до сайта приходил через провайдера, который реализует блокировки для транзитного трафика, сайт становился недоступен сразу ото всюду, глобально для всех.
От транзитных блокировок пострадали в основном ресурсы, проходящие через Ростелеком и ТТК:
- Корневые DNS
- ntv.ru
- nag.ru
- avito.ru
- 3ds.sdm.ru
- acs.bspb.ru
На антизапрете долгое время есть система определения аномалий, чтобы исключать IP-адреса популярных ресурсов из списка проксирования, если владелец заблокированного домена установил A-запись на этот IP-адрес. Список IP-адресов для определения аномалий составлял сам, в него попали популярные мировые и российские сайты, корневые DNS и DNS распространенных доменных зон, технические банковские домены. Проснувшись утром в понедельник, я обнаружил большое количество аномалий, удивился, и решил проверить доступность некоторых сервисом ping-admin.ru — результат на скриншоте выше. Не знаю, как долго они продержались и на каком домене были установлены, т.к. скрипт запускался раз в 6 часов и выдавал только список IP-адресов (сейчас я его уже модифицировал). В последующей выгрузке этих IP уже не было.
…и продолжается
7 июня, в неумелых попытках исправить ситуацию, Роскомнадзор составил и направил «белый» список сайтов провайдерам, с IP-адресами и доменами, которые лучше бы не блокировать.
Роскомнадзор объединил ячейки в XLS-документе так, что каждую вторую запись не было видно, и многие долго пытались понять, почему, например, одни корневые DNS-серверы в него вошли, а другие — нет. Все стало ясно, когда кто-то додумался установить высоту всех ячеек в одинаковое значение.
Весельчаки-затейники начали оставлять в DNS-записях послание Роскомнадзору и провайдерам (есть даже от от 14-летнего мальчика), а также сделали собственный сервис блокирования произвольных IP-адресов!
Позже очнулись магистральные провайдеры. Поняв, что так дела не делаются, Транстелеком сначала начал проксировать все запросы к заблокированным сайтам в транзите (буквально, через squid, с изменением исходящего IP-адреса), а затем начал отключать блокирование транзитного трафика, заставляя мелких провайдеров фильтровать сайты самостоятельно.
Последняя аномалия выглядит следующим образом:
Судя по сервису ping-admin.ru, из некоторых локаций имеются проблемы с доступом, как минимум, к meduza.io и tjournal.ru.
Чего ждать дальше
Ау, Роскомнадзор! Может, уже что-нибудь, ну, скажете, хотя бы, если не сделаете? Вы там сдохли, что ли? Вторая неделя близится к завершению, а вы молчите. Буквально несколько часов назад произошли масштабные сбои в обслуживании банковских карт (но, похоже, это не связано с блокировками).