// Engineering Log

Что такое Pi-hole: блокировка рекламы для всей сети простыми словами

Опубликовано 22.09.2026

// Быстрый маршрут

Эта статья относится к теме Сети и маршрутизация.

Pi-hole — это DNS-сервер с фильтрацией, который блокирует рекламу и трекеры сразу для всех устройств в сети: компьютеров, телефонов, телевизоров и умных устройств, на которые нельзя поставить расширение для браузера. Pi-hole устанавливают на небольшой компьютер или виртуальную машину в локальной сети и указывают его как DNS-сервер в роутере. После этого запросы к рекламным и следящим доменам получают пустой ответ, а остальные обрабатываются как обычно.

Pi-hole — открытый проект, его можно запустить на Raspberry Pi, на виртуальной машине или в контейнере Docker.

Как это работает

Прежде чем открыть сайт или загрузить рекламный баннер, устройство спрашивает у DNS-сервера IP-адрес домена. Если DNS-сервером выступает Pi-hole, он:

  1. Сверяет домен со списками блокировки.
  2. Если домен найден в списке — возвращает «пустой» ответ, и устройство не может загрузить рекламу или отправить данные трекеру.
  3. Если домена в списках нет — передаёт запрос вышестоящему DNS-серверу и кеширует ответ.

Веб-интерфейс Pi-hole показывает, какие устройства какие домены запрашивают, сколько запросов заблокировано, и позволяет вручную разрешать или запрещать домены.

Что изменилось в Pi-hole v6

В феврале 2025 года вышла шестая версия, которая заметно упростила устройство Pi-hole:

  • Встроенный веб-сервер и REST API теперь находятся в самом pihole-FTL. Отдельные lighttpd и PHP больше не нужны.
  • Настройки собраны в одном файле /etc/pihole/pihole.toml с подробными комментариями. Конфигурация пятой версии переносится автоматически.
  • Подписки на разрешающие списки (allowlists) работают так же, как подписки на списки блокировки, только разрешают домены.
  • HTTPS для веб-интерфейса — со своим сертификатом или с автоматически созданным.
  • Образ Docker построен на Alpine и стал заметно меньше.
  • Веб-интерфейс переделан: настройки разделены на базовый и экспертный режимы.

Если вы читали руководства по старым версиям с lighttpd, setupVars.conf и PHP — для v6 они уже не подходят.

Установка

Понадобится устройство с Linux в локальной сети, доступное круглосуточно, с постоянным IP-адресом: либо статическим, либо закреплённым за ним в DHCP роутера.

Официальный способ установки — одной командой:

bash
curl -sSL https://install.pi-hole.net | bash

Документация Pi-hole сама предупреждает, что запуск скрипта через | bash не даёт прочитать код перед выполнением. Осторожнее скачать скрипт, просмотреть его и запустить отдельно:

bash
wget -O basic-install.sh https://install.pi-hole.net
less basic-install.sh
sudo bash basic-install.sh

Установщик спросит вышестоящий DNS-сервер, сетевой интерфейс и начальные списки блокировки, а в конце покажет пароль от веб-интерфейса. Для Docker есть официальный образ — порядок его запуска описан в разделе Docker документации Pi-hole.

Как направить сеть через Pi-hole

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

Проверьте после настройки:

  • IPv6. Если провайдер и роутер выдают устройствам IPv6, роутер может сообщать им и свой IPv6-адрес DNS. Тогда часть запросов пойдёт мимо Pi-hole. В настройках IPv6 роутера нужно либо указать адрес Pi-hole, либо отключить раздачу собственного DNS.
  • Резервный DNS. Если указать вторым DNS-сервером публичный резолвер, устройства будут периодически обращаться к нему в обход фильтрации. Надёжнее поставить второй экземпляр Pi-hole.
  • DNS внутри приложений и браузеров. Браузеры и приложения с включённым DNS-over-HTTPS обращаются к своим серверам напрямую, и Pi-hole такие запросы не видит.

