Почему resolv.conf не запоминает адреса DNS?

Почему resolv.conf не запоминает адреса DNS?

Я установил dnsmasqи добавил nameserver 127.0.0.1в resolv.confфайл, чтобы использовать подстановочные знаки в конфигурации Apache. Но каждый раз, когда я перезагружаю компьютер или меняю подключение Wi-Fi, мне приходится добавлять его снова, чтобы он заработал.

Почему это происходит и как это исправить?

решение1

Если вы используете систему Ubuntu до версии 12.04, которая еще не была обновлена ​​до версии 12.04 или более поздней, или если вы удалили пакет resolvconf, то установите пакет resolvconf.

sudo apt-get install resolvconf

Если resolvconf уже установлен, убедитесь, что /etc/resolv.conf является символической ссылкой на ../run/resolvconf/resolv.conf.

sudo dpkg-reconfigure resolvconf

После установки пакета dnsmasq (не путать с пакетом dnsmasq-base) вам не нужно редактировать /etc/resolv.conf. Скрипт инициализации dnsmasq вызывает (через resolvconf) добавление '127.0.0.1' в resolv.conf при запуске dnsmasq, при условии, что значение IGNORE_RESOLVCONFне установлено yesв /etc/default/dnsmasq.

Сомневающимся, пожалуйста, прочтите /etc/init.d/dnsmasq.

PS В Ubuntu 12.04 есть усложняющий фактор. NetworkManager по умолчанию запускает процесс dnsmasq, который прослушивает исключительно 127.0.0.1. Это конфликтует с "автономным" процессом dnsmasq; может запуститься только один из двух. Это известная ошибка #959037, которая была исправлена ​​в Ubuntu 12.10 (путем перемещения адреса прослушивания NM-dnsmasq на 127.0.1.1). Если вы все еще используете Ubuntu 12.04 и хотите запустить автономный dnsmasq, то вам следует либо отключить контролируемый NetworkManager dnsmasq (закомментировав "dns=dnsmasq" в /etc/NetworkManager/NetworkManager.conf), либо настроить автономный dnsmasq так, чтобы он не прослушивал 127.0.0.1.

решение2

Вам необходимо указать предпочитаемый DNS-сервер в Network Manager. В противном случае он продолжит перезаписывать config-файл. СмотритеКак правильно изменить DNS IP?

решение3

Строительство наЭгильответ. Если это сетевой менеджер затирает файл, кто-то наubuntuforumsрешил это удалением пакета resolvconf. Это может сработать, а может и нет, так как тема немного устарела.

Связанный контент