
Содержание
1. Введение: Почему DNS-фильтрация лучше браузерных блокировщиков
2. Как работает AdGuard Home: архитектура и принцип действия
3. Установка AdGuard Home: Linux, Docker, Raspberry Pi и Windows
4. Первоначальная настройка через веб-интерфейс
5. Настройка DNS-серверов: DoH, DoT и DNSCrypt
6. Списки блокировки: лучшие фильтры 2026 года
7. Настройка роутера: защита всей домашней сети
8. Клиентские правила: разные политики для разных устройств
9. Родительский контроль через DNS
10. Пользовательские правила фильтрации: синтаксис и примеры
11. Кастомные DNS-записи и split-horizon DNS
12. Продвинутые техники: DHCP-сервер, rewrites и API
13. Мониторинг, статистика и логирование запросов
14. Безопасность: защита AdGuard Home от внешнего доступа
15. AdGuard Home vs Pi-hole vs NextDNS: сравнение в 2026 году
16. Troubleshooting: решение типичных проблем
17. Часто задаваемые вопросы (FAQ)
18. Заключение: AdGuard Home в 2026 году
Введение: Почему DNS-фильтрация лучше браузерных блокировщиков
Каждый раз, когда вы открываете веб-страницу, ваш браузер делает десятки скрытых запросов помимо основного контента. Запросы к серверам аналитики Google, пикселям Facebook, счётчикам Яндекс.Метрики, рекламным сетям, CDN-серверам для загрузки баннеров. Среднестатистическая новостная страница в 2026 году загружает от 40 до 80 сторонних ресурсов, большинство из которых собирают данные о вас.
Браузерный блокировщик рекламы — uBlock Origin, AdGuard для браузера — решает эту проблему частично. Он видит только трафик браузера и только на том устройстве, где установлен. Ваш Smart TV, передающий данные о просмотренных передачах, смартфон жены с встроенной аналитикой приложений, умный термостат, игровая приставка, голосовой помощник — всё это остаётся вне зоны действия браузерных расширений.
DNS-фильтрация работает иначе. DNS (Domain Name System) — это «телефонная книга» интернета, которая переводит доменные имена в IP-адреса. Прежде чем ваш Smart TV сможет отправить данные на analytics.example.com, он должен получить IP-адрес этого сервера через DNS. Если DNS-сервер возвращает «этот домен не существует» вместо реального IP — соединение не устанавливается вообще. Ни один трекер, ни одно рекламное объявление не загрузится, потому что устройство просто не знает, куда отправить запрос.
AdGuard Home — это open-source DNS-сервер с встроенной фильтрацией, который устанавливается на домашний сервер или Raspberry Pi и становится DNS-резолвером для всей локальной сети. Одна настройка на роутере — и все устройства в сети автоматически получают защиту без установки какого-либо программного обеспечения на каждое из них.
Чем AdGuard Home отличается от аналогов? Pi-hole — наиболее известный конкурент — использует устаревший формат списков блокировки и требует отдельной установки веб-сервера. AdGuard Home написан на Go, поддерживает DNS-over-HTTPS (DoH) и DNS-over-TLS (DoT) «из коробки», имеет более современный синтаксис правил и активно разрабатывается командой Adguard.
В этом руководстве мы пройдём весь путь: от установки на различные платформы до тонкой настройки правил для каждого устройства в сети. Вы узнаете, как правильно выбрать и настроить upstream DNS-серверы с шифрованием, как использовать лучшие списки блокировки 2026 года, как настроить родительский контроль и кастомные DNS-записи для домашней инфраструктуры. Отдельно разберём мониторинг и диагностику, чтобы вы всегда понимали, что происходит в вашей сети.
Руководство рассчитано на пользователей с базовым пониманием работы домашней сети — знать что такое IP-адрес, DNS и роутер достаточно для начала. Продвинутые разделы рассчитаны на более опытных читателей, но снабжены подробными объяснениями каждого шага.
Как работает AdGuard Home: архитектура и принцип действия
Прежде чем переходить к установке, важно понять как AdGuard Home работает изнутри. Это поможет правильно настроить систему и диагностировать проблемы.
#### Жизненный цикл DNS-запроса в AdGuard Home
Когда любое устройство в вашей сети пытается открыть какой-либо сайт, происходит следующее:
Шаг 1 — Устройство отправляет DNS-запрос. Ваш смартфон хочет открыть instagram.com. Операционная система отправляет UDP-пакет на DNS-сервер, IP-адрес которого прописан в настройках сети (полученных от роутера через DHCP). Этим DNS-сервером теперь является AdGuard Home.
Шаг 2 — AdGuard Home проверяет кэш. Если этот домен уже запрашивался недавно и результат ещё не устарел (не истёк TTL), AdGuard Home отвечает мгновенно из кэша без обращения к внешнему DNS.
Шаг 3 — Проверка пользовательских правил. AdGuard Home проверяет список пользовательских правил. Если для домена есть явное правило — разрешить или заблокировать — оно применяется немедленно.
Шаг 4 — Проверка списков блокировки. Домен проверяется по всем активным спискам блокировки. Если совпадение найдено, AdGuard Home возвращает NXDOMAIN (домен не существует) или 0.0.0.0 — устройство получает сигнал «этот адрес недоступен».
Шаг 5 — Проверка списков разрешения. Если домен есть в белом списке (allowlist), он пропускается даже если был бы заблокирован правилом из чёрного списка.
Шаг 6 — Запрос к upstream DNS. Если домен не заблокирован, AdGuard Home отправляет запрос к настроенному upstream DNS-серверу — например, к Cloudflare 1.1.1.1 через зашифрованный канал DNS-over-HTTPS.
Шаг 7 — Ответ и кэширование. Полученный IP-адрес возвращается устройству и сохраняется в кэше AdGuard Home на время TTL записи.
Весь этот процесс занимает от нескольких миллисекунд (если ответ в кэше) до 50-200 мс (если нужен upstream-запрос).
#### Что AdGuard Home умеет блокировать
AdGuard Home работает исключительно на уровне DNS. Это означает, что он может блокировать или разрешать соединения по доменному имени назначения. Это мощный инструмент, но у него есть границы применимости, которые важно понимать.
DNS-фильтрация блокирует: рекламные сети (doubleclick.net, googlesyndication.com и тысячи других), трекеры аналитики (google-analytics.com, pixel.facebook.com), вредоносные и фишинговые домены, домены криптоджекинга, нежелательный контент (домены для взрослых, гемблинг — для родительского контроля).
DNS-фильтрация НЕ блокирует: рекламу, встроенную в контент сайта (например, рекламные вставки YouTube — они загружаются с тех же доменов, что и основной контент), трекинг по IP-адресу без DNS-запроса, HTTPS-содержимое (AdGuard Home не делает MitM — он не читает содержимое зашифрованных соединений, только видит запрашиваемое доменное имя).
#### Архитектурные компоненты AdGuard Home
DNS-резолвер — ядро системы. Реализован на Go, использует библиотеку dnsproxy. Поддерживает UDP/53, TCP/53, DoH (порт 443), DoT (порт 853), DNSCrypt.
Веб-интерфейс — встроенный HTTP-сервер (порт 3000 по умолчанию, изменяется). Написан на React. Предоставляет интерфейс управления, статистику и логи в реальном времени.
База данных — AdGuard Home использует BBolt (встроенная key-value БД на Go) для хранения статистики и логов. Это означает нулевые внешние зависимости — SQLite, MySQL, PostgreSQL не требуются.
DHCP-сервер — опциональный встроенный DHCP-сервер. Позволяет AdGuard Home напрямую выдавать IP-адреса устройствам и ассоциировать имена клиентов с MAC-адресами без дополнительной настройки роутера.
Конфигурационный файл — всё хранится в `AdGuardHome.yaml`. Файл можно редактировать вручную или управлять через веб-интерфейс и REST API.
#### Режимы блокировки
AdGuard Home поддерживает несколько режимов ответа для заблокированных доменов:
Default (NXDOMAIN) — возвращает «домен не существует». Браузер показывает ошибку DNS. Самый чистый вариант, но некоторые приложения могут ругаться.
REFUSED — возвращает REFUSED статус. Чуть более явный сигнал об отказе.
Custom IP — возвращает указанный IP (например, 0.0.0.0 или IP вашего сервера-заглушки). Позволяет показывать кастомную страницу вместо ошибки браузера.
Null IP — возвращает 0.0.0.0 для IPv4 и :: для IPv6. Наиболее совместимый вариант — устройства интерпретируют это как «адрес недоступен» и не пытаются установить соединение.
Установка AdGuard Home: Linux, Docker, Raspberry Pi и Windows
AdGuard Home распространяется как единственный бинарный файл без внешних зависимостей. Это делает установку максимально простой на любую платформу.
#### Требования к системе
Минимальные требования крайне скромны: 512 MB RAM, 1-ядерный CPU, 1 GB свободного места на диске. На практике AdGuard Home потребляет 30–80 MB RAM при обычной нагрузке домашней сети. Raspberry Pi 3B+ с 1 GB RAM справляется без труда даже при нескольких десятках устройств.
Поддерживаемые платформы: Linux (x86_64, ARM, ARM64, MIPS), macOS, Windows, FreeBSD. Docker-образ доступен для всех основных архитектур.
#### Установка на Linux через официальный скрипт
Самый быстрый способ установки — официальный скрипт:
bash
<h2 id="skachat-i-zapustit-skript-ustanovki">Скачать и запустить скрипт установки</h2>
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v
<h2 id="skript-avtomaticheski">Скрипт автоматически:</h2>
<h2 id="opredelit-arhitekturu-sistemy">- Определит архитектуру системы</h2>
<h2 id="skachaet-poslednyuyu-versiyu">- Скачает последнюю версию</h2>
<h2 id="raspakuet-v-opt-adguardhome">- Распакует в /opt/AdGuardHome/</h2>
<h2 id="zaregistriruet-systemd-servis">- Зарегистрирует systemd-сервис</h2>
<h2 id="zapustit-adguardhome">- Запустит AdGuardHome</h2>
<h2 id="proverit-status">Проверить статус</h2>
systemctl status AdGuardHome
После запуска скрипта откройте браузер и перейдите по адресу `http://ВАШ-IP:3000` для первоначальной настройки.
#### Ручная установка на Linux
Для полного контроля над расположением файлов:
bash
<h2 id="opredelit-arhitekturu">Определить архитектуру</h2>
ARCH=$(uname -m)
case $ARCH in
x86_64) AGH_ARCH="linux_amd64" ;;
aarch64) AGH_ARCH="linux_arm64" ;;
armv7l) AGH_ARCH="linux_armv7" ;;
armv6l) AGH_ARCH="linux_armv6" ;;
esac
<h2 id="poluchit-poslednyuyu-versiyu">Получить последнюю версию</h2>
VERSION=$(curl -s https://api.github.com/repos/AdguardTeam/AdGuardHome/releases/latest \
| grep '"tag_name"' | cut -d'"' -f4)
<h2 id="skachat">Скачать</h2>
curl -L -o /tmp/AdGuardHome.tar.gz \
"https://github.com/AdguardTeam/AdGuardHome/releases/download/${VERSION}/AdGuardHome_${AGH_ARCH}.tar.gz"
<h2 id="raspakovat">Распаковать</h2>
tar -xzf /tmp/AdGuardHome.tar.gz -C /opt/
<h2 id="ustanovit-kak-servis">Установить как сервис</h2>
cd /opt/AdGuardHome && ./AdGuardHome -s install
<h2 id="proverit">Проверить</h2>
systemctl status AdGuardHome
#### Установка через Docker (рекомендуется для homelab)
Docker — наиболее удобный вариант для homelab-сред с несколькими сервисами:
bash
<h2 id="sozdat-direktorii-dlya-dannyh">Создать директории для данных</h2>
mkdir -p /opt/adguardhome/work
mkdir -p /opt/adguardhome/conf
<h2 id="zapustit-konteyner">Запустить контейнер</h2>
docker run -d \
--name adguardhome \
--restart unless-stopped \
-v /opt/adguardhome/work:/opt/adguardhome/work \
-v /opt/adguardhome/conf:/opt/adguardhome/conf \
-p 53:53/tcp \
-p 53:53/udp \
-p 3000:3000/tcp \
-p 80:80/tcp \
-p 443:443/tcp \
-p 853:853/tcp \
adguard/adguardhome:latest
#### Docker Compose для homelab
yaml
<h2 id="docker-compose-yml">docker-compose.yml</h2>
version: "3.9"
services:
adguardhome:
image: adguard/adguardhome:latest
container_name: adguardhome
restart: unless-stopped
ports:
- "53:53/tcp"
- "53:53/udp"
- "3000:3000/tcp" # Веб-интерфейс (первоначальная настройка)
- "80:80/tcp" # HTTP для DoH
- "443:443/tcp" # HTTPS для DoH и веб-интерфейса
- "853:853/tcp" # DoT
volumes:
- ./adguardhome/work:/opt/adguardhome/work
- ./adguardhome/conf:/opt/adguardhome/conf
network_mode: bridge
cap_add:
- NET_ADMIN # Нужно для DHCP-сервера
environment:
- TZ=Europe/Moscow
bash
docker compose up -d
docker compose logs -f adguardhome
#### Установка на Raspberry Pi
Raspberry Pi — идеальная платформа для AdGuard Home: низкое энергопотребление (~3-5 Вт), всегда включён, достаточно ресурсов.
bash
<h2 id="na-raspberry-pi-os-debian-based">На Raspberry Pi OS (Debian-based)</h2>
<h2 id="shag-1-obnovit-sistemu">Шаг 1: Обновить систему</h2>
sudo apt update && sudo apt upgrade -y
<h2 id="shag-2-osvobodit-port-53-systemd-resolved-zanimaet-ego-po-umolchaniyu">Шаг 2: Освободить порт 53 (systemd-resolved занимает его по умолчанию)</h2>
sudo systemctl disable --now systemd-resolved
sudo rm /etc/resolv.conf
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
<h2 id="shag-3-ustanovit-adguard-home">Шаг 3: Установить AdGuard Home</h2>
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sudo sh -s -- -v
<h2 id="shag-4-nastroit-staticheskiy-ip-dlya-raspberry-pi">Шаг 4: Настроить статический IP для Raspberry Pi</h2>
<h2 id="redaktirovat-etc-dhcpcd-conf">Редактировать /etc/dhcpcd.conf</h2>
sudo nano /etc/dhcpcd.conf
Добавьте в конец файла `/etc/dhcpcd.conf`:
interface
eth0
static ip_address=192.168.1.2/24
static routers=192.168.1.1
static domain_name_servers=127.0.0.1
Статический IP критически важен — если IP Raspberry Pi изменится, все устройства потеряют DNS и перестанут работать.
#### Установка на Windows
На Windows AdGuard Home также работает как системный сервис:
powershell
<h2 id="skachat-zip-arhiv-s-github-releases">Скачать zip-архив с GitHub Releases</h2>
<h2 id="naprimer-adguardhome-windows-amd64-zip">Например: AdGuardHome_windows_amd64.zip</h2>
<h2 id="raspakovat-v-c-adguardhome">Распаковать в C:\AdGuardHome\</h2>
<h2 id="ustanovit-kak-servis-ot-imeni-administratora">Установить как сервис (от имени администратора)</h2>
.\AdGuardHome.exe -s install
<h2 id="zapustit-servis">Запустить сервис</h2>
.\AdGuardHome.exe -s start
<h2 id="otkryt-veb-interfeys">Открыть веб-интерфейс</h2>
Start-Process "http://localhost:3000"
⚠️ Важно для Windows: порт 53 на Windows 10/11 может быть занят DNS Client сервисом. Для его освобождения: Services → DNS Client → Startup type: Manual → Stop. Альтернатива — использовать нестандартный порт для AdGuard Home и настроить роутер на этот порт.
#### Освобождение порта 53 на Ubuntu/Debian
На современных Ubuntu/Debian порт 53 занят `systemd-resolved`:
bash
<h2 id="proverit-kto-zanimaet-port-53">Проверить, кто занимает порт 53</h2>
sudo lsof -i :53
sudo ss -tlnp | grep 53
<h2 id="otklyuchit-systemd-resolved-kak-dns-server-ne-otklyuchat-polnostyu">Отключить systemd-resolved как DNS-сервер (не отключать полностью!)</h2>
sudo mkdir -p /etc/systemd/resolved.conf.d/
sudo tee /etc/systemd/resolved.conf.d/adguardhome.conf << EOF
[Resolve]
DNS=127.0.0.1
DNSStubListener=no
EOF
<h2 id="peresozdat-resolv-conf">Пересоздать resolv.conf</h2>
sudo mv /etc/resolv.conf /etc/resolv.conf.backup
sudo ln -s /run/systemd/resolve/resolv.conf /etc/resolv.conf
<h2 id="perezapustit-systemd-resolved">Перезапустить systemd-resolved</h2>
sudo systemctl restart systemd-resolved
<h2 id="teper-port-53-svoboden-zapustit-adguard-home">Теперь порт 53 свободен — запустить AdGuard Home</h2>
sudo systemctl start AdGuardHome
Первоначальная настройка через веб-интерфейс
После запуска AdGuard Home откройте браузер и перейдите на `http://IP-вашего-сервера:3000`. Вас встретит мастер первоначальной настройки — пройдём его по шагам.
#### Шаг 1: Выбор сетевых интерфейсов
На первом экране AdGuard Home предлагает выбрать, на каком сетевом интерфейсе слушать DNS-запросы и на каком — отдавать веб-интерфейс.
DNS-сервер: рекомендуется выбрать «Все интерфейсы» (0.0.0.0) чтобы принимать запросы с любого устройства в сети.
Веб-интерфейс: рекомендуется выбрать конкретный IP вашего сервера (например, 192.168.1.2) или localhost, если вы не планируете открывать веб-интерфейс на весь интернет. Порт по умолчанию — 3000, можно оставить или изменить.
#### Шаг 2: Создание учётной записи администратора
Введите имя пользователя и пароль для доступа к веб-интерфейсу. Используйте надёжный пароль — особенно если веб-интерфейс доступен не только локально.
После завершения мастера вы будете перенаправлены на новый адрес веб-интерфейса (если изменили порт). Войдите с созданными учётными данными.
#### Шаг 3: Обзор главного экрана
Главный экран AdGuard Home отображает:
- Статистику за последние 24 часа: общее число DNS-запросов, заблокированных запросов, процент блокировок
- График запросов во времени: позволяет видеть паттерны трафика
- Топ заблокированных доменов: какие домены блокируются чаще всего
- Топ клиентов: какие устройства делают больше всего DNS-запросов
- Топ запрашиваемых доменов: самые популярные домены в вашей сети
#### Шаг 4: Основные настройки (Settings → General)
Откройте Settings → General Settings и настройте базовые параметры:
Блокировка: включите «Block domains using filters and hosts files» — основная функция.
Безопасный поиск: опция «Force Safe Search» включает безопасный поиск в Google, Bing, Yandex, DuckDuckGo — полезно для семейных сетей.
Безопасный просмотр: «Enable AdGuard browsing security service» — проверяет домены по базе AdGuard на наличие фишинга и вредоносных сайтов. Запросы обезличены — AdGuard не видит ваши данные, только хэш домена.
Родительский контроль: «Enable parental control service» — блокирует домены для взрослых через сервис AdGuard.
Логирование: настройте период хранения логов. По умолчанию — 90 дней. На Raspberry Pi с SD-картой рекомендуется сократить до 7-14 дней для снижения износа карты памяти.
Статистика: аналогично, настройте период хранения статистики. 30 дней — разумный компромисс.
#### Шаг 5: Проверка работы
После первоначальной настройки проверьте что AdGuard Home работает:
bash
<h2 id="proverit-dns-razreshenie-cherez-adguard-home">Проверить DNS-разрешение через AdGuard Home</h2>
dig @192.168.1.2 google.com
<h2 id="proverit-blokirovku-reklamnogo-domena">Проверить блокировку рекламного домена</h2>
dig @192.168.1.2 doubleclick.net
<h2 id="ozhidaemyy-otvet-dlya-zablokirovannogo-domena">Ожидаемый ответ для заблокированного домена:</h2>
<h2 id="answer-section">;; ANSWER SECTION:</h2>
<h2 id="doubleclick-net-3600-in-a-0-0-0-0">doubleclick.net. 3600 IN A 0.0.0.0</h2>Настройка DNS-серверов: DoH, DoT и DNSCrypt
Выбор и настройка upstream DNS-серверов — один из важнейших аспектов конфигурации AdGuard Home. Именно через эти серверы разрешаются все незаблокированные домены.
#### Почему важно шифровать DNS
Стандартный DNS работает по UDP на порту 53 в открытом виде. Это означает что ваш провайдер, роутер и любой человек в вашей сети могут видеть все ваши DNS-запросы — то есть список всех сайтов, которые вы посещаете. Многие провайдеры в России активно используют эти данные для фильтрации (блокировок), а также продают агрегированную статистику рекламным сетям.
DNS-over-HTTPS (DoH) и DNS-over-TLS (DoT) шифруют DNS-запросы, делая их невидимыми для провайдера. С точки зрения провайдера они выглядят как обычный HTTPS-трафик.
#### Форматы upstream DNS в AdGuard Home
AdGuard Home поддерживает следующие форматы:
text
<h2 id="obychnyy-dns-neshifrovannyy">Обычный DNS (нешифрованный)</h2>
8.8.8.8
8.8.4.4
<h2 id="dns-over-tls">DNS-over-TLS</h2>
tls://dns.cloudflare.com
tls://dns.google
<h2 id="dns-over-https">DNS-over-HTTPS</h2>
https://dns.cloudflare.com/dns-query
https://dns.google/dns-query
<h2 id="dnscrypt">DNSCrypt</h2>
sdns://AQMAAAAAAAAADjk0LjE0MC4xNC4xNDIg...
<h2 id="specific-bootstrap-dlya-doh-cherez-kakoy-ip-rezolvit-sam-doh-server">Specific bootstrap для DoH (через какой IP резолвить сам DoH-сервер)</h2>
[/cloudflare-dns.com/]1.1.1.1
https://dns.cloudflare.com/dns-query
#### Рекомендуемые upstream DNS-серверы 2026 года
Открывайте Settings → DNS Settings → Upstream DNS servers и добавляйте серверы:
Cloudflare (1.1.1.1) — быстрый, приватный:
https
://dns.cloudflare.com/dns-query
tls://1dot1dot1dot1.cloudflare-dns.com
Google Public DNS — надёжный, широкий геоохват:
https
://dns.google/dns-query
tls://dns.google
Quad9 — с блокировкой вредоносных доменов:
https
://dns.quad9.net/dns-query
tls://dns.quad9.net
AdGuard DNS — с дополнительной фильтрацией:
https
://dns.adguard-dns.com/dns-query
tls://dns-unfiltered.adguard.com
Яндекс DNS — для оптимального разрешения российских доменов:
tls
://common.dot.dns.yandex.net
https://common.doh.dns.yandex.net/dns-query
Рекомендуемая конфигурация для российских пользователей:
text
<h2 id="pervyy-upstream-cloudflare-dlya-zarubezhnyh-domenov">Первый upstream — Cloudflare для зарубежных доменов</h2>
https://dns.cloudflare.com/dns-query
<h2 id="vtoroy-upstream-yandeks-dlya-rossiyskih-domenov-bolee-tochnaya-geolokatsiya">Второй upstream — Яндекс для российских доменов (более точная геолокация)</h2>
[/ru/yandex.ru/mail.ru/vk.com/ok.ru/]tls://common.dot.dns.yandex.net
<h2 id="rezervnyy">Резервный</h2>
tls://dns.google
Нотация `[/домен/]сервер` означает «для запросов к этому домену и его поддоменам использовать этот конкретный сервер». Это позволяет гибко настраивать маршрутизацию DNS-запросов.
#### Bootstrap DNS-серверы
Bootstrap DNS нужны для первоначального разрешения адресов DoH/DoT серверов. Это классические нешифрованные серверы:
9
.9.9.10 # Quad9 без фильтрации
149.112.112.10 # Quad9 резервный
2620:fe::10 # Quad9 IPv6
Укажите их в поле «Bootstrap DNS servers» в настройках.
#### Fallback DNS-серверы
Fallback серверы используются если основные upstream недоступны:
8
.8.8.8
8.8.4.4
Настраиваются в поле «Fallback DNS servers».
#### Параметры кэширования DNS
В разделе Settings → DNS Settings → DNS cache settings настройте:
Cache size: 4000000 (4 MB) — для домашней сети достаточно. Увеличивайте если в сети много устройств или видите высокий процент кэш-промахов в статистике.
Cache minimum TTL: 300 (5 минут) — минимальное время кэширования даже для записей с коротким TTL. Снижает количество upstream-запросов.
Cache maximum TTL: 86400 (24 часа) — максимальное время кэширования. Предотвращает хранение устаревших IP.
Optimistic caching: включите — при устаревшей записи немедленно возвращает старое значение и асинхронно обновляет его в фоне. Снижает воспринимаемую задержку.
#### Режим параллельных запросов
Для ускорения разрешения доменов включите «Parallel requests»: AdGuard Home будет отправлять запросы ко всем upstream одновременно и использовать первый полученный ответ. Это снижает задержку ценой большей нагрузки на upstream-серверы.
yaml
<h2 id="v-adguardhome-yaml">В AdGuardHome.yaml</h2>
upstream_dns:
- https://dns.cloudflare.com/dns-query
- https://dns.google/dns-query
upstream_mode: parallel
Списки блокировки: лучшие фильтры 2026 года
Списки блокировки (фильтры) — сердце AdGuard Home. Это файлы, содержащие домены рекламных сетей, трекеров и вредоносных сайтов. AdGuard Home поддерживает несколько форматов: формат hosts-файла, формат AdGuard (с расширенным синтаксисом), формат ABP (Adblock Plus).
#### Добавление списков блокировки
Откройте Filters → DNS Blocklists → Add blocklist.
Можно добавить список тремя способами:
- По URL (список скачивается и периодически обновляется автоматически)
- Загрузкой файла вручную
- Выбором из встроенного каталога популярных листов
#### Рекомендуемые списки для базовой защиты
AdGuard DNS filter — уже добавлен по умолчанию. Активно поддерживается командой AdGuard, охватывает рекламу и трекеры:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_1.txt
AdGuard DNS Popup Hosts filter — блокировка навязчивых всплывающих окон:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_59.txt
EasyList — классический список, используемый uBlock Origin и большинством браузерных блокировщиков:
https
://easylist.to/easylist/easylist.txt
EasyPrivacy — специализированный список для блокировки трекеров:
https
://easylist.to/easylist/easyprivacy.txt
Steven Black's Hosts — объединённый список из множества источников, ориентированный на формат hosts:
https
://raw.githubusercontent.com/StevenBlack/hosts/master/hosts
#### Специализированные списки
Для блокировки телеметрии Microsoft:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_23.txt
Для блокировки телеметрии Samsung:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_22.txt
Для блокировки телеметрии Apple:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_24.txt
OISD — Big List — один из наиболее полных и хорошо поддерживаемых списков:
https
://big.oisd.nl
HaGeZi Multi PRO — агрессивный список высокого качества:
https
://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/pro.txt
Stalkerware Indicators — блокировка приложений слежки:
https
://raw.githubusercontent.com/AssoEchap/stalkerware-indicators/master/generated/hosts
#### Списки для российской аудитории
RU AdList — список рекламных и трекинговых доменов, специфичных для рунета:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_6.txt
Русскоязычные рекламные сети (Яндекс.Директ, myTarget и др.) лучше блокировать через пользовательские правила — см. соответствующий раздел.
#### Как не переусердствовать со списками
Распространённая ошибка — добавить максимальное количество списков в надежде на максимальную защиту. На практике это приводит к:
- Ложным срабатываниям: блокировке легитимных сайтов
- Замедлению DNS: больший список = дольше загрузка в память и поиск по нему
- Дублированию: 90% записей во всех больших списках пересекаются
Рекомендуемая стратегия: начните с AdGuard DNS filter + EasyList + EasyPrivacy + OISD Big. Этого достаточно для блокировки 95%+ рекламы и трекеров. Специализированные списки добавляйте по необходимости — например, телеметрию конкретных производителей устройств в вашей сети.
#### Мониторинг эффективности списков
После добавления списков посмотрите на статистику через несколько дней:
- Нормальный процент блокировки домашней сети: 15–30%
- Ниже 10% — вероятно, списки не работают или трафик идёт мимо AdGuard Home
- Выше 40% — вероятно, слишком агрессивные фильтры, много ложных срабатываний
Топ заблокированных доменов на дашборде покажет, блокировка чего происходит чаще всего — это помогает понять, нужна ли корректировка.
Настройка роутера: защита всей домашней сети
Ключевое преимущество AdGuard Home — защита всей сети без установки программ на каждое устройство. Для этого роутер должен сообщать всем устройствам использовать AdGuard Home как DNS-сервер.
#### Метод 1: Изменение DNS в настройках DHCP роутера
Это основной и рекомендуемый метод. Большинство роутеров позволяют указать DNS-серверы, которые будут передаваться клиентам через DHCP.
Роутеры ASUS (AsusWRT):
1. Открыть WAN → Internet Connection
2. DNS Server 1: `192.168.1.2` (IP вашего сервера с AdGuard Home)
2. DNS Server 2: `8.8.8.8` (резервный, на случай недоступности AdGuard Home)
3. Применить
Также настройте DHCP:
1. LAN → DHCP Server
2. DNS Server 1: `192.168.1.2`
3. Применить
Роутеры TP-Link (TP-Link Router OS):
1. Advanced → Network → DHCP Server
2. Primary DNS: `192.168.1.2`
3. Secondary DNS: `8.8.8.8` (резервный)
4. Save
Роутеры Keenetic:
1. Мой Keenetic → Настройки сети → DHCP
2. DNS-сервер 1: `192.168.1.2`
3. Применить
Mikrotik:
bash
<h2 id="cherez-routeros-cli">Через RouterOS CLI</h2>
/ip dhcp-server network set [find] dns-server=192.168.1.2,8.8.8.8
/ip dns set servers=192.168.1.2
OpenWRT:
bash
<h2 id="v-etc-config-dhcp-dobavit">В /etc/config/dhcp добавить:</h2>
uci set dhcp.@dnsmasq[0].server='192.168.1.2'
uci commit dhcp
/etc/init.d/dnsmasq restart
#### Метод 2: Использование AdGuard Home как DHCP-сервера
Если ваш роутер не позволяет гибко настроить DNS для DHCP, можно отключить DHCP-сервер роутера и включить встроенный DHCP-сервер AdGuard Home.
В AdGuard Home: Settings → DHCP Settings → Enable DHCP server.
Настройте:
- Interface: eth0 или ваш сетевой интерфейс
- IP range from/to: диапазон для выдачи (например, 192.168.1.100 — 192.168.1.200)
- Gateway IP: IP вашего роутера (192.168.1.1)
- Subnet mask: 255.255.255.0
- Lease time: 86400 (24 часа)
Встроенный DHCP автоматически указывает себя как DNS-сервер для всех клиентов — никакой дополнительной настройки не нужно.
⚠️ Важно: перед включением DHCP в AdGuard Home отключите DHCP-сервер роутера. Два DHCP-сервера в одной сети приведут к конфликтам и потере подключения у части устройств.
#### Метод 3: Принудительная переадресация DNS (для продвинутых)
Некоторые устройства (Smart TV, IoT) игнорируют настройки DNS от DHCP и всегда используют прописанные в прошивке серверы (обычно 8.8.8.8 от Google). Для принудительной переадресации их запросов в AdGuard Home нужно настроить iptables или nftables на роутере:
bash
<h2 id="na-openwrt-ili-linux-routere">На OpenWRT или Linux-роутере</h2>
<h2 id="perehvatit-vse-dns-zaprosy-k-vneshnim-serveram-i-perenapravit-na-adguard-home">Перехватить все DNS-запросы к внешним серверам и перенаправить на AdGuard Home</h2>
iptables -t nat -A PREROUTING -s 192.168.1.0/24 \
-p udp --dport 53 ! -d 192.168.1.2 \
-j DNAT --to-destination 192.168.1.2:53
iptables -t nat -A PREROUTING -s 192.168.1.0/24 \
-p tcp --dport 53 ! -d 192.168.1.2 \
-j DNAT --to-destination 192.168.1.2:53
<h2 id="sohranit-pravila">Сохранить правила</h2>
iptables-save > /etc/iptables/rules.v4
Это гарантирует, что все DNS-запросы из сети, независимо от настроек устройства, попадают в AdGuard Home.
#### Проверка: через AdGuard Home ли идёт трафик
После настройки роутера проверьте, что устройства действительно используют AdGuard Home:
bash
<h2 id="s-lyubogo-ustroystva-v-seti-windows-cmd">С любого устройства в сети (Windows CMD)</h2>
nslookup doubleclick.net
<h2 id="ozhidaemyy-otvet">Ожидаемый ответ:</h2>
<h2 id="server-192-168-1-2-ip-vashego-adguard-home">Server: 192.168.1.2 <- IP вашего AdGuard Home</h2>
<h2 id="address-192-168-1-2-53">Address: 192.168.1.2#53</h2>
<h2 id="name-doubleclick-net">Name: doubleclick.net</h2>
<h2 id="address-0-0-0-0-zablokirovano">Address: 0.0.0.0 <- Заблокировано!</h2>
<h2 id="na-linux-macos">На Linux/macOS</h2>
dig doubleclick.net @192.168.1.2
Также в AdGuard Home Dashboard должны появляться запросы от ваших устройств в логе запросов.
Клиентские правила: разные политики для разных устройств
Одна из мощнейших функций AdGuard Home — возможность применять разные правила фильтрации к разным устройствам в сети. Компьютер для работы, смартфон ребёнка и Smart TV могут иметь совершенно разные настройки.
#### Добавление клиентов
Откройте Settings → Client Settings. AdGuard Home автоматически обнаруживает устройства в сети по их IP-адресам и отображает их в списке.
Нажмите «Add client»:
- Name: понятное название (например, «Телефон Маши», «Рабочий ноутбук»)
- Identifier: IP-адрес, MAC-адрес, или Client ID
- Use global settings: если включено — применяются глобальные настройки
- Tags: метки для группировки устройств
Рекомендация: используйте MAC-адрес как идентификатор вместо IP. Это важно: если устройство получит другой IP (например, после переподключения), правила продолжат работать. IP-адреса меняются, MAC-адреса — нет.
#### Индивидуальные настройки клиента
Для каждого клиента можно отдельно настроить:
Filtering: включить/отключить DNS-фильтрацию для этого устройства полностью. Например, для корпоративного ноутбука с собственным VPN может быть удобно отключить фильтрацию AdGuard Home.
SafeSearch: принудительно включить безопасный поиск на всех поисковых системах.
SafeBrowsing: проверять домены по базе вредоносных сайтов.
Parental control: блокировать контент для взрослых.
Use custom upstream DNS: для конкретного устройства использовать другие upstream-серверы. Например, для рабочего ноутбука использовать корпоративный DNS.
Custom filtering rules: добавить правила только для этого клиента.
#### Пример: настройка для детского планшета
text
Клиент: Планшет Антона
Идентификатор: DC:A6:32:XX:XX:XX (MAC-адрес)
Настройки:
✅ Фильтрация включена
✅ SafeSearch включён
✅ SafeBrowsing включён
✅ Родительский контроль включён
Пользовательские правила:
||youtube.com^ <- заблокировать YouTube (можно в определённое время через роутер)
||tiktok.com^
||twitch.tv^
#### Пример: настройка для умных устройств (Smart TV, IoT)
IoT-устройства особенно активны в сборе телеметрии. Для них полезна агрессивная фильтрация:
text
Клиент: Samsung Smart TV
Идентификатор: A0:XX:XX:XX:XX:XX (MAC-адрес)
Настройки:
✅ Фильтрация включена (агрессивная)
Пользовательские правила для телеметрии Samsung:
||samsungcloudsolution.com^
||samsungqbe.com^
||samsungelectronics.com^
||samsungRS.com^
||samsungacr.com^
||smartclips.applause.com^
#### Пример: настройка для рабочего компьютера
text
Клиент: Рабочий MacBook
Идентификатор: 192.168.1.100 (статический IP)
Настройки:
✅ Фильтрация включена (базовая — без агрессивных списков)
❌ Родительский контроль выключен
Upstream DNS (корпоративный):
[/company.internal/]10.0.0.1
https://dns.cloudflare.com/dns-query
Родительский контроль через DNS
AdGuard Home предоставляет несколько уровней родительского контроля через DNS-фильтрацию. Важно понимать возможности и ограничения этого подхода.
#### Встроенный родительский контроль AdGuard
В Settings → General Settings включите «Enable parental control service». Это подключает облачную службу AdGuard, которая блокирует:
- Сайты для взрослых (xxx-контент)
- Сайты об азартных играх
- Алкогольный и табачный контент
- Сайты о насилии
- Оружейные магазины
Сервис работает по хэшу запрашиваемого домена — AdGuard не видит реальный домен, только его хэш. Это обеспечивает определённый уровень приватности.
Ограничение: эта функция — глобальная для всего AdGuard Home или применяется на уровне клиента. Нельзя включить её только с 18:00 до 22:00.
#### Расписание фильтрации (через роутер)
DNS-фильтрация сама по себе не поддерживает расписание. Для блокировки в определённое время используйте функцию расписания на роутере:
На большинстве роутеров (ASUS, TP-Link, Keenetic) есть функция Parental Controls с расписанием, которая блокирует доступ к интернету для конкретного MAC-адреса в определённое время. В сочетании с DNS-фильтрацией AdGuard Home это даёт полный контроль.
#### Дополнительные списки для родительского контроля
Для более точной блокировки добавьте специализированные списки:
Gambling Block:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_3.txt
Anti-Malware:
https
://adguardteam.github.io/HostlistsRegistry/assets/filter_9.txt
Adult Content (большой список):
https
://raw.githubusercontent.com/chadmayfield/my-pihole-blocklists/master/lists/pi_blocklist_porn_all.txt
#### Блокировка конкретных сервисов для ребёнка
Часто нужно заблокировать не всё подряд, а конкретные сервисы:
text
<h2 id="sotsialnye-seti">Социальные сети</h2>
||instagram.com^
||tiktok.com^
||twitter.com^
||vk.com^
<h2 id="igrovye-platformy-naprimer-v-uchebnoe-vremya">Игровые платформы (например, в учебное время)</h2>
||steampowered.com^
||epicgames.com^
||roblox.com^
<h2 id="videohostingi">Видеохостинги</h2>
||youtube.com^
||twitch.tv^
Эти правила добавляются в пользовательские правила клиента (детского устройства) или в глобальные пользовательские правила с привязкой к клиенту через модификатор `$client`.
#### Ограничения родительского контроля через DNS
Важно понимать, что DNS-блокировка не является абсолютной защитой:
VPN и прокси: ребёнок может использовать VPN-приложение, которое обходит DNS-фильтрацию. Решение: блокировать известные VPN-домены через AdGuard Home и на уровне роутера.
Изменение DNS вручную: на телефоне или планшете можно вручную изменить DNS на 8.8.8.8. Решение: принудительная переадресация DNS через iptables на роутере (описана выше).
DoH в браузерах: Firefox и Chrome могут использовать собственный DoH, игнорируя системный DNS. Решение: заблокировать DoH-серверы через AdGuard Home:
text
<h2 id="blokirovat-vstroennyy-doh-v-firefox">Блокировать встроенный DoH в Firefox</h2>
||mozilla.cloudflare-dns.com^
||firefox.settings.services.mozilla.com^
<h2 id="blokirovat-doh-chrome">Блокировать DoH Chrome</h2>
||chrome.cloudflare-dns.com^
||dns.google^ <- Внимание: это заблокирует и DNS 8.8.8.8
Пользовательские правила фильтрации: синтаксис и примеры
Пользовательские правила — это самый гибкий инструмент AdGuard Home. Они позволяют добавлять исключения для заблокированных сайтов, блокировать конкретные домены и применять правила к конкретным клиентам.
#### Базовый синтаксис правил
AdGuard Home поддерживает расширенный синтаксис, унаследованный от AdGuard и uBlock Origin:
text
<h2 id="zablokirovat-domen-i-vse-ego-poddomeny">Заблокировать домен и все его поддомены</h2>
||example.com^
<h2 id="razreshit-domen-belyy-spisok-prioritet-nad-blokirovkami">Разрешить домен (белый список — приоритет над блокировками)</h2>
@@||example.com^
<h2 id="zablokirovat-konkretnyy-poddomen">Заблокировать конкретный поддомен</h2>
||ads.example.com^
<h2 id="zablokirovat-po-podstroke-v-domene">Заблокировать по подстроке в домене</h2>
||*tracker*.com^
<h2 id="simvol-razdelitel-konets-domena-ili-nachalo-puti">Символ ^ — разделитель (конец домена или начало пути)</h2>
||example.com^ -> блокирует example.com и все поддомены
<h2 id="kommentariy">Комментарий</h2>
<h2 id="eto-kommentariy">Это комментарий</h2>
<h2 id="klassicheskiy-format-hosts-fayla-tozhe-rabotaet">Классический формат hosts-файла тоже работает</h2>
0.0.0.0 example.com
127.0.0.1 ads.example.com
#### Модификаторы правил
AdGuard Home поддерживает расширенные модификаторы:
text
<h2 id="primenit-pravilo-tolko-k-konkretnomu-klientu-po-ip">Применить правило только к конкретному клиенту (по IP)</h2>
||example.com^$client=192.168.1.100
<h2 id="primenit-pravilo-k-neskolkim-klientam">Применить правило к нескольким клиентам</h2>
||example.com^$client='192.168.1.100|192.168.1.101'
<h2 id="primenit-pravilo-k-klientu-po-imeni">Применить правило к клиенту по имени</h2>
||example.com^$client='Детский планшет'
<h2 id="primenit-pravilo-tolko-k-ipv4-zaprosam">Применить правило только к IPv4 запросам</h2>
||example.com^$dnstype=A
<h2 id="primenit-pravilo-tolko-k-ipv6-zaprosam">Применить правило только к IPv6 запросам</h2>
||example.com^$dnstype=AAAA
<h2 id="zablokirovat-vse-zaprosy-tipa-mx-pochtovye">Заблокировать все запросы типа MX (почтовые)</h2>
*$dnstype=MX
<h2 id="otvetit-konkretnym-ip-vmesto-0-0-0-0">Ответить конкретным IP вместо 0.0.0.0</h2>
||example.com^$dnsrewrite=192.168.1.50
#### Практические примеры пользовательских правил
Разблокировать ложно заблокированный домен:
text
<h2 id="esli-kakoy-to-rabochiy-sayt-popal-v-spisok-blokirovki">Если какой-то рабочий сайт попал в список блокировки</h2>
@@||work-portal.company.com^
@@||api.legitservice.com^
Заблокировать телеметрию конкретных приложений:
text
<h2 id="telemetriya-windows-10-11">Телеметрия Windows 10/11</h2>
||vortex.data.microsoft.com^
||telemetry.microsoft.com^
||watson.telemetry.microsoft.com^
||oca.telemetry.microsoft.com^
||settings-win.data.microsoft.com^
||umwatson.events.data.microsoft.com^
<h2 id="telemetriya-adobe">Телеметрия Adobe</h2>
||lcs-cops.adobe.io^
||lcs-robs.adobe.io^
||prod.adobedc.net^
<h2 id="telemetriya-yandex-browser">Телеметрия Yandex Browser</h2>
||browser.yandex.ru^$client='Рабочий ноутбук'
Блокировать майнинговые домены:
text
||coinhive.com^
||coin-hive.com^
||jsecoin.com^
||cryptoloot.pro^
||minero.cc^
Блокировать фишинговые домены (пополняемый список):
text
<h2 id="domeny-imitiruyuschie-populyarnye-servisy">Домены, имитирующие популярные сервисы</h2>
||gosuslugi-portal.net^
||sberbank-online.xyz^
||vk-support.net^
Правила для конкретных клиентов:
text
<h2 id="blokirovat-youtube-tolko-dlya-plansheta-rebyonka">Блокировать YouTube только для планшета ребёнка</h2>
||youtube.com^$client='Планшет Антона'
||youtu.be^$client='Планшет Антона'
||ytimg.com^$client='Планшет Антона'
<h2 id="razreshit-gaming-sayty-dlya-vzroslogo-dazhe-esli-oni-v-spiske-blokirovki">Разрешить gaming-сайты для взрослого, даже если они в списке блокировки</h2>
@@||twitch.tv^$client='Игровой ПК'
@@||discord.com^$client='Игровой ПК'
#### Белые списки (allowlists)
Если какой-то список блокировки содержит слишком много ложных срабатываний, можно добавить отдельный белый список вместо изменения правил:
В Filters → DNS Allowlists → Add allowlist:
text
<h2 id="primer-allowlist-dlya-korporativnyh-domenov">Пример allowlist для корпоративных доменов</h2>
||company.com^
||internal.company.com^
||vpn.company.com^
Домены из allowlist никогда не будут заблокированы, даже если они есть в чёрных списках.
Кастомные DNS-записи и split-horizon DNS
AdGuard Home может выступать полноценным локальным DNS-сервером для домашней инфраструктуры — с кастомными записями для сервисов, запущенных в вашей сети.
#### DNS Rewrites — локальные DNS-записи
Откройте Filters → DNS Rewrites → Add DNS rewrite.
Это позволяет создавать собственные DNS-записи, которые имеют приоритет над внешними серверами:
text
<h2 id="obraschenie-k-nas-home-budet-razreshatsya-v-lokalnyy-ip-vashego-nas">Обращение к "nas.home" будет разрешаться в локальный IP вашего NAS</h2>
nas.home → 192.168.1.10
<h2 id="obraschenie-k-router-home-v-ip-routera">Обращение к "router.home" — в IP роутера</h2>
router.home → 192.168.1.1
<h2 id="homelab-servisy">Homelab-сервисы</h2>
grafana.home → 192.168.1.5
jellyfin.home → 192.168.1.5
adguard.home → 192.168.1.2
portainer.home → 192.168.1.5
После добавления этих записей вы можете обращаться к своим сервисам по удобным именам вместо IP-адресов — с любого устройства в локальной сети.
#### Split-horizon DNS
Split-horizon DNS (раздельный горизонт) — это когда один и тот же домен разрешается в разные IP в зависимости от того, откуда делается запрос. Типичное применение: из локальной сети ваш NAS доступен по 192.168.1.10, а из интернета — по публичному IP.
text
<h2 id="v-adguard-home-dns-rewrites">В AdGuard Home DNS Rewrites:</h2>
<h2 id="zaprosy-iznutri-seti-razreshayutsya-v-lokalnyy-ip">Запросы изнутри сети разрешаются в локальный IP</h2>
mynas.example.com → 192.168.1.10
<h2 id="zaprosy-snaruzhi-ne-cherez-adguard-home-razreshayutsya-cherez-vneshniy-dns">Запросы снаружи (не через AdGuard Home) разрешаются через внешний DNS</h2>
<h2 id="v-publichnyy-ip-etim-upravlyaet-vash-dns-hosting">в публичный IP — этим управляет ваш DNS-хостинг</h2>Это устраняет неэффективный «hairpin NAT» — когда устройство из локальной сети обращается к внешнему IP и трафик идёт через роутер дважды.
#### Wildcard DNS-записи
AdGuard Home поддерживает wildcard записи:
text
<h2 id="vse-poddomeny-home-razreshayutsya-v-192-168-1-5">Все поддомены *.home разрешаются в 192.168.1.5</h2>
*.home → 192.168.1.5
<h2 id="pozvolyaet-dobavlyat-novye-servisy-bez-dobavleniya-otdelnyh-zapisey">Позволяет добавлять новые сервисы без добавления отдельных записей</h2>
<h2 id="jellyfin-home-grafana-home-portainer-home-vse-budut-rabotat">jellyfin.home, grafana.home, portainer.home — все будут работать</h2>#### Интеграция с Nginx Proxy Manager
В связке с Nginx Proxy Manager и wildcard DNS-записями можно создать удобную систему обращения к домашним сервисам:
text
<h2 id="v-adguard-home-dns-rewrites">В AdGuard Home DNS Rewrites:</h2>
*.home → 192.168.1.5 (IP сервера с Nginx Proxy Manager)
<h2 id="v-nginx-proxy-manager">В Nginx Proxy Manager:</h2>
<h2 id="jellyfin-home-http-192-168-1-5-8096">jellyfin.home → http://192.168.1.5:8096</h2>
<h2 id="grafana-home-http-192-168-1-5-3000">grafana.home → http://192.168.1.5:3000</h2>
<h2 id="adguard-home-http-192-168-1-2-3000">adguard.home → http://192.168.1.2:3000</h2>Продвинутые техники: DHCP-сервер, rewrites и API
AdGuard Home предоставляет REST API, DHCP-функциональность и ряд продвинутых возможностей для тонкой настройки.
#### Встроенный DHCP-сервер
Встроенный DHCP-сервер AdGuard Home позволяет:
- Автоматически присваивать имена устройствам по их hostname
- Задавать статические IP для конкретных MAC-адресов
- Управлять всей адресацией сети из единого интерфейса
Конфигурация в AdGuardHome.yaml:
yaml
dhcp:
enabled: true
interface_name: eth0
local_domain_name: home.arpa
dhcpv4:
gateway_ip: 192.168.1.1
subnet_mask: 255.255.255.0
range_start: 192.168.1.100
range_end: 192.168.1.200
lease_duration: 86400
icmp_timeout_msec: 1000
options: []
dhcpv6:
range_start: ""
lease_duration: 0
ra_slaac_only: false
ra_allow_slaac: false
Статические привязки MAC → IP:
yaml
dhcp:
static_leases:
- mac: "dc:a6:32:xx:xx:xx"
ip: "192.168.1.50"
hostname: "raspberry-pi"
- mac: "a0:xx:xx:xx:xx:xx"
ip: "192.168.1.51"
hostname: "nas"
#### REST API для автоматизации
AdGuard Home предоставляет полноценный REST API для управления через скрипты:
bash
<h2 id="bazovyy-url-api">Базовый URL API</h2>
API="http://192.168.1.2:3000"
AUTH="admin:password"
<h2 id="poluchit-status">Получить статус</h2>
curl -s -u "$AUTH" "$API/control/status"
<h2 id="vklyuchit-otklyuchit-filtratsiyu">Включить/отключить фильтрацию</h2>
curl -s -u "$AUTH" -X POST "$API/control/filtering/config" \
-H "Content-Type: application/json" \
-d '{"enabled": true, "interval": 24}'
<h2 id="poluchit-statistiku">Получить статистику</h2>
curl -s -u "$AUTH" "$API/control/stats"
<h2 id="poluchit-log-zaprosov">Получить лог запросов</h2>
curl -s -u "$AUTH" "$API/control/querylog?limit=100"
<h2 id="dobavit-pravilo-filtratsii">Добавить правило фильтрации</h2>
curl -s -u "$AUTH" -X POST "$API/control/filtering/add_url" \
-H "Content-Type: application/json" \
-d '{"name": "My Custom List", "url": "https://example.com/list.txt"}'
<h2 id="obnovit-vse-filtry">Обновить все фильтры</h2>
curl -s -u "$AUTH" -X POST "$API/control/filtering/refresh"
<h2 id="dobavit-polzovatelskoe-pravilo">Добавить пользовательское правило</h2>
curl -s -u "$AUTH" -X POST "$API/control/filtering/set_rules" \
-H "Content-Type: application/json" \
-d '{"rules": ["||ads.example.com^\n||tracker.example.com^"]}'
#### Автоматизация через cron
Полезные задачи для автоматизации:
bash
<h2 id="avtomaticheski-obnovlyat-filtry-raz-v-sutki">Автоматически обновлять фильтры раз в сутки</h2>
0 4 * * * curl -s -u "admin:password" \
-X POST http://192.168.1.2:3000/control/filtering/refresh
<h2 id="ezhenedelnaya-rotatsiya-logov">Еженедельная ротация логов</h2>
0 3 * * 0 curl -s -u "admin:password" \
-X POST http://192.168.1.2:3000/control/querylog/config \
-H "Content-Type: application/json" \
-d '{"enabled": true, "interval": "7d", "anonymize_client_ip": false}'
<h2 id="rezervnoe-kopirovanie-konfiguratsii">Резервное копирование конфигурации</h2>
0 2 * * * cp /opt/AdGuardHome/AdGuardHome.yaml \
/backup/adguard/AdGuardHome-$(date +%Y%m%d).yaml
#### Интеграция с Home Assistant
Если у вас работает Home Assistant, можно интегрировать AdGuard Home для управления через умный дом:
yaml
<h2 id="configuration-yaml-v-home-assistant">configuration.yaml в Home Assistant</h2>
adguard:
host: 192.168.1.2
port: 3000
username: admin
password: !secret adguard_password
ssl: false
verify_ssl: false
После интеграции в Home Assistant появятся сенсоры с количеством заблокированных запросов и переключатели для включения/отключения фильтрации — можно автоматизировать например отключение родительского контроля в определённое время.
#### Конфигурационный файл AdGuardHome.yaml
Полная конфигурация хранится в файле. Понимание структуры позволяет делать массовые изменения без веб-интерфейса:
yaml
bind_host: 0.0.0.0
bind_port: 3000
users:
- name: admin
password: $2y$10$HASH... # bcrypt-хэш пароля
dns:
bind_hosts:
- 0.0.0.0
port: 53
upstream_dns:
- https://dns.cloudflare.com/dns-query
- https://dns.google/dns-query
upstream_mode: load_balance # или parallel, fastest
fallback_dns:
- 8.8.8.8
- 8.8.4.4
bootstrap_dns:
- 9.9.9.10
- 149.112.112.10
cache_size: 4194304 # 4 MB
cache_ttl_min: 300
cache_ttl_max: 86400
cache_optimistic: true
blocking_mode: default # или null_ip, custom_ip, refused
rewrites:
- domain: nas.home
answer: 192.168.1.10
- domain: "*.home"
answer: 192.168.1.5
filtering:
rewrites: []
blocked_services: {}
enabled: true
update_interval: 24h
filters:
- enabled: true
url: https://adguardteam.github.io/HostlistsRegistry/assets/filter_1.txt
name: AdGuard DNS filter
id: 1
- enabled: true
url: https://easylist.to/easylist/easylist.txt
name: EasyList
id: 2
clients:
runtime_sources:
whois: true
arp: true
rdns: true
dhcp: true
hosts: true
persistent:
- name: "Планшет Антона"
ids:
- "dc:a6:32:xx:xx:xx"
blocked_services:
schedule:
time_zone: Europe/Moscow
ids: []
upstreams: []
use_global_settings: false
filtering_enabled: true
parental_enabled: true
safebrowsing_enabled: true
safesearch_enabled: true
Мониторинг, статистика и логирование запросов
Одна из сильных сторон AdGuard Home — богатые возможности мониторинга. Понимание трафика в вашей сети позволяет выявлять проблемы, оптимизировать фильтрацию и обнаруживать подозрительную активность.
#### Дашборд: интерпретация метрик
Главный экран AdGuard Home содержит ключевые метрики за выбранный период (24 часа, 7 дней, 30 дней):
DNS Queries — общее число DNS-запросов. Для домашней сети с 5-10 устройствами норма — 5000-20000 запросов в сутки. Резкий скачок может говорить о появлении нового устройства, вредоносном ПО или неправильно работающем приложении.
Blocked by DNS — количество заблокированных запросов. Нормальный диапазон — 15-35% от общего числа. Выше 40% — вероятно, слишком агрессивная фильтрация или что-то неправильно заблокировано.
Blocked by Safe Browsing — заблокированные вредоносные домены. В норме — 0. Ненулевые значения могут означать вредоносное ПО в сети.
Encrypted — процент зашифрованных upstream-запросов. Должен быть близок к 100%, если вы настроили DoH/DoT.
Top Clients — устройства с наибольшим числом запросов. Полезно для выявления активных устройств и оптимизации правил.
Top Blocked Domains — чаще всего блокируемые домены. Если в топе оказались домены, которые не должны блокироваться — скорректируйте правила.
Top Queried Domains — самые популярные домены в вашей сети. Даёт представление о том, чем занимаются устройства.
#### Лог DNS-запросов
Откройте «Query Log» для детального просмотра всех DNS-запросов. Это мощный инструмент диагностики:
text
Фильтры лога:
- По времени (последний час, день, неделя)
- По клиенту (IP или имя устройства)
- По домену (точное совпадение или подстрока)
- По статусу (всё, заблокированные, разрешённые, из кэша)
- По вышестоящему серверу
Типичные сценарии использования лога:
Найти причину недоступного сайта:
Введите домен в фильтр и посмотрите, заблокирован ли он и каким правилом. Часто проблема в том, что API-домен или CDN заблокированы, а не основной домен сайта.
Найти «болтливое» приложение:
Отфильтруйте по конкретному устройству (например, смартфону) и посмотрите, какие домены оно запрашивает. Если приложение делает сотни запросов к аналитике и рекламным сетям — это будет хорошо видно.
Найти вредоносную активность:
Ищите запросы к подозрительным доменам (случайные строки, DGA-домены), особенно в ночное время когда пользователи не активны.
#### Экспорт статистики для внешних систем
AdGuard Home не имеет встроенной интеграции с Grafana, но её легко настроить через API:
bash
<h2 id="skript-dlya-eksporta-metrik-v-influxdb">Скрипт для экспорта метрик в InfluxDB</h2>
#!/bin/bash
API="http://192.168.1.2:3000"
INFLUX_URL="http://192.168.1.5:8086"
DB="adguard"
STATS=$(curl -s -u "admin:pass" "$API/control/stats")
QUERIES=$(echo $STATS | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['num_dns_queries'])")
BLOCKED=$(echo $STATS | python3 -c "import sys,json; d=json.load(sys.stdin); print(d['num_blocked_filtering'])")
curl -s -XPOST "$INFLUX_URL/write?db=$DB" \
--data-binary "adguard,host=home queries=$QUERIES,blocked=$BLOCKED"
Для Prometheus используйте сторонний экспортёр:
bash
<h2 id="adguard-exporter-dlya-prometheus">adguard-exporter для Prometheus</h2>
docker run -d \
--name adguard-exporter \
-p 9617:9617 \
-e ADGUARD_PROTOCOL=http \
-e ADGUARD_HOSTNAME=192.168.1.2 \
-e ADGUARD_PORT=3000 \
-e ADGUARD_USERNAME=admin \
-e ADGUARD_PASSWORD=password \
ebrianne/adguard-exporter:latest
#### Анонимизация IP клиентов
Если вы хотите вести логи но не хотите записывать реальные IP устройств:
Settings → General Settings → включить «Anonymize client IP». После этого в логах вместо `192.168.1.100` будет записываться `192.168.1.0`.
Безопасность: защита AdGuard Home от внешнего доступа
AdGuard Home управляет DNS всей вашей сети — это критически важный компонент. Его взлом или изменение настроек злоумышленником означало бы полный контроль над DNS-трафиком вашей сети.
#### Ограничение доступа к веб-интерфейсу
По умолчанию веб-интерфейс доступен на порту 3000 со всех сетевых интерфейсов. Рекомендации:
bash
<h2 id="privyazat-veb-interfeys-tolko-k-lokalnomu-interfeysu">Привязать веб-интерфейс только к локальному интерфейсу</h2>
<h2 id="v-adguardhome-yaml">В AdGuardHome.yaml:</h2>
bind_host: 192.168.1.2 # только локальный IP, не 0.0.0.0
bind_port: 3000
<h2 id="ili-cherez-fayrvol-razreshit-dostup-k-portu-3000-tolko-iz-lokalnoy-seti">Или через файрвол — разрешить доступ к порту 3000 только из локальной сети</h2>
iptables -A INPUT -p tcp --dport 3000 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 3000 -j DROP
#### HTTPS для веб-интерфейса
Для доступа к веб-интерфейсу по HTTPS:
В Settings → Encryption:
server
name: adguard.home.example.com
HTTPS port: 443
DoH port: 443
DoT port: 853
Certificate file: /etc/letsencrypt/live/home.example.com/fullchain.pem
Certificate key file: /etc/letsencrypt/live/home.example.com/privkey.pem
После включения HTTPS веб-интерфейс будет доступен по `https://adguard.home.example.com`, а также будет работать ваш личный DoH-сервер: `https://adguard.home.example.com/dns-query`.
#### Ограничение доступа к DNS
Если AdGuard Home доступен из интернета (публичный IP), ограничьте доступ к DNS-порту:
bash
<h2 id="razreshit-dns-tolko-iz-lokalnoy-seti">Разрешить DNS только из локальной сети</h2>
iptables -A INPUT -p udp --dport 53 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p tcp --dport 53 -s 192.168.1.0/24 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j DROP
iptables -A INPUT -p tcp --dport 53 -j DROP
<h2 id="sohranit-pravila">Сохранить правила</h2>
apt install -y iptables-persistent
netfilter-persistent save
#### Надёжный пароль и смена порта
Используйте сложный пароль для веб-интерфейса (не менее 16 символов). Смените стандартный порт 3000 на нестандартный (например, 18080) — это снизит количество автоматических атак.
#### Регулярное резервное копирование
bash
#!/bin/bash
<h2 id="backup-adguard-sh-zapuskat-cherez-cron-ezhednevno">backup-adguard.sh — запускать через cron ежедневно</h2>
BACKUP_DIR="/backup/adguard"
DATE=$(date +%Y%m%d)
AGH_DIR="/opt/AdGuardHome"
mkdir -p "$BACKUP_DIR"
<h2 id="kopirovat-konfig-i-bazu-dannyh">Копировать конфиг и базу данных</h2>
cp "$AGH_DIR/AdGuardHome.yaml" "$BACKUP_DIR/AdGuardHome-$DATE.yaml"
cp "$AGH_DIR/data/sessions.db" "$BACKUP_DIR/sessions-$DATE.db" 2>/dev/null || true
cp "$AGH_DIR/data/stats.db" "$BACKUP_DIR/stats-$DATE.db" 2>/dev/null || true
<h2 id="udalit-rezervnye-kopii-starshe-30-dney">Удалить резервные копии старше 30 дней</h2>
find "$BACKUP_DIR" -name "*.yaml" -mtime +30 -delete
find "$BACKUP_DIR" -name "*.db" -mtime +30 -delete
echo "Backup completed: $DATE"
#### Обновление AdGuard Home
AdGuard Home имеет встроенный механизм обновления через веб-интерфейс (Settings → Update) или через командную строку:
bash
<h2 id="proverit-tekuschuyu-versiyu">Проверить текущую версию</h2>
/opt/AdGuardHome/AdGuardHome --version
<h2 id="obnovit-cherez-ofitsialnyy-skript">Обновить через официальный скрипт</h2>
curl -s -S -L https://raw.githubusercontent.com/AdguardTeam/AdGuardHome/master/scripts/install.sh | sh -s -- -v -u
<h2 id="posle-obnovleniya-perezapustit">После обновления перезапустить</h2>
systemctl restart AdGuardHome
AdGuard Home vs Pi-hole vs NextDNS: сравнение в 2026 году
На рынке домашних DNS-фильтров в 2026 году доминируют три решения. Рассмотрим каждое и поможем сделать выбор.
#### Pi-hole
Pi-hole — пионер домашней DNS-фильтрации, появившийся в 2014 году. Написан на Python (bash), использует dnsmasq или FTL (FTL — собственный форк dnsmasq) в качестве DNS-резолвера, lighttpd в качестве веб-сервера.
Преимущества Pi-hole:
- Огромное сообщество, тысячи туториалов
- Зрелый проект с предсказуемым поведением
- Хорошая интеграция с Unbound (рекурсивный DNS)
- Подробная статистика и логи
Недостатки Pi-hole:
- Устаревший формат списков (только hosts-файл, нет поддержки синтаксиса ABP)
- Требует отдельной установки и настройки для DoH/DoT (через Cloudflared или Unbound)
- Веб-интерфейс на PHP — дополнительная зависимость
- Медленнее обновляется
Когда выбрать Pi-hole: если вы уже используете Pi-hole и всё работает, нет смысла мигрировать. Если нужна интеграция с Unbound для полного рекурсивного разрешения DNS без доверия сторонним серверам.
#### AdGuard Home
Преимущества AdGuard Home:
- DoH, DoT, DNSCrypt «из коробки» — не нужны дополнительные компоненты
- Современный синтаксис правил (ABP, AdGuard-синтаксис)
- Единый бинарный файл — простая установка и обновление
- Встроенный DHCP-сервер
- Активная разработка, частые релизы
- Более гибкие клиентские правила
Недостатки AdGuard Home:
- Молодой проект по сравнению с Pi-hole — меньше документации от сообщества
- Нет встроенной интеграции с Unbound (хотя можно настроить вручную)
- Иногда агрессивные обновления могут сломать конфигурацию
Когда выбрать AdGuard Home: новая установка, нужны DoH/DoT, важна простота конфигурации, хотите современный инструмент.
#### NextDNS
NextDNS — облачный DNS-сервис. Не требует собственного сервера — вы просто меняете DNS на роутере на серверы NextDNS, а управление ведётся через веб-интерфейс.
Преимущества NextDNS:
- Не нужен физический сервер или Raspberry Pi
- Работает из любой сети (не только домашней)
- Простейшая настройка — 5 минут
- Автоматические обновления, высокая доступность
Недостатки NextDNS:
- Платный сервис выше 300 000 запросов в месяц (~$1.99/мес)
- Все DNS-запросы проходят через серверы NextDNS — вопрос доверия
- Нет offline-режима — при недоступности NextDNS сеть падает
- Нет кастомных DNS-записей для локальных ресурсов
Когда выбрать NextDNS: нет желания заниматься инфраструктурой, нужна защита вне домашней сети (на телефоне в командировке), бюджет позволяет $2/месяц.
#### Сравнительная таблица
| Характеристика | AdGuard Home | Pi-hole | NextDNS |
|---|---|---|---|
| Тип | Self-hosted | Self-hosted | Cloud |
| DoH/DoT из коробки | ✅ | ❌ (нужен Cloudflared) | ✅ |
| Клиентские правила | ✅ гибкие | ⚠️ базовые | ✅ |
| Синтаксис ABP | ✅ | ❌ | ✅ |
| Встроенный DHCP | ✅ | ❌ | ❌ |
| Offline-работа | ✅ | ✅ | ❌ |
| Сложность настройки | Низкая | Средняя | Минимальная |
| Требования к железу | Минимальные | Минимальные | Нет |
| Стоимость | Бесплатно | Бесплатно | $2/мес+ |
| Приватность | Высокая | Высокая | Средняя |
Troubleshooting: решение типичных проблем
Рассмотрим наиболее распространённые проблемы и способы их решения.
#### Проблема 1: AdGuard Home не запускается — порт 53 занят
Самая частая проблема при установке. Симптом: в логах `address already in use: 0.0.0.0:53`.
bash
<h2 id="opredelit-kto-zanimaet-port-53">Определить, кто занимает порт 53</h2>
sudo lsof -i :53
sudo ss -tlunp | grep 53
<h2 id="esli-eto-systemd-resolved">Если это systemd-resolved:</h2>
sudo systemctl stop systemd-resolved
sudo systemctl disable systemd-resolved
<h2 id="esli-eto-dnsmasq-networkmanager">Если это dnsmasq (NetworkManager):</h2>
sudo systemctl stop NetworkManager
<h2 id="ili-izmenit-konfig-networkmanager">Или изменить конфиг NetworkManager:</h2>
echo "[main]
dns=none" | sudo tee /etc/NetworkManager/conf.d/no-dns.conf
sudo systemctl restart NetworkManager
<h2 id="zapustit-adguard-home-posle-osvobozhdeniya-porta">Запустить AdGuard Home после освобождения порта</h2>
sudo systemctl start AdGuardHome
sudo systemctl status AdGuardHome
#### Проблема 2: Сайты не открываются — DNS не отвечает
Симптом: браузер показывает «DNS_PROBE_FINISHED_NXDOMAIN» на всех сайтах.
bash
<h2 id="proverit-zapuschen-li-adguard-home">Проверить, запущен ли AdGuard Home</h2>
systemctl status AdGuardHome
<h2 id="proverit-slushaet-li-on-na-portu-53">Проверить, слушает ли он на порту 53</h2>
ss -tlunp | grep 53
nmap -p 53 192.168.1.2
<h2 id="proverit-dns-napryamuyu">Проверить DNS напрямую</h2>
dig @192.168.1.2 google.com
nslookup google.com 192.168.1.2
<h2 id="proverit-logi-adguard-home">Проверить логи AdGuard Home</h2>
journalctl -u AdGuardHome -n 50
<h2 id="esli-adguard-home-upal-perezapustit-i-proverit-prichinu">Если AdGuard Home упал — перезапустить и проверить причину</h2>
sudo systemctl restart AdGuardHome
journalctl -u AdGuardHome -f
#### Проблема 3: Конкретный сайт не открывается — ложное срабатывание
bash
<h2 id="proverit-zablokirovan-li-domen-v-adguard-home">Проверить, заблокирован ли домен в AdGuard Home</h2>
<h2 id="v-veb-interfeyse-query-log-nayti-domen">В веб-интерфейсе: Query Log → найти домен</h2>
<h2 id="cherez-cli-proverit-razreshenie">Через CLI проверить разрешение</h2>
dig @192.168.1.2 api.example.com
<h2 id="esli-zablokirovan-nayti-prichinu-v-loge-i-dobavit-isklyuchenie">Если заблокирован — найти причину в логе и добавить исключение</h2>
<h2 id="v-filters-custom-rules">В Filters → Custom rules:</h2>
@@||api.example.com^
<h2 id="ili-razreshit-ves-domen">Или разрешить весь домен:</h2>
@@||example.com^
#### Проблема 4: Высокая задержка DNS — медленная загрузка страниц
bash
<h2 id="izmerit-zaderzhku-dns">Измерить задержку DNS</h2>
time dig @192.168.1.2 google.com
time dig @8.8.8.8 google.com
<h2 id="esli-adguard-home-medlennee-problema-v-upstream">Если AdGuard Home медленнее — проблема в upstream</h2>
<h2 id="proverit-upstream-cherez-api">Проверить upstream через API</h2>
curl -s -u "admin:pass" http://192.168.1.2:3000/control/test_upstream_dns \
-X POST -H "Content-Type: application/json" \
-d '{"upstream_dns":["https://dns.cloudflare.com/dns-query"]}'
<h2 id="vklyuchit-kesh-i-optimisticheskiy-kesh">Включить кэш и оптимистический кэш</h2>
<h2 id="settings-dns-settings-cache-settings-optimistic-caching-on">Settings → DNS Settings → Cache settings → Optimistic caching: ON</h2>
<h2 id="pereklyuchit-rezhim-upstream-na-fastest-addr">Переключить режим upstream на fastest_addr</h2>
<h2 id="v-adguardhome-yaml-upstream-mode-fastest-addr">в AdGuardHome.yaml: upstream_mode: fastest_addr</h2>#### Проблема 5: Устройства не видны в клиентах — нет имён
bash
<h2 id="ubeditsya-chto-arp-tablitsa-dostupna">Убедиться что arp-таблица доступна</h2>
arp -n
<h2 id="vklyuchit-obnaruzhenie-klientov-v-adguardhome-yaml">Включить обнаружение клиентов в AdGuardHome.yaml:</h2>
<h2 id="clients">clients:</h2>
<h2 id="runtime-sources">runtime_sources:</h2>
<h2 id="whois-true">whois: true</h2>
<h2 id="arp-true">arp: true</h2>
<h2 id="rdns-true">rdns: true</h2>
<h2 id="dhcp-true">dhcp: true</h2>
<h2 id="hosts-true">hosts: true</h2>
<h2 id="esli-ispolzuete-dhcp-adguard-home-ustroystva-budut-imenovany-avtomaticheski">Если используете DHCP AdGuard Home — устройства будут именованы автоматически</h2>
<h2 id="esli-router-upravlyaet-dhcp-dobavte-ustroystva-vruchnuyu-v-clients">Если роутер управляет DHCP — добавьте устройства вручную в Clients</h2>
<h2 id="alternativa-zadat-imena-cherez-etc-hosts-na-servere">Альтернатива: задать имена через /etc/hosts на сервере</h2>
echo "192.168.1.100 my-laptop" >> /etc/hosts
#### Проблема 6: После обновления AdGuard Home что-то перестало работать
bash
<h2 id="otkatitsya-na-predyduschuyu-versiyu">Откатиться на предыдущую версию</h2>
<h2 id="skachat-nuzhnuyu-versiyu-s-github-releases">Скачать нужную версию с GitHub Releases</h2>
VERSION="v0.107.43"
curl -L -o /tmp/AdGuardHome.tar.gz \
"https://github.com/AdguardTeam/AdGuardHome/releases/download/${VERSION}/AdGuardHome_linux_amd64.tar.gz"
<h2 id="ostanovit-servis">Остановить сервис</h2>
systemctl stop AdGuardHome
<h2 id="zamenit-binarnyy-fayl">Заменить бинарный файл</h2>
tar -xzf /tmp/AdGuardHome.tar.gz -C /tmp/
cp /tmp/AdGuardHome/AdGuardHome /opt/AdGuardHome/AdGuardHome
<h2 id="zapustit">Запустить</h2>
systemctl start AdGuardHome
Часто задаваемые вопросы (FAQ)
#### Вопрос 1: Замедлит ли AdGuard Home интернет?
Нет, при правильной настройке AdGuard Home не замедляет интернет — а даже ускоряет. DNS-кэш AdGuard Home отвечает на повторные запросы за 0-1 мс, что быстрее любого внешнего DNS-сервера. Первоначальное разрешение нового домена через DoH занимает 50-150 мс — примерно столько же, сколько обычный DNS. Для восприятия пользователя это незаметно: DNS — не узкое место загрузки страниц. Если вы заметили замедление, скорее всего причина в слишком большом объёме списков блокировки или медленном upstream-сервере.
#### Вопрос 2: Заблокирует ли AdGuard Home рекламу на YouTube?
Частично. Реклама на YouTube загружается с тех же доменов (googlevideo.com, youtube.com), что и основной контент видео. Блокировка этих доменов заблокирует и само видео. DNS-фильтрация не может отличить рекламный запрос от основного на уровне DNS. Для блокировки рекламы YouTube нужны браузерные расширения (uBlock Origin) или приложения вроде ReVanced для Android. AdGuard Home блокирует большинство другой рекламы отлично, но YouTube — специфическая проблема любого DNS-блокировщика.
#### Вопрос 3: Нужен ли мне Raspberry Pi или достаточно роутера?
Зависит от вашего роутера. Некоторые прошивки роутеров (OpenWRT, Padavan) позволяют установить AdGuard Home прямо на роутер — это самый простой вариант. Однако большинство домашних роутеров слишком маломощны для AdGuard Home. Raspberry Pi Zero 2W стоит около $15 и потребляет 2 Вт — отличное решение. Если у вас уже есть постоянно работающий ПК, NAS или мини-ПК (Intel NUC, неттоп) — AdGuard Home можно установить на него как Docker-контейнер без дополнительных расходов.
#### Вопрос 4: В чём разница между DoH и DoT?
Оба протокола шифруют DNS-запросы, делая их невидимыми для провайдера. Разница в транспорте: DoT (DNS-over-TLS) использует выделенный порт 853, DoH (DNS-over-HTTPS) работает на порту 443 вместе с обычным HTTPS-трафиком. DoH сложнее заблокировать провайдеру, так как его трафик неотличим от обычного HTTPS. DoT чуть быстрее из-за меньшего оверхеда. В большинстве домашних сетей разница незначительна — выбирайте то, что поддерживают ваши upstream-серверы.
#### Вопрос 5: Как заблокировать рекламу в приложениях на смартфоне?
AdGuard Home блокирует рекламные домены, к которым обращаются мобильные приложения, на уровне DNS — это работает для большинства приложений. Исключение — приложения с встроенными рекламными SDK, которые обращаются к рекламным серверам напрямую по IP, без DNS. Таких приложений немного, но они существуют. Для максимальной блокировки в мобильных приложениях используйте AdGuard для Android или iOS в сочетании с AdGuard Home — двухуровневая защита.
#### Вопрос 6: Как синхронизировать настройки AdGuard Home между несколькими экземплярами?
Официально множественные экземпляры не синхронизируются. Решения: используйте AdGuard Home Sync (сторонний проект) для автоматической синхронизации конфигурации через API; или управляйте конфигом как кодом через Git — при изменении конфига делайте коммит и применяйте на всех серверах через скрипт. Для HA-конфигурации с двумя серверами хватает периодического rsync конфигурационного файла.
#### Вопрос 7: Можно ли использовать AdGuard Home вместе с VPN на роутере?
Да, они хорошо совместимы. При использовании VPN на роутере (например, WireGuard или OpenVPN) DNS-запросы могут идти или через VPN-туннель или напрямую — зависит от настройки VPN. Убедитесь, что DNS-сервер, указанный клиентам, это AdGuard Home (192.168.1.2), а не VPN DNS-сервер. AdGuard Home в свою очередь может использовать upstream DNS через VPN-туннель для дополнительной приватности.
#### Вопрос 8: Как добавить AdGuard Home как публичный DoH-сервер для использования вне дома?
Для использования вашего AdGuard Home вне домашней сети нужно: публичный IP или домен; открытый порт 443 на роутере с проброской на порт AdGuard Home; TLS-сертификат. Настройте в Settings → Encryption, включите DoH, укажите сертификат. Адрес DoH будет: `https://ваш-домен/dns-query`. Этот адрес можно прописать в настройках телефона (Private DNS на Android, DNS-over-HTTPS в настройках iOS) для использования вашего AdGuard Home из любой сети.
#### Вопрос 9: Почему некоторые устройства не видны в разделе клиентов?
AdGuard Home определяет клиентов по IP-адресу DNS-запроса. Если устройство делает DNS-запросы не через AdGuard Home (использует захардкоженный DNS 8.8.8.8 или встроенный DoH), оно не появится в клиентах. Второй источник проблем — устройства за NAT (если AdGuard Home видит только IP роутера, а не IP конкретных устройств). Для решения: включите DHCP-сервер AdGuard Home, или используйте принудительную переадресацию DNS через iptables.
#### Вопрос 10: Как экспортировать статистику в Grafana?
Используйте adguard-exporter для Prometheus или пишите данные в InfluxDB через API AdGuard Home. На GitHub доступны готовые Grafana dashboards с ID: 13330 (AdGuard Home Exporter Dashboard). Импортируйте через Grafana: Dashboards → Import → ID 13330. После настройки получите красивые графики запросов, блокировок, топ-клиентов и производительности.
#### Вопрос 11: Насколько безопасно включать SafeBrowsing в AdGuard Home?
SafeBrowsing в AdGuard Home работает через API AdGuard. Ваш запрос хэшируется (SHA256), и только хэш отправляется в API — не сам домен. Это стандартная практика (аналогично работает Google Safe Browsing). AdGuard не может восстановить исходный домен из хэша. Если приватность критична — отключите SafeBrowsing и используйте только локальные списки блокировки вредоносных доменов (например, от Malware Domain List).
#### Вопрос 12: Что делать если AdGuard Home потребляет много RAM?
AdGuard Home загружает все списки блокировки в память для быстрого поиска. Большое количество списков = большее потребление RAM. На Raspberry Pi 3 (1 GB RAM) с 5-6 крупными списками AdGuard Home может потреблять 200-400 MB. Оптимизация: удалите дублирующие списки, используйте только действительно необходимые фильтры, уменьшите размер DNS-кэша (cache_size). Включение swap на SD-карте Raspberry Pi нежелательно — это сильно ускоряет износ карты.
Заключение: AdGuard Home в 2026 году
AdGuard Home в 2026 году — это зрелый, функциональный и активно развивающийся инструмент для защиты домашней сети на уровне DNS. За несколько лет он превратился из альтернативы Pi-hole в самостоятельный продукт, который во многих отношениях превосходит конкурентов: встроенные DoH/DoT, современный синтаксис правил, гибкие клиентские политики, встроенный DHCP-сервер — всё это доступно без дополнительных компонентов.
#### Итоговые рекомендации
Для начинающих: установите AdGuard Home через Docker на любой постоянно работающий компьютер или NAS. Добавьте три списка блокировки (AdGuard DNS filter + EasyList + EasyPrivacy), укажите Cloudflare DoH как upstream, направьте роутер использовать AdGuard Home как DNS. Этого достаточно для 90% задач.
Для Raspberry Pi: используйте статический IP, настройте cron для автоматического обновления списков, включите ротацию логов чтобы беречь SD-карту. Рассмотрите переход на Raspberry Pi с SSD-накопителем вместо SD-карты для длительной эксплуатации.
Для продвинутых пользователей: используйте API для автоматизации, интегрируйте с Prometheus и Grafana для мониторинга, настройте split-horizon DNS для домашнего лаба, включите DHCP-сервер AdGuard Home для централизованного управления сетью.
Для семьи с детьми: настройте индивидуальные клиентские политики для каждого устройства, включите SafeSearch и родительский контроль для детских устройств, добавьте принудительную переадресацию DNS через iptables чтобы устройства не могли обойти фильтрацию.