Назад | Перейти на главную страницу

Debian 8 resolv.conf перезаписывается автоконфигурацией IPv6 / DHCP при отключении DHCP

Недавно я установил Debian 8 в сети с включенным IPv6 DHCP. /etc/resolv.conf перезаписывается IPv6 DHCP, и он постоянно выходит, несмотря на то, что весь DHCP IPv6 отключен, автоконфигурация IPv6 отключена и процесс dhclient не существует. Если я изменю DNS-серверы IPv6 DHCP на маршрутизаторе, они будут быстро обновлены в /etc/resolv.conf. Верно следующее:

Я бы предпочел ответ, который не был бы «полностью отключить IPv6», хотя я приближаюсь к этому моменту (и достаточно сказать, что если бы это была физическая машина, а не виртуальная, я бы уже выбросил ее в окно) .

РЕДАКТИРОВАТЬ: обратите внимание, что net.ipv6.conf.all.disable_ipv6 = 0 в sysctl устраняет эту проблему, но похоже, что теперь resolv.conf периодически полностью очищается, нарушая DNS.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    address xx.xx.xx.xx
    netmask 255.255.255.248
    gateway xx.xx.xxx.xx
    dns-nameservers 8.8.8.8

#auto 6to4
#iface 6to4 inet6 6to4
#       local xx.xx.xxx.xx
#       dns-nameservers 2001:4860:4860::8888

У тебя есть rdnssd пакет установлен? Это запускает демон, который порождает сценарии оболочки, которые, безусловно, ведут себя так, как вы описали выше.

Обратите внимание, что dns-nameservers атрибут интерфейса работает только с resolvconf.

Лучший способ решить эту «проблему» - это установить resolvconf пакет.

sudo apt-get install resolvconf

После этого, /etc/resolv.conf заменяется символической ссылкой на /etc/resolvconf/run/resolv.conf который динамически генерируется resolvconf с информацией из файла / и т.д. / сеть / интерфейсы

Обратите внимание, что DNS-сервер записи в / и т.д. / сеть / интерфейсы игнорируются, если в вашей системе не установлен пакет resolvconf. Вы можете найти больше информации о resolvconf информация о пакете в вики-документации Debian или используя страницы руководства.

man resolvconf

Вы можете отслеживать вещи, чтобы увидеть, какой процесс изменяет файл

https://unix.stackexchange.com/questions/99074/find-which-process-is-modifying-a-file

При желании вы можете временно отредактировать resolv.conf, а затем

chattr + i /etc/resolv.conf

Чтобы ничего не изменило