Repolode
razvandimescu

razvandimescu/numa

Портативный DNS-резолвер на Rust: блокирует рекламу, назначает локальным сервисам домены .numa и может защищать запросы с помощью ODoH.

Open source альтернатива:Pi-holeAdGuard Home

Звёзды
1,977
Форки
140
Открытые issues
29
Последний коммит
22 часа назад

Что это?

Numa — DNS-резолвер в виде единого бинарного файла, который работает на ноутбуке без облачной учётной записи или специального оборудования. Он блокирует рекламу и трекеры с помощью списков Hagezi Pro, позволяет обращаться к локальным сервисам разработки по именам вроде frontend.numa с автоматической настройкой HTTPS и поддерживает переопределение любых имён хостов с автоматическим возвратом исходного значения.

Резолвер может пересылать запросы существующему системному DNS, рекурсивно разрешать имена, начиная с корневых серверов, с проверкой DNSSEC или отправлять запросы через ретранслятор ODoH, чтобы ни одна сторона не видела одновременно и данные о клиенте, и его запрос. Кроме того, он обслуживает клиентов DNS-over-TLS и DNS-over-HTTPS и может работать как общедоступный ретранслятор ODoH. Парсер DNS wire-протокола написан с нуля, без DNS-библиотек.

Установить Numa можно через Docker, Homebrew, Cargo, Nix, пакеты Arch и установочные скрипты. Команда установки регистрирует системную службу, направляет системный DNS через Numa и добавляет доверие к локальному центру сертификации. Numa также поддерживает обнаружение сервисов по mDNS между несколькими компьютерами в локальной сети.

Ключевые возможности

  • 01Блокирует рекламу и трекеры с помощью списков Hagezi Pro, которые обновляются ежедневно.
  • 02Разрешает локальные домены .numa с поддержкой HTTPS и WebSocket passthrough.
  • 03Переопределяет имена хостов с автоматическим возвратом исходного значения; управлять этим можно через REST API.
  • 04Поддерживает рекурсивное разрешение имён с проверкой DNSSEC.
  • 05Шифрует запросы к вышестоящим DNS-серверам с помощью DoH, DoT или ODoH.
  • 06Обслуживает клиентов DoT и DoH, включая iOS Private DNS.

Сценарии использования

  • Назначать имена локальным серверам разработки и открывать их в браузере по HTTPS.
  • Блокировать рекламу и трекеры в домашней или офисной сети.
  • Запустить частный рекурсивный резолвер с проверкой DNSSEC.
  • Передавать DNS-запросы через ретранслятор ODoH для защиты конфиденциальности.

Быстрый старт

  1. 1

    Установить с помощью Homebrew (macOS)

    brew install razvandimescu/tap/numa
  2. 2

    Запустить Numa в режиме переднего плана (для порта 53 нужны права root)

    sudo numa
  3. 3

    Проверить запрос к локальному резолверу

    dig @127.0.0.1 example.com

Что важно знать

  • В README уровень зрелости Numa указан как New, поэтому у него меньше опыта эксплуатации, чем у Pi-hole, AdGuard Home или Unbound.
  • В Numa нет DHCP и кластеризации, а большинство настроек задаётся в конфигурационном файле, а не на панели управления.

В подборках

Темы

Частые вопросы

Что такое numa?
Портативный DNS-резолвер на Rust: блокирует рекламу, назначает локальным сервисам домены .numa и может защищать запросы с помощью ODoH. Numa — DNS-резолвер в виде единого бинарного файла, который работает на ноутбуке без облачной учётной записи или специального оборудования. Он блокирует рекламу и трекеры с помощью списков Hagezi Pro, позволяет обращаться к локальным сервисам разработки по именам вроде frontend.numa с автоматической настройкой HTTPS и поддерживает переопределение любых имён хостов с автоматическим возвратом исходного значения.
numa можно использовать бесплатно? Какая у него лицензия?
numa распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
numa всё ещё поддерживается?
Активно поддерживается. Последний коммит в numa — 6 нояб. 2026 г..
Для чего можно использовать numa?
Назначать имена локальным серверам разработки и открывать их в браузере по HTTPS. Блокировать рекламу и трекеры в домашней или офисной сети. Запустить частный рекурсивный резолвер с проверкой DNSSEC. Передавать DNS-запросы через ретранслятор ODoH для защиты конфиденциальности.
Как установить numa?
Установить с помощью Homebrew (macOS): brew install razvandimescu/tap/numa Запустить Numa в режиме переднего плана (для порта 53 нужны права root): sudo numa Проверить запрос к локальному резолверу: dig @127.0.0.1 example.com
Где скачать numa?
Исходный код и инструкции по установке — на GitHub: https://github.com/razvandimescu/numa

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Локальный DNS-сервер, который опрашивает несколько вышестоящих резолверов и возвращает для каждого домена IP-адрес с самым быстрым откликом.

11,4 тыс.+21 за неделю1,3 тыс.CGPL-3.0Активно поддерживаетсяОбновлён вчера

Рекурсивный DNS-резолвер с проверкой DNSSEC и кэшированием, созданный для высокой скорости и экономного использования ресурсов.

5 тыс.+23 за неделю471CBSD-3-ClauseАктивно поддерживаетсяОбновлён позавчера

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

14,4 тыс.+14 за неделю2,6 тыс.GoApache-2.0Активно поддерживаетсяОбновлён 17 часов назад

Локальный блокировщик рекламы на уровне ОС, написанный на чистом Bash: блокирует рекламные домены во всех браузерах и приложениях через файл hosts или Dnsmasq.

1,9 тыс.72ShellApache-2.0Обновлён 3 месяца назад