Избегать замены DNS-преобразователей, обнаруженных DHCP?

Я использую CentOS 7.4, пытаюсь настроить dnsmasq для кэширования DNS и DNS-серверы для каждой зоны для работы Consul. По сути, конфигурация dnsmasq сводится к следующему:

# filter everything with consul in the name and send to local consul resolver
server=/consul/127.0.0.1#8600

Проблема, с которой я столкнулся, заключается в том, чтобы загрузить локальный преобразователь в /etc/resolv.conf без замены каких-либо других преобразователей в файле.

Раньше я мог сделать это, используя конфигурацию dhclient , например так:

prepend domain-name-servers 127.0.0.1;

Поскольку теперь все является NetworkManager, я обнаружил, что способ использования dnsmasq - это добавить следующую строку в [main] раздел /etc/NetworkManager/NetworkManager.conf :

dns=dnsmasq

Перед перезапуском NetworkManager я вижу, что мой /etc/resolv.conf содержит сетевой DNS-сервер, полученный DCHP:

# Generated by NetworkManager
search nowhere
nameserver 10.0.2.3
options single-request-reopen

После перезапуска NetworkManager с указанным выше изменением конфигурации он заменяет мой сетевой DNS-сервер на 127.0.0.1:

# Generated by NetworkManager
search nowhere
nameserver 127.0.0.1
options single-request-reopen

, поскольку dnsmasq использует /etc/resolv.conf для обнаружить локальные резолверы, я ' Я бы хотел оставить резолвер (ы) в /etc/resolv.conf , чтобы dnsmasq мог их обнаружить.

Есть ли способ достичь предыдущей функциональности, когда вместо этого NetworkManager просто добавляет локальный преобразователь?

1
задан 27 September 2017 в 23:21
1 ответ

По-видимому, даже несмотря на то, что CentOS 7.4 не поставляется с исходным /etc/dhclient.conf , это все еще допустимый путь. Я просто создал этот файл со следующим содержанием:

prepend domain-name-servers 127.0.0.1;

И вуаля!

# Generated by NetworkManager
search nowhere
nameserver 127.0.0.1
nameserver 10.0.2.3
options single-request-reopen
0
ответ дан 4 December 2019 в 04:34

Теги

Похожие вопросы