Який "правильний спосіб" вплинути на зміни в /etc/resolv.conf за допомогою /etc/resolv.conf.d на місці?


11

Я в старі часи resolv.confбув статичним, і ти сам це редагував.

Пізніше клієнт DHCP переписав би його, використовуючи деякі статичні записи та те, що він отримав від оренди DHCP.

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

Тоді який правильний шлях,

  • щоб вказати, що я хочу використовувати або не використовувати сервер DNS, отриманий в DHCP-оренді?
  • додавати фіксовані записи до resv.conf завжди або як резервний запас, коли немає сервера імен, отриманих DHCP?
  • приймати рішення щодо відносного порядку у файлі?

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


4
Я видаляю resolvconfсервери ... unix.stackexchange.com/questions/286195/…
Rui F Ribeiro

Ви також можете налаштувати dhclientігнорувати / замінювати інформацію про DNS DHCP; Я не впевнений, що існує механізм /etc/resolv.conf.dдля цього (але я не використовую Mint і не маю цих сценаріїв).
dirkt

@dirkt: Насправді на даний момент єдиний запис, який входить до мого, /etc/resolv.conf- це localhost (який запускає dnsmasq), тому мені незрозуміло, як взаємодіють dnsmasq, механізм resv.conf.d та клієнт DHCP.
einpoklum

Відповіді:


2

Відповідь проста: resolv.conf.dпапка існує в / etc / resolutionvconf / і містить заголовки / base / оригінальні та хвостові файли. кожен із них, якщо буде відредагований, оновить resolv.confфайл у / etc /

скажемо, що ви хочете поставити статичну DNS-адресу на початку resolv.confв / etc / (тому що при кожному перезавантаженні вона автоматично скидається до стандартних налаштувань), вам потрібно відредагувати headфайл у /etc/resolvconf/resolvconf.d/ і ввести наприклад:

nameserver 1.1.1.1
nameserver 1.0.0.1

після цього перезапустіть службу Resolvconf, використовуючи:

sudo service resolvconf restart

тепер увімкніть resolv.conf/ etc /, і ви побачите нові зміни.

те ж саме стосується, якщо ви хочете розмістити речі внизу файлу, ви використовуєте tailзамість head/etc/resolvconf/resolvconf.d/

PS: це 100% перевірені та працюють Ubuntu та Debian

Редагувати: Я вже відповів на останні два пункти вашого запитання, що стосуються першої кулі, яка розповідає про те, як не використовувати адресу DNS, надану DHCP. Це дійсно залежить від встановленого програмного забезпечення / пакета DNS, який ви встановили, тому я рекомендую вам перевірити цю публікацію та переконайтесь, що ви прочитали те, що знаходиться під нею, а також у випадку, якщо є dnsmasq.


1
+1, але це лише пояснює, як зробити частину того, про що я запитав.
einpoklum

0

resolution.conf та деякі подібні механізми існують з минулих років і дотепер. Існує командний рядок dhclient, resolvconfякий обробляє цей файл, проте останнім роком Linux представив новий інтерфейс для конфігурації NetworkManager на ім'я nmcli . Це багата команда для управління кожною стійкою мережевою конфігурацією (не час роботи). ви можете використовувати щось таке, як:

$ nmcli connection modify eth0 ipv4.dns 8.8.8.8

Ця команда буде перезаписати resolv.confфайл. У RHCA рекомендується не редагувати резолюцію.conf від руки та використовувати її команди. Про згадуваний вами каталог resvconf я можу сказати, що деякі сервіси можуть мати власну конфіденційність для DNS, тому вони використовують його власну конф, наприклад OpenVpn. Ви також можете перевірити /etc/nsswitchфайл, щоб отримати більше інформації про вирішення.


Я не вірю, що це насправді відповідає на моє запитання.
einpoklum

Ну, можливо, це моя промаха зрозуміла у вашому запитанні, але nsswitchфайл - це одна ваша відповідь.
Алі Гассампур

Я вважаю, @einpoklum хоче контролювати порядок роботи серверів DNS в resolv.conf(див. man resolv.conf), А не в порядку використання засобів, що використовуються для вирішення ( man nsswitch.conf). Але ваша відповідь все ж цікава.
xhienne

Спасибі за ваш інтерес . Наскільки я знаю, resoluv.conf є послідовним файлом і його пріоритет розв'язання - від верхнього донизу.
Алі Гасемпур
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.