Я недавно установил Debian 8 в сети с IPv6, который Включил DHCP./etc/resolv.conf перезаписывается записями DHCP IPv6 постоянно несмотря на то, что весь DHCP IPv6 отключен, автоматическая конфигурация IPv6 отключена, и никакой процесс dhclient не существует. Если я изменяю DHCP IPv6 серверы DNS на маршрутизаторе, они обновляются в быстром порядке в/etc/resolv.conf. Следующее верно:
net.ipv6.conf.all.autoconf=0
и net.ipv6.conf.all.accept_ra=0
И net.ipv6.conf.eth0.autoconf=0
потому что по некоторым причинам первые два были недостаточны.dns-nameserver
записи в /etc/network/interfaces
полностью проигнорированы и для ipv4 и для v6Я предпочел бы ответ, который не является, "отключают IPv6 полностью", хотя я рядом с той точкой (и достаточно сказать, что было это реальной машиной и не виртуальной, я из окна уже брошу его).
Править: Обратите внимание, что сеть 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
.
Вы можете отслеживать вещи, чтобы увидеть, какой процесс изменяет файл
https: //unix.stackexchange. com / questions / 99074 / find-which-process-is-modifying-a-file
При желании вы можете временно отредактировать файл resolv.conf, а затем
chattr + i /etc/resolv.conf[1230 sizesTo предотвратить его изменение ничем
Лучший способ решить эту «проблему» - это установить пакет resolvconf .
sudo apt-get install resolvconf
После этого /etc/resolv.conf заменяется символической ссылкой на /etc/resolvconf/run/resolv.conf , которая динамически генерируется resolvconf с информацией из файла / etc / network / interfaces
Обратите внимание, что записи dns-nameserver в / etc / network / interfaces игнорируются, если в вашей системе не установлен пакет resolvconf . Дополнительную информацию о пакете resolvconf можно найти в вики-документации Debian или на страницах руководства.
man resolvconf