SystemdDoctor
systemd-resolved.service dnsсеть

systemd-resolved: имена не разрешаются

systemd-resolved отвечает за разрешение имён и слушает порт 53 на адресе 127.0.0.53. Проблемы с ним делятся на две группы: конфликт за порт с локальным DNS-сервером и неверная настройка /etc/resolv.conf, из-за которой программы обращаются не туда.

О службе

Правильная схема выглядит так: /etc/resolv.conf — это ссылка на /run/systemd/resolve/stub-resolv.conf, в котором указан один сервер 127.0.0.53. Если файл заменили обычным с внешними серверами, часть механизмов resolved (поиск по доменам, разные серверы для разных интерфейсов) перестаёт работать, хотя имена разрешаются.

Диагностика делается двумя разными командами, и это важно. resolvectl query имя спрашивает через resolved и показывает, какой сервер ответил. Обычный dig имя идёт напрямую и может работать, когда resolved сломан — или наоборот. Разница в результатах сразу указывает, где проблема.

В контейнерах resolved часто не нужен вовсе: разрешение имён обеспечивает среда исполнения. Включённая служба там конфликтует с настройками контейнера и приводит к странному поведению имён.

Как устроена

Адрес и порт127.0.0.53:53 — заглушка, через которую идут запросы программ
Правильный resolv.confссылка на /run/systemd/resolve/stub-resolv.conf
Диагностикаresolvectl status и resolvectl query имя
Кешсбрасывается командой resolvectl flush-caches
Конфликтс BIND, dnsmasq и другими локальными DNS-серверами за порт 53

Частые ошибки

12 записей базы отмечены за этой службой.

Сообщения журнала

Коды выхода

  • status=1/FAILURE в systemdКод 1/FAILURE означает, что программа запустилась и сама завершилась с ошибкой. Как найти настоящую причину в журнале службы.

Ошибки служб

Коды выхода этой службы

Числа в status=N ниже 200 назначает сама программа, 200 и выше — systemd, когда не смог подготовить запуск.

statusЧто означает у этой службыКуда смотреть
1/FAILURE ошибка в настройках resolved или невозможность занять адрес заглушки. разбор

Диагностика

Настройки по интерфейсам: какие серверы используются и что настроено.

resolvectl status

Запрос через resolved с указанием сервера, который ответил.

resolvectl query example.org

Ссылка это или обычный файл: от этого зависит, работает ли схема целиком.

ls -l /etc/resolv.conf

Кто занимает порт 53: при конфликте здесь будет два процесса.

sudo ss -ulnp | grep :53

Параметры unit, которые тут важны

  • Type=notify: служба сообщает о готовности
  • Restart=always: без разрешения имён система почти неработоспособна

Источники

  • systemd-resolved.service(8) официальная документация
    сверено 15 сентября 2026
  • Воспроизведено на тестовой машине, systemd 255 (Ubuntu 24.04) собственная проверка
    сверено 15 сентября 2026