Это предупреждение регистрируется systemd-resolved всякий раз, когда имя не может быть разрешено системой DNS (например, nslookup www.kjfoiqaefah34876asdf.com). С этим можно мириться, и это не повод для беспокойства.Это не ошибка, и ничего не нужно исправлять.
Перенаправление /etc/resolv.conf к /run/systemd/resolve/resolv.conf это неправильно, потому что таким образом systemd-resolved пропускается, и приложение с ошибочным DNS-запросом обращается непосредственно к серверу имен, а не к systemd-resolved больше не заглушка. Таким образом systemd-resolved больше не замечает события NXDOMAIN и, следовательно, больше не может их регистрировать.
События NXDOMAIN вызываются пакетами, которые пытаются получить доступ к несуществующим серверам во время запуска системы.
ВАЖНО: Решение, размещенное здесь, скрывает проблемное сообщение, обходя важную часть вашей системы (демон DNS resolver). Это может привести к сбою DNS в будущем (пример). Для правильного способа обработки сообщения об ошибке, пожалуйста, обратитесь к этот ответ.
Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018- 0001, retrying transaction with reduced feature level UDP.
Та же ошибка произошла с моим настольным компьютером, я не знаю, относится ли это и к серверу.
Похоже, что в моей системе была старая конфигурация, что привело к конфликту между двумя службами: resolvconf и systemd-resolved.
Символическая ссылка /etc/resolv.conf указал на ../run/resolvconf/resolv.conf
Меняем его так, чтобы он указывал на /run/systemd/resolve/resolv.conf который управляется systemd, исправил это для меня.
Хотя могут быть и другие обстоятельства, при которых возникнет эта ошибка, я могу определенно сказать, что я видел, как ее вырвало на выходе:
systemctl status systemd-resolved
...когда systemd-resolved не настроен.
И еще Лазурь Виртуальная машина Ubuntu 18.04 не имеет systemd-resolved настроен из коробки (по состоянию на сегодняшний день, 20191008).
Решение:
Конфигурировать systemd-resolved.
Мини systemd-resolved Настройка HowTo:
записка: Следующие инструкции были подготовлены с использованием Ubuntu 18.04
Редактировать hosts директива в /etc/nsswitch.conf добавляя resolve который устанавливает systemd-resolved в качестве первого источника разрешения DNS, к которому будут обращаться:
hosts: resolve files dns
Редактировать /etc/systemd/resolved.conf. Некоторые предлагаемые настройки:
Я заметил то же самое на сервере Ubuntu 18.04, который недавно был обновлен до 18.04.1.
Похоже, что systemd-resolve регистрирует это сообщение всякий раз, когда получает какой-либо ответ NXDOMAIN. В моем случае у меня запущен постфикс. Таким образом, я получаю много NXDOMAINS, когда подключаются случайные серверы, для которых не установлена запись PTR.
Вы можете протестировать его с помощью
systemd-resolve securelogin.example.com
Затем вы должны увидеть сообщение журнала.
Имея это в виду, это может показаться относительно безобидной ошибкой, и вы можете игнорировать ее.
Мое понимание после прочтения предыдущих ответов и других веб-страниц, таких как Ubuntu 18.04 systemd-устранена ошибка NXDOMAIN заключается в том, что это скорее предупреждение, чем ошибка, и я ничего не могу с этим поделать со своей стороны.
Поэтому я согласен с теми, кто говорит, что мы не должны пытаться что-то сделать со своей стороны, чтобы эти сообщения больше не появлялись. Если нам это удастся, вполне вероятно, что мы изменили обычный способ, которым система разрешает DNS-запросы.
Однако, поскольку у меня их тысячи (я также нахожусь на рабочем столе - это не сервер), я не хочу, чтобы они были в моем файле системного журнала. Поэтому, следуя https://www.rsyslog.com/doc/v8-stable/configuration/filters.html и Префикс пары чисел к конфигурационным файлам, я добавил файл с именем 10-resolv.conf с помощью одной строки :msg, contains, "Server returned error NXDOMAIN, mitigating potential DNS violation DVE-2018-0001, retrying transaction with reduced feature level UDP" ~ в каталоге /etc/rsyslog.d .
Имя 10-resolv.conf не важно, но оно должно предшествовать всем остальным именам файлов в каталоге в алфавитном порядке. Команда :msg, contains, <message-part> ~ говорит, что все сообщения, содержащие "часть сообщения", должны игнорироваться: тильда ~ в команде сказано отбросить сообщение.
Добавлено примечание: С тех пор, как я написал этот ответ, я установил некоторые пакеты (по другим причинам), и сообщение об ошибке больше не выдается, как указано в journalctl -u systemd-resolved -f. Одним из установленных пакетов, который может объяснить исчезновение этого сообщения, является libnss-resolve.
ДОМЕН NXDOMAIN сообщение об ошибке означает, что домен не существует.
Некоторые интернет-провайдеры начали захват DNS или перенаправление DNS для сообщений об ошибках NXDOMAIN.Это практика перенаправления разрешения имен Системы доменных имен (DNS) на другие DNS-серверы или веб-серверы.
Обычно используется для показа рекламы или сбора статистики.
Эта практика нарушает стандарт RFC для ответов DNS (NXDOMAIN).
Фишинг: Межсайтовые скриптовые атаки могут возникать из-за злонамеренного захвата.
Цензура: поставщики услуг DNS блокируют доступ к выбранным доменам.
Я смог избавиться от сообщения, и, кстати, я также смог наконец подключиться к своему серверу samba, изменив имя сервера на server.domain вместо того, чтобы только server.
Если вы закомментируете две добавленные вами строки, будет ли это иметь значение? Я не думаю, что ошибки связаны с вашим /etc/hosts. Они происходят из-за того, что инфраструктура, за которой стоит сервер, вероятно, делает что-то не так. resolved: Mitigate DVE-2018-0001, by retrying NXDOMAIN without EDNS0. by xnox · Pull Request #8608 · systemd/systemd · GitHub похоже, это проблема, с которой вы столкнулись, и это был первый результат поиска для “DVE-2018-0001”. Я не думаю, что вы получите удовлетворительный ответ, пока проблема с исходным кодом не будет исправлена и выпущена.