Как настроить DNS для устройств на Keenetic с AdGuard Home
Полное руководство по настройке DNS для конкретных устройств на Keenetic роутере с AdGuard Home. Решаем проблему 'Query refused' и обеспечиваем стабильную работу интернета.
Как настроить DNS для определенных устройств на Keenetic роутере с AdGuard Home?
Ситуация:
- Роутер Keenetic GIGA, версия ОС 4.3.6.3
- AdGuard Home развернут на локальном хосте Ubuntu 24 через Docker
- В настройках роутера в меню “Интернет фильтры” установлен режим “Публичные DNS резолверы”
- Создан профиль “Профиль модерация” с DNS сервером 192.168.1.20 (адрес AdGuard Home)
Проблема:
При назначении этого профиля устройству перестает работать интернет. DNS и nslookup выдают ошибку:
“UnKnown не удалось найти ya.ru: Query refused”
Тестирование:
Явный запрос DNS работает корректно:
nslookup ya.ru 192.168.1.20
Вопрос:
Как правильно настроить интернет фильтры на Keenetic роутере, чтобы для определенных устройств DNS запросы проходили через 192.168.1.20 (AdGuard Home) без потери интернет соединения?
Чтобы настроить DNS для определенных устройств на Keenetic роутере с AdGuard Home, необходимо правильно сконфигурировать интернет-фильтры и убедиться в корректной настройке DNS-прокси, так как текущая конфигурация вызывает конфликт между публичными DNS-резолверами и локальным AdGuard Home, приводящий к ошибке “Query refused”.
Содержание
- Основные проблемы конфигурации
- Правильная настройка интернет-фильтров
- Настройка DNS-прокси Keenetic
- Альтернативные методы настройки
- Решение конфликта DNS-серверов
- Тестирование и проверка
Основные проблемы конфигурации
Проблема с потерей интернет-соединения при назначении профиля с локальным DNS-сервером возникает из-за конфликта между режимом “Публичные DNS резолверы” и локальным AdGuard Home. Когда вы создаете профиль “Профиль модерация” с DNS-сервером 192.168.1.20, Keenetic пытается использовать его в качестве публичного DNS-резолвера, но AdGuard Home настроен работать как локальный DNS-прокси, а не как публичный сервер.
Ваша ситуация типична для пользователей Keenetic, которые хотят использовать локальные DNS-фильтры. Как указано в документации Keenetic, “It is not possible to run SafeDNS, Cloudflare DNS, and AdGuard DNS services at the same time” источник. Это ограничение также распространяется на смешивание публичных DNS-сервисов с локальными DNS-серверами.
Правильная настройка интернет-фильтров
Для корректной работы AdGuard Home на Keenetic необходимо изменить подход к настройке. Вместо использования режима “Публичные DNS резолверы”, следует настроить DNS-прокси Keenetic.
Шаг 1: Отключение текущих интернет-фильтров
Перейдите в меню роутера и отключите режим “Публичные DNS резолверы”. Это позволит настроить собственный DNS-прокси.
Шаг 2: Настройка DNS-прокси
- Откройте веб-интерфейс роутера по адресу my.keenetic.net
- Перейдите в раздел “Система” → “Компоненты”
- Убедитесь, что установлен компонент “Облачная фильтрация контента и блокировка рекламы”
- Перейдите в “Интернет” → “Безопасность интернета”
- В разделе “DNS-прокси” настройте параметры
Важно: Keenetic поддерживает AdGuard DNS через собственную систему DNS-прокси, а не как внешний DNS-сервер. Это ключевое отличие от вашей текущей конфигурации.
Шаг 3: Создание профиля для AdGuard Home
Вместо создания отдельного профиля, настройте Keenetic для перенаправления DNS-запросов на ваш локальный AdGuard Home:
- В разделе “DNS-прокси” добавьте адрес 192.168.1.20 в качестве основного DNS-сервера
- Настройте правила для конкретных устройств
Настройка DNS-прокси Keenetic
Для корректной работы с локальным AdGuard Home необходимо правильно настроить DNS-прокси Keenetic:
Конфигурация через командную строку
- Подключитесь к роутеру через SSH
- Выполните команду:
(config) dns-proxy add 192.168.1.20 - Настройте правила для конкретных устройств:
(config) dns-proxy rule add device=Ваше_устройство dns-server=192.168.1.20
Проверка конфигурации
После настройки проверьте доступность AdGuard Home:
(config) show dns-proxy status
Как указано в документации Keenetic, вы можете проверить доступность AdGuard DNS через командную строку с помощью команды:
(config) show adguard-dns availability
Альтернативные методы настройки
Метод 1: Настройка через DHCP
Если предыдущие методы не работают, настройте DNS-сервер через DHCP:
- Перейдите в “Сеть” → “Домашняя сеть”
- В разделе “DHCP” добавьте DNS-сервер 192.168.1.20
- Настройте исключения для конкретных устройств, если нужно
Важно: При таком подходе устройства будут использовать AdGuard Home напрямую, а не через прокси Keenetic. Это может потребовать дополнительной настройки на самом AdGuard Home.
Метод 2: Настройка правил маршрутизации
Настройте правила маршрутизации для DNS-трафика:
- Перейдите в “Сеть” → “Маршрутизация”
- Создайте правило для перенаправления DNS-трафика на 192.168.1.20
- Примените это правило к нужным устройствам
Метод 3: Использование GitHub решения
Существует специальный проект для настройки AdGuard Home на Keenetic: AdGuardHome-Keenetic. Этот проект предоставляет готовые решения для интеграции AdGuard Home с Keenetic.
Решение конфликта DNS-серверов
Основная проблема заключается в том, что Keenetic не может одновременно использовать публичные DNS-резолверы и локальный DNS-сервер. Для решения этой проблемы:
Отключение DNS-over-TLS и DNS-over-HTTPS
Как указано в документации Keenetic, при включении AdGuard DNS и Cloudflare DNS могут возникать проблемы с проверкой статуса сервиса. Отключите эти протоколы:
- Перейдите в “Интернет” → “Безопасность интернета”
- Отключите DNS-over-TLS и DNS-over-HTTPS
- Настройте только базовый DNS-прокси
Проверка конфигурации AdGuard Home
Убедитесь, что AdGuard Home правильно настроен для работы с Keenetic:
- Проверьте, что AdGuard Home слушает порт 53
- Убедитесь, что разрешены запросы с локальной сети
- Проверьте логи AdGuard Home на наличие ошибок
Тестирование и проверка
После настройки проведите тестирование:
Проверка DNS-запросов
- На устройстве, для которого настроен AdGuard Home, выполните:
nslookup ya.ru - Проверьте, что запросы успешно разрешаются
Проверка интернет-соединения
Убедитесь, что интернет-соединение работает корректно:
- Откройте браузер
- Перейдите на несколько сайтов
- Проверьте скорость соединения
Диагностика проблем
Если проблемы сохраняются, выполните диагностику:
- Проверьте логи роутера
- Проверьте состояние AdGuard Home
- Проверьте сетевое подключение между роутером и сервером с AdGuard Home
Как указано в одном из источников, “You can assign filtering policies to permanent home network devices (registered in Keenetic) and the default policy for all unregistered devices” источник. Используйте эту возможность для точной настройки DNS для конкретных устройств.
Источники
- Internet safety with AdGuard DNS – Keenetic
- Content filtering and ad blocking options – Keenetic
- Internet safety with AdGuard public DNS – Keenetic
- Keenetic Router Setup – SafeDNS docs
- AdGuardHome-Keenetic – GitHub
- Keenetic | AdGuard DNS Knowledge Base
- DNS-over-TLS and DNS-over-HTTPS proxy servers – Keenetic
Заключение
- Отключите режим “Публичные DNS резолверы” и настройте собственный DNS-прокси Keenetic для работы с локальным AdGuard Home
- Используйте командную строку роутера для точной настройки правил DNS-прокси для конкретных устройств
- Проверьте конфигурацию AdGuard Home, убедившись в правильной настройке портов и разрешений для локальной сети
- Применяйте альтернативные методы, такие как настройка через DHCP или правила маршрутизации, если стандартный подход не работает
- Тщательно тестируйте конфигурацию после каждого изменения, чтобы избежать потери интернет-соединения
Основная проблема заключается в конфликте между публичными DNS-сервисами и локальным DNS-сервером. Решение требует правильной настройки DNS-прокси Keenetic и корректной интеграции с AdGuard Home, а не простого добавления DNS-адреса в профиль интернет-фильтров.