# Утечка DNS

Утечка DNS происходит, когда клиент разрешает имена целевых хостов через собственный резолвер, а не через прокси. В результате локальная сеть или интернет-провайдер узнают, какие сайты посещаются, хотя сами запросы проходят через выходной узел. При использовании HTTP-прокси имя хоста отправляется прокси, поэтому утечки не происходит; при SOCKS5 всё зависит от того, передаёт ли клиент имя (socks5h) или сначала разрешает его сам (socks5).


## Когда возникает проблема

- Клиенты SOCKS5, настроенные на `socks5://` вместо `socks5h://`.
- Браузеры, которые используют системный DNS или DNS-over-HTTPS и выполняют разрешение имён в обход прокси.
- Скрипты, которые один раз разрешают имя локально, а затем подключаются к IP-адресу через прокси: правильная цель, утечка запроса DNS и, возможно, неверный пограничный узел CDN.


## Почему это также меняет результаты

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


## Как это работает в HodlProxy

HodlProxy разрешает имена хостов на выходном узле для HTTP(S) и для соединений SOCKS5, передающих имя хоста; в примерах кода используется socks5h там, где клиент различает эти варианты.

Источник: https://hodlproxy.com/ru/glossary/dns-leak
