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

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

  • resolvconf не находится в системе
  • networkmanager не находится в системе
  • автоматическая конфигурация IPv6 была сильно отключена net.ipv6.conf.all.autoconf=0 и net.ipv6.conf.all.accept_ra=0 И net.ipv6.conf.eth0.autoconf=0 потому что по некоторым причинам первые два были недостаточны.
  • Никакой процесс dhclient не активен
  • Auditd возвращает PID некоторой оболочки, которая немедленно умирает при поиске редактирований к resolv.conf. Возможно, должен усовершенствовать мои навыки отслеживания стека.
  • 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
3
задан 26 October 2015 в 01:25
3 ответа

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

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

4
ответ дан 3 December 2019 в 05:24

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

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

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

chattr + i /etc/resolv.conf[1230 sizesTo предотвратить его изменение ничем

1
ответ дан 3 December 2019 в 05:24

Лучший способ решить эту «проблему» - это установить пакет 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
1
ответ дан 3 December 2019 в 05:24

Теги

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