Если в сети стоит Keenetic, его возможности по DNS и фильтрации описаны в статье «Keenetic: Часть 1 — Роутер с модульной KeeneticOS».

Вышестоящие DNS-серверы

Pi-hole пересылает незаблокированные запросы выбранному резолверу. Варианты:

  • Публичный резолвер провайдера или крупного сервиса — самый простой вариант.
  • Свой рекурсивный резолвер Unbound на той же машине. Официальное руководство Pi-hole настраивает Unbound на порту 5335, а в Pi-hole указывается пользовательский DNS-сервер 127.0.0.1#5335. Тогда запросы не проходят через сторонний DNS-сервис.
  • Шифрованный DNS (DoH, DoT) к вышестоящему серверу. Pi-hole сам его не поддерживает — нужна дополнительная программа-посредник, которая принимает обычные DNS-запросы локально и отправляет их дальше по зашифрованному каналу.

Ограничения

  • Pi-hole блокирует домены, а не содержимое страниц. Реклама, которая приходит с того же домена, что и основной контент, например в видео на крупных платформах, так не блокируется.
  • Иногда списки блокировки задевают нужные сайты. Такие домены добавляют в разрешённые вручную или через подписку на разрешающий список.
  • Если устройство с Pi-hole выключится, клиенты останутся без DNS. Для офиса или семьи с большим числом устройств стоит держать два экземпляра.
  • Списки и сама программа требуют обновления: pihole -up обновляет Pi-hole, pihole -g — списки блокировки.

Pi-hole или AdGuard Home

Ближайшая альтернатива — AdGuard Home (лицензия GPLv3). По сравнению с Pi-hole он умеет из коробки работать с шифрованными вышестоящими серверами (DoH, DoT, DNSCrypt) и сам может выступать сервером DoH и DoT для клиентов. В нём тоже есть встроенный DHCP и родительский контроль. Pi-hole привлекает прозрачностью журналов, большим сообществом и привычностью для тех, кто уже им пользуется. Для домашней сети подойдут оба; если нужен шифрованный DNS без дополнительных программ, проще начать с AdGuard Home.

Типичные ошибки

  • Нет постоянного IP-адреса. Адрес Pi-hole меняется, и сеть теряет DNS.
  • Публичный DNS вторым сервером в роутере. Часть запросов идёт мимо фильтра, и кажется, что Pi-hole «не работает».
  • Забытый IPv6. Устройства получают DNS роутера по IPv6.
  • Веб-интерфейс Pi-hole доступен из интернета. Интерфейс и DNS-сервер должны быть доступны только из локальной сети или через VPN.
  • Слишком много списков блокировки. Больше списков — больше ложных срабатываний. Начинайте со стандартного набора и добавляйте списки по необходимости.

Итог

Pi-hole — простой способ убрать рекламу и трекеры со всех устройств сети сразу и увидеть, какие устройства и куда обращаются. Для работы нужны постоянно включённое устройство, правильная настройка DNS в роутере с учётом IPv6 и понимание, что фильтрация работает на уровне доменов.

Ссылки

// Похожая задача

Если у вас похожая ситуация

Эта статья относится к одной из рабочих тем. Можно продолжить чтение по теме, перейти на главную, чтобы понять, чем я занимаюсь, или сразу открыть услуги.

Тема статьи

Сети и маршрутизация

MikroTik, VPN, маршрутизация, DNS, BGP, доступ и проблемы связности.

Часто с этим приходят

  • Поднять VPN и безопасный доступ в офис или облако
  • Починить маршрутизацию, DNS или нестабильный канал
  • Настроить MikroTik, firewall и внешние подключения

// Следующий шаг

Если вам нужна не только статья, а помощь по этой теме, удобнее сразу перейти в услугу. Главная и подборка материалов остаются рядом.

Открыть услуги

// Contact

Нужна помощь?

Свяжись со мной и я помогу решить проблему

Написать в Telegram

Отвечаю в течение рабочего дня (03:00–13:00 GMT)

Или оставьте заявку здесь:

Подтвердите, что вы не бот.

Написать и получить быстрый ответ