Что такое «правильный путь» для внесения изменений в /etc/resolv.conf с помощью /etc/resolv.conf.d?

Я в старые времена, resolv.conf был статичным, и вы отредактировали его самостоятельно.

Позже клиент DHCP перепишет его, используя некоторые статические записи и то, что он получил от аренды DHCP.

В наши дни в некоторых дистрибутивах, таких как my (Linux Mint 18.1), есть механизм /etc/resolv.conf.d с несколькими подкаталогами скриптов, и, ну, я не могу сделать головы и хвосты.

Тогда правильный путь,

  • указать, что я хочу использовать или не использовать DNS-сервер (ы), полученный в договоре DHCP?
  • добавлять фиксированные записи в resolv.conf, всегда или в качестве резервной копии, когда нет сервера имен, полученных от DHCP?
  • принимать решения об относительном порядке в файле?

Я не против писать собственные сценарии, если у меня есть, я просто не хочу «работать против» существующего механизма или дублировать работу.

resol.conf, и некоторые механизмы, подобные этим, существуют с прошлых лет до сих пор. Существует командная строка dhclient , resolvconf которая обрабатывает этот файл. Однако в последнее время Linux представляет новый интерфейс для конфигурации NetworkManager по имени nmcli . Это богатая команда для управления каждой постоянной конфигурацией сети (не время работы). вы можете использовать что-то вроде:

 $ nmcli connection modify eth0 ipv4.dns 8.8.8.8 

Эта команда будет перезаписывать resolv.conf . В RHCA рекомендуется не редактировать resolv.conf вручную и использовать его команды. О каком каталоге resolvconf вы упомянули, я могу сказать, что некоторые службы могут иметь собственный протокол для DNS, поэтому они используют его как собственный OpenVpn. Вы также можете проверить файл /etc/nsswitch для получения дополнительной информации о разрешении.