ТехТок №4. Рассказываем об основах DNS-фильтрации и DNS-приватности
Мы продолжаем серию статей ТехТок, где мы отвечаем на ваши вопросы о блокировке рекламы, работе VPN-сервисов и других цифровых технологий. В предыдущих выпусках мы уже осветили несколько тем, связанных с VPN и блокировкой рекламы, так что сегодня пришла очередь вопросов про DNS-фильтрацию и DNS-приватность. Кажется логичным начать с этого вопроса от Lenny:
Как работает AdGuard DNS? Какие плюсы и минусы у DNS-фильтрации в сравнении с обычной блокировкой рекламы, когда лучше использовать тот или иной метод?
DNS-фильтрация — важный инструмент в защите приватности и блокировке рекламы, и чтобы лучше понять, как она устроена, сначала надо освежить в памяти принцип работы самого DNS.
Представим, что вы вводите название сайта в адресную строку браузера или кликаете по ссылке. Как браузер понимает, какой сайт открыть? Ведь ему понятен лишь язык цифр, то есть IP-адресов, а человеческий язык (например, google.com
) он не понимает. Чтобы узнать IP-адрес запрашиваемого вами сайта, браузер обращается к DNS-серверу. DNS расшифровывается как Domain Name System, или «Система доменных имён», и эта система служит для перевода доменных имён (таких как google.com
) в IP-адреса (такие как 74.125.139.139
). Существует множество DNS-серверов, которые служат такими переводчиками, и вы можете использовать любой из них. Ваш интернет-провайдер предоставит вам DNS-сервер по умолчанию, но ничто не мешает вам переключиться на использование любого другого.
Как работает DNS
«Обычный» DNS-сервер на каждый запрос просто вернёт нужный IP-адрес сайта, не задавая лишних вопросов. Существует, однако, немало DNS-серверов, которые при определённых условиях вместо правильного IP-адреса вернут 0.0.0.0
, тем самым направляя браузер «в никуда». Именно так и устроена работа блокирующих DNS-серверов, включая AdGuard DNS.
Базовый принцип работы DNS-фильтрации
Различные серверы могут иметь различные списки блокируемых доменов — в случае AdGuard DNS это длинный список рекламных, трекинговых и вредоносных доменов.
Давайте теперь сравним DNS-фильтрацию с обычной. Её основной недостаток очевиден — при помощи DNS-фильтрации можно блокировать только домены целиком. Ей недостаёт более тонкого подхода веб-фильтрации, где можно блокировать конкретные запросы, применять «косметические» правила, чтобы придать странице более опрятный вид после блокировки рекламных элементов, и делать многое другое. Почти все недостатки DNS-фильтрации так или иначе происходят от этой проблемы и могут быть описаны одной фразой: «недостаток гибкости». А есть ли преимущества?
Есть! В первую очередь, это способность легко и просто настроить DNS-фильтрацию на практически любом устройстве, подключённом к интернету — телефоны и планшеты, умные телевизоры, даже элементы «умного дома». Если для обычной сетевой фильтрации вам потребуется браузерное расширение или самостоятельное приложение, то для DNS-фильтрации достаточно буквально поменять одну строку в настройках вашего роутера, и все устройства, подключённые к вашему домашнему Wi-Fi, окажутся защищены от рекламы и трекеров.
Ещё одна отличительная особенность DNS-фильтрации в том, что она применяется на самом раннем этапе, так что в определённом смысле это наиболее эффективный метод блокировки рекламы и трекинга, особенно на мобильных устройствах, где вопрос расхода батареи и трафика может стоять особенно остро.
Суммируя сказанное выше и отвечая на последнюю часть вопроса Lenny: в идеале дополнять сетевую фильтрацию DNS-фильтрацией на всех устройствах, где это возможно. Они дополняют друг друга, особенно в вопросах защиты от слежки. Если же необходимо сделать выбор и ваше устройство это позволяет, рекомендуем сделать выбор в пользу обычной веб-фильтрации — она более гибкая и обеспечит лучшую защиту. А на таких устройствах, как роутеры и умные телевизоры, стоит предпочесть DNS-фильтрацию, поскольку для них это может быть единственная доступная опция.
Теперь, когда мы знаем как работает DNS и DNS-фильтрация, пришло время поговорить о том, как обеспечить безопасность и приватность своего DNS-соединения. Тон разговору задаст этот простой вопрос от xiulou:
Что вы думаете о протоколе DNScrypt?
Как и обычный веб-трафик, который нужно защищать, чтобы злоумышленники не могли его перехватить, ваш DNS-трафик также нуждается в защите. DNSCrypt был одной из первых попыток зашифровать DNS-запросы, чтобы защитить их от слежки. В своё время это был серьёзный прорыв в области DNS-приватности, но в первую очередь из-за того, что альтернатив ему практически не существовало. DNSCrypt используется до сих пор (и AdGuard DNS поддерживает его), но он давно находится в тени более современных протоколов DNS-over-HTTPS и DNS-over-TLS.
К слову о них. Дмитрий спрашивает:
Пожалуйста, объясните «для чайников», как работают DNS-over-TLS и DNS-over-HTTPS?
На долю DNSCrypt, несмотря на его статус пионера DNS-шифрования, сегодня приходится менее 10% всех зашифрованных DNS-запросов. Гораздо более популярные протоколы — это DNS-over-TLS (DoT) и DNS-over-HTTPS (DoH), которые суммарно составляют почти 90% всего зашифрованного DNS-трафика. Давайте попробуем разобраться в том, как они устроены.
В случае незашифрованного DNS, когда ваш браузер запрашивает IP-адрес сайта, на который вы хотите перейти, он открытым текстом посылает на DNS-сервер запрос с доменным именем этого сайта. Это означает, что любой, кто «подслушивает» ваш DNS-трафик, не встречает никаких препятствий и может легко определить каждый сайт, который вы пытаетесь посетить — это совсем не конфиденциально.
С DoH ваше общение с DNS-сервером зашифровано при помощи HTTPS — всем известный широко распространённый протокол, который втречается в сети повсеместно (вспомните иконку с замочком рядом с адресной строкой в браузере). Каждый DNS-запрос, который ваш браузер посылает через DoH, зашифрован путём «заворачивания» внутрь HTTPS-запроса. Это не только обеспечивает защиту само по себе, но и маскирует ваш DNS-трафик под обычный HTTPS-трафик для внешнего наблюдателя. Таким образом, третьи лица могут даже не понять, что видят перед собой DNS-запрос, не говоря уже о том, чтобы заглянуть внутрь него.
DoT работает несколько иначе. Он использует протокол TLS для создания прямого, защищённого туннеля между вашим браузером и DNS-сервером, по которому DNS-запросы путешествуют в обе стороны. Это обеспечивает защиту DNS-трафика, но в то же время делает его обнаружение тривиальным для любого наблюдателя, так как позволяет легко отличить его от HTTPS-трафика. В общем и целом, оба протокола обеспечивают защиту, но делают это по-разному и у каждого есть своё применение.
Вы задали нам и другие вопросы на тему DNS, но невозможно вместить все ответы в одну статью. Мы обязательно вернёмся к теме DNS-фильтрации и DNS-приватности в будущем — присылайте ваши вопросы на эти и другие темы через специальную форму, и вы можете увидеть ответы на них уже в следующем выпуске ТехТока!