Пошаговые руководства, шпаргалки, полезные ссылки...
БлогФорумАвторы
Полезные Online-сервисы
Перечень Бесплатного ПО
Подписка на RSS-канал
В составе systemd, используемой в конфигурации по умолчанию в Debian GNU/Linux 9 имеется отдельная служба, отвечающая за разрешение имён с возможностью кэширования результатов запросов с внешних DNS-серверов - systemd-resolved.
Поэтому, если нужно ускорить работу механизма разрешения имён, например с корпоративных DNS-серверов, нет необходимости устанавливать и настраивать специальные пакеты типа dnsmasq, а достаточно лишь выполнить настройку systemd-resolved.
В конфигурации по умолчанию данная служба не запущена:
# systemctl status systemd-resolved● systemd-resolved.service - Network Name Resolution Loaded: loaded (/lib/systemd/system/systemd-resolved.service; disabled...) Drop-In: /lib/systemd/system/systemd-resolved.service.d └─resolvconf.conf Active: inactive (dead)...
Установим модуль nss-resolve (библиотека libnss_resolve.so из пакета libnss-resolve) для механизма Name Service Switch (NSS), который будет вызывать службу systemd-resolved для разрешения имён:
# apt-get install libnss-resolve
В процессе установки в конфигурационном файле /etc/nsswitch.conf строка hosts: files dns будет автоматически заменена на следующий вид:
/etc/nsswitch.conf
hosts: files dns
... hosts: files resolve [!UNAVAIL=return] dns ...
Настроим конфигурационный файл /etc/systemd/resolved.conf, заполнив параметры секции [Resolve], например следующим образом:
/etc/systemd/resolved.conf
[Resolve]
# This file is part of systemd. # # systemd is free software; you can redistribute it and/or modify it # under the terms of the GNU Lesser General Public License as published by # the Free Software Foundation; either version 2.1 of the License, or # (at your option) any later version. # # Entries in this file show the compile time defaults. # You can change settings by editing this file. # Defaults can be restored by simply deleting this file. # # See resolved.conf(5) for details [Resolve] DNS=10.1.0.9 10.2.0.8 #FallbackDNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844 Domains=my.holding.com LLMNR=no DNSSEC=no Cache=yes DNSStubListener=no
Для совместимости с приложениями, которые не используют библиотечные вызовы, а обращаются к DNS серверам напрямую, получая их из /etc/resolv.conf, создадим символическую ссылку на файл /run/systemd/resolve/resolv.conf, контент которого автоматически генерируется исходя из настроек, заданных нами в /etc/systemd/resolved.conf:
/etc/resolv.conf
/run/systemd/resolve/resolv.conf
# ln -svi /run/systemd/resolve/resolv.conf /etc/resolv.conf ln: replace '/etc/resolv.conf'? y '/etc/resolv.conf' -> '/run/systemd/resolve/resolv.conf'
Проверим линковку:
# ls -la /etc/resolv.conf lrwxrwxrwx 1 root root 32 Dec 11 16:22 /etc/resolv.conf -> /run/systemd/resolve/resolv.conf
Теперь осталось только включить автозагрузку службы и запустить её:
# systemctl enable systemd-resolved # systemctl restart systemd-resolved # systemctl status systemd-resolved
Дополнительные источники информации:
Проверено на следующих конфигурациях:
Автор первичной редакции: Алексей Максимов Время публикации: 27.12.2017 11:29