← На главную

Протокол ODoH повышает анонимность DNS, а Numa упрощает настройку защиты

14.05.2026 10:44 · hackernews

Проблема анонимности при DNS-запросах остается острой, так как стандартные методы вроде DoH или DoT шифруют только транспортный канал, но не скрывают информацию об IP-адресе и домене у посредников. Корпорации вроде Apple решили это через iCloud Private Relay, но этот сервис платный, привязан к iOS и macOS, а альтернативы вроде NextDNS требуют аккаунта. Для самокрутных пользователей до недавнего времени не существовало универсального решения без привязки к платформе. На помощь пришел протокол ODoH (RFC 9230), который реализует принцип разделения информации: релей видит ваш IP, но не знает запрос, а целевой сервер знает запрос, но не ваш IP.

Автор проекта Numa v0.14 выпустил новый инструмент в виде единого бинарника на языке Rust, объединяющего клиента и релей. Этот код использует криптографические примитивы HPKE и rustls без кастомных разработок. Принцип работы прост: клиент шифрует запрос под публичным ключом целевого сервера, релей видит только зашифрованные данные и передает их на авторитетный сервер. Ответ возвращается обратно тем же путем. Для реализации защиты от SSRF добавлен строгий валидатор хостов, исключающий метаданные облачных провайдеров, а также проверка eTLD+1 гарантирует, что релей и целевой сервер принадлежат разным организациям.

Авторы развернули второй публичный релей на сервере odoh-relay.numa.rs, который работает независимо от инфраструктуры Cloudflare. Хотя целевой сервер, будь то Cloudflare или другой провайдер, теоретически может логировать запросы, сам протокол обеспечивает невозможность связать личность пользователя с конкретным доменом. Важно понимать, что защита распространяется только на путь от клиента к релей и к целевому серверу; остальное путешествие пакета до корневого сервера остается открытым текстом, если целевой сервер использует рекурсивный режим. Тестируйте решение с помощью команды cargo install numa, переключив режим в odoh в конфигурационном файле. Проект доступен на GitHub, где также есть инструкции по развертыванию собственного релея с помощью docker-compose за пару часов в выходной день.

Читать оригинал →