Статья XDA о блокировании объявлений на ESP32 указала на правильный момент: для многих домов плата ESP32-S3 стоимостью $8 может быть первичным DNS-сервером для домашнего трафика, отсеивая домены с объявлениями и трекерами, работая от USB-порта под маршрутизатором и потребляя рабочую мощность лишь часть того, что потребляет Pi-hole. Проблема в том, что ESP32 не делает некоторые вещи. Он работает с одним списком блокировки за раз. Нет панели управления, нет политик для отдельных устройств, и нет простого способа посмотреть, что было заблокировано прошлой ночью. Так что ESP32 перестает быть интересным сам по себе и становится интересным как часть стека.
Вот семь приложений для рабочего стола, которые мы используем вместе с DNS-поглотителем на базе ESP32 или вместо него, когда домохозяйство вырастает из одной крошечной платы. Большинство также полезны, если вы планируете позже заменить ESP32 на полноценный Pi-hole или AdGuard Home.
На что обратить внимание в стеке блокировки DNS
Компоненты, которые делают сетевой DNS-блокировщик действительно полезным:
- Интерфейс управления, который сообщает, что было заблокировано и кем, а не просто работающий счетчик.
- Управление списками блокировки, которое может загружать, дедублицировать и контролировать версии нескольких списков.
- Зашифрованный восходящий поток (DoH или DoT), чтобы трафик DNS, который ваш поглотитель перенаправляет, не был виден провайдеру.
- Дополнительная политика для отдельных устройств или групп (устройства детей получают один список, телевизор получает другой).
- Путь резервного копирования и восстановления, который переживет смерть SD-карты или перепрошивку ESP32.
- Метрики, которые вы можете графически представить, в идеале в существующий стек Prometheus/Grafana или InfluxDB.
Хорошо построенный стек сочетает быстрый, низкопотребляющий поглотитель (ESP32 или Pi-hole) с одним или двумя из этих приложений на рабочем столе или NAS, работающих панель управления и метрики.
Быстрое сравнение
| Приложение | Лучше всего для | Работает на | Лицензия | Выделяющееся |
|---|---|---|---|---|
| Pi-hole | Стандартный интерфейс, сообщество и экосистема списков блокировки | Linux (Docker, Pi, NUC) | EUPL | Лучшая панель управления в списке |
| ESP32_AdBlocker | Сам низкопотребляющий поглотитель | ESP32-S3 загруженный с цепочки инструментов рабочего стола | GPL | Ватты, не десятки ватт |
| AdGuard Home | Более чистая установка единственного двоичного файла с встроенным зашифрованным DNS | Linux, Windows, macOS | GPL | DoH/DoT/DoQ из коробки |
| Technitium DNS | Полный авторитетный + рекурсивный сервер с блокировкой | Windows, Linux, macOS | GPL | Настоящий DNS-сервер, не просто фильтр |
| NextDNS | Управляемый профиль, который можно использовать с локальным поглотителем | Веб, приложения для всех платформ | Собственный (бесплатный уровень) | Профили по устройствам без работы в домашней лаборатории |
| Blocky | Блокировщик с малым объемом памяти для Kubernetes или Docker домашней лаборатории | Linux (Docker, K8s) | Apache 2.0 | Чистейшие метрики Prometheus |
| Unbound | Рекурсивный резолвер в восходящем потоке к любому из указанных выше | Linux, macOS, Windows | BSD | Удаляет DNS провайдера из цикла |
Приложения
1. Pi-hole - лучшая панель управления и сообщество
Pi-hole - это справочное издание. Двенадцать лет документации, сотни кураторских списков блокировки, статистика для каждого клиента, журналы запросов для каждого домена, групповая политика и интерфейс администратора, который не-технические люди могут читать без помощи. Даже если ваш поглотитель - это ESP32, запуск Pi-hole на мини-ПК или на хосте Docker в качестве «мозга», который управляет списками и просматривает, что заблокировано, это обычное сочетание.
Где он не дотягивает: Более высокое энергопотребление, чем ESP32. Требует больше диска, чем голый микро. Зашифрованный восходящий поток требует сопряжения с cloudflared или dnscrypt-proxy, поскольку сам Pi-hole не говорит DoH.
Ценообразование:
- Бесплатно, лицензия EUPL
Платформы: Linux (Docker или голый металл), Raspberry Pi, мини-ПК x86.
Загрузка: Pi-hole
Суть: Установите сначала. Запустите его как панель управления, даже если фактическая блокировка происходит на ESP32 выше по потоку.
2. ESP32_AdBlocker - лучший низкопотребляющий поглотитель
ESP32_AdBlocker - это встроенное ПО, о котором на самом деле говорит статья XDA. Загрузите плату ESP32-S3-N16R8 с эскизом s60sc/ESP32_AdBlocker, подключите ее и укажите в маршрутизаторе ее IP в качестве DNS-сервера. Поиски возвращаются менее чем за 50 микросекунд для кэшированных доменов, RAM остается в пределах бюджета PSRAM, и все это потребляет меньше энергии, чем светодиодная лента под вашим столом.
Где он не дотягивает: Один список блокировки за раз. Нет панели управления, кроме базовой веб-страницы. Обновления встроенного ПО вручную. Списки блокировки живут во флэш-памяти, поэтому большой список означает планирование разделов.
Ценообразование:
- Бесплатно, GPL. Оборудование стоит около $8-15 за плату плюс PSRAM
Платформы: ESP32-S3 (загрузить из Arduino IDE или PlatformIO на Windows, macOS, Linux).
Загрузка: ESP32_AdBlocker на GitHub
Суть: Лучший выбор для низкопотребляющего домашнего поглотителя. Сопрягите его с Pi-hole или AdGuard Home выше по потоку, чтобы не потерять панель управления.
3. AdGuard Home - лучшая альтернатива одному двоичному файлу Pi-hole
AdGuard Home - это одиночный двоичный файл Go, который делает большую часть того, что делает Pi-hole, с меньшим бюджетом на установку. DoH, DoT и DoQ встроены, правила для каждого клиента поставляются из коробки, а интерфейс родительского контроля более отполирован, чем у Pi-hole. Установите его на тот же мини-ПК Linux, на котором работает все остальное, и он останется незамеченным.
Где он не дотягивает: Сообщество меньше, чем у Pi-hole. Меньше кураторских сторонних списков блокировки в браузере по умолчанию.
Ценообразование:
- Бесплатно, GPL. Облачный DNS AdGuard - это отдельный платный продукт
Платформы: Linux (нативный или Docker), Windows, macOS.
Загрузка: AdGuard Home
Суть: Лучший выбор, когда вы предпочли бы загрузить один двоичный файл, чем настраивать установку Pi-hole.
4. Technitium DNS - лучше всего для полного DNS-сервера, а не просто фильтра
Technitium DNS - это настоящий DNS-сервер с прикрепленной блокировкой. Он запускает рекурсию, авторитетные зоны, DoH, DoT и DoQ все в одном процессе. В домашней лаборатории, где поглотитель - это только часть истории (пользовательские внутренние зоны, раздельный горизонт или самостоятельно размещенный домен), Technitium удаляет целый класс проблем “почему мне нужен второй DNS-сервер”.
Где он не дотягивает: Большая площадь поверхности, чем требуется для блокировщика. Кривая обучения наказывает людей, которые “просто хотят, чтобы объявления исчезли”.
Ценообразование:
- Бесплатно, GPL
Платформы: Windows, Linux, macOS, Docker.
Загрузка: Technitium DNS
Суть: Лучший выбор, когда домохозяйству нужен настоящий DNS-сервер, а не просто фильтр.
5. NextDNS - лучший управляемый уровень для сопряжения с локальным поглотителем
NextDNS - это управляемый DNS-профиль, который вы настраиваете в браузере и указываете на него устройства. Он обрабатывает списки блокировки, аналитику и профили для каждого устройства без запуска локального сервера. Сопрягите его с ESP32-поглотителем и вы получите двухслойную защиту: локальная коробка блокирует самых громких нарушителей на скорости LAN, NextDNS обрабатывает длинный хвост и путешествует с вашим телефоном вне домашнего Wi-Fi.
Где он не дотягивает: На основе облака, поэтому подмножество запросов DNS покидает сеть. Бесплатный уровень ограничивает ежемесячные запросы.
Ценообразование:
- Бесплатно до 300 000 запросов в месяц
- Платный по $1,99/месяц персональный, $2,99/месяц Pro
Платформы: Веб-конфигурация; встроенные приложения для Android, iOS, Windows, macOS, Linux.
Загрузка: NextDNS
Суть: Лучший выбор для “блокировать также на телефоне вне Wi-Fi”. Сопрягите с локальным поглотителем для лучшего результата.
6. Blocky - лучший блокировщик с малым объемом памяти для Docker домашней лаборатории
Blocky - это одиночный двоичный файл Go с конечной точкой Prometheus из коробки. Это то, к чему многие из нас обращаются на домашней лаборатории Kubernetes, где контейнер администратора Pi-hole кажется тяжелым. Настройте списки блокировки в YAML, получите чистые метрики в Grafana и забудьте об этом.
Где он не дотягивает: Нет интерфейса администратора; конфигурация - это YAML и перезагрузка. Аналитика находится в Grafana, а не в комплектной панели управления.
Ценообразование:
- Бесплатно, Apache 2.0
Платформы: Linux (Docker, Kubernetes), Windows, macOS.
Загрузка: Blocky на GitHub
Суть: Лучший выбор, когда домашняя лаборатория уже имеет Grafana и Prometheus, и интерфейс будет избыточным.
7. Unbound - лучший рекурсивный резолвер выше всего стека
Unbound - это рекурсивный резолвер, который выбирают параноики, чтобы сидеть между своим поглотителем и интернетом. Он удаляет зависимость от DNS Cloudflare, Google или ISP, прогуливаясь по DNS-дереву самостоятельно. Маленький объем памяти, хорошо задокументирован, и резолвер выбора в сообществе Pi-hole именно по причине “нет DNS третьих лиц в цикле”.
Где он не дотягивает: Не блокирует ничего самостоятельно. Первые несколько запросов на домен медленнее, чем резолвер с теплым кэшем.
Ценообразование:
- Бесплатно, лицензия BSD
Платформы: Linux, macOS, Windows, поставляется в большинстве репозиториев дистро.
Загрузка: Unbound
Суть: Установите в качестве восходящего потока от Pi-hole, AdGuard Home или Blocky, когда провайдер DNS третьей стороны является категорическим отказом.
Как выбрать правильный
Если вы просто хотите, чтобы объявления исчезли: начните с AdGuard Home на мини-ПК. Самая простая установка, панель управления в комплекте, зашифрованный восходящий поток в коробке.
Если вам нужно самое большое сообщество и отполированная панель управления: запустите Pi-hole, добавьте Unbound в качестве восходящего потока и рассматривайте ESP32 как резервный.
Если ватты важнее всего остального: запустите ESP32_AdBlocker в качестве первичного поглотителя и управляйте его списком блокировки с мини-ПК.
Если телефон нуждается в блокировке вне домашнего Wi-Fi: сопрягите локальный поглотитель с NextDNS.
Если домашняя лаборатория уже запускает Prometheus и Grafana: Blocky встраивается без другой панели администратора.
Если домохозяйство нуждается во внутренних DNS-зонах, а также в фильтрации: Technitium DNS побеждает.
FAQ
Может ли ESP32 действительно заменить Pi-hole?
Для одного списка, одной настройки домохозяйства - да. Поиски быстры, потребление энергии незначительно, и список блокировки работает. Для правил для каждого устройства, панелей управления и управления несколькими списками, сопрягите ESP32 с Pi-hole или AdGuard Home выше по потоку, или перейдите прямо к одному из них.
Какой лучший DNS-блокировщик объявлений для семьи с устройствами детей?
AdGuard Home для встроенного интерфейса родительского контроля или Pi-hole с групповой политикой. NextDNS добавлен, если вы хотите применить фильтрацию на телефонах вне домашнего Wi-Fi.
Нужно ли мне зашифрованное DNS для моего восходящего потока?
Да, если вы не доверяете DNS вашего провайдера, чтобы остаться нетронутым. AdGuard Home и Technitium DNS говорят DoH и DoT родным. Pi-hole нуждается в cloudflared или dnscrypt-proxy рядом. Unbound обрабатывает рекурсию от конца к концу, поэтому DNS провайдера вообще не видит запросы.
Какие из них являются открытым исходным кодом?
Pi-hole, ESP32_AdBlocker, AdGuard Home, Technitium DNS, Blocky и Unbound - это все открытый исходный код. NextDNS - это управляемая служба.
Могу ли я комбинировать несколько из них?
Типичный стек домашней лаборатории - это поглотитель (ESP32 или Pi-hole) с Unbound выше по потоку и NextDNS на мобильных устройствах для фильтрации вне сети. Все в этом списке предназначено для композиции.