https://dnscrypt.org/ https://github.com/opendns/dnscrypt-proxy
Под винду, бзды и макось тоже есть.
В чём суть: данное ПО использует ЭЦП и шифрование при передаче/приёме DNS-запросов/ответов. Использование dnscrypt позволяет как обезопаситься от MitM-атак (многие провайдеры, например, перенаправляют ВЕСЬ DNS-трафик на свои DNS-сервера), от лишнего сбора статистики со стороны провайдера/админа/гэбни (кому хочется, чтобы в его личном деле фигурировали всякие mylittlepony-gay-pron.com), от проблем с кривыми локальными DNS-серверами (нет поддержки IPv6, глючат и т.д.).
Лично я у себя сделал так: поднял у себя на роутере dnscrypt как dns-сервер, завернул на него ВЕСЬ dns-трафик, запретил все входящие и исходящие пакеты на 53 UDP/TCP порты на внешнем интерфейсе: теперь нешифрованный DNS точно не пройдёт.
Из особенностей: нужно компилять, нужно выбрать, каким dnscrypt-сервером будете пользоваться. https://github.com/jedisct1/dnscrypt-proxy/blob/master/dnscrypt-resolvers.csv
Может быть крайне полезно в случае использования HTTPS, т.к. из-за SNI до открытия криптоку.
https://www.opendns.com/about/innovations/dnscrypt/ Чем это лучше dnssec? dnssec нужен для безопасности от подмены, но не от прослушки. Суть dnssec, чтобы никто посередине не подставил другой IP в запрошенную А-запись, а также отпечаток SSH-ключа в DNS-запись не поставил свой.
Кстати, слив DNS-запросов при использовании VPN из-за настроенного по DHCP/ранее локального DNS-сервера - стандартная практика.
Пример запуска: dnscrypt-proxy --ephemeral-keys --daemonize --local-address=192.168.0.1:53 --resolver-name=dnscrypt.eu-dk