Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: Как запретить изменяться resolv.conf?  (Прочитано 5469 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Shalmaran

  • Автор темы
  • Активист
  • *
  • Сообщений: 837
  • Cow super power!
    • Просмотр профиля
    • kristyushatmb.livejournal.com
Многие замечали, что файл /etc/resolv.conf самовольно меняется после редактирования. Это не может не раздражать. Тут на форуме, поднималось множество тем, как это дело прекратить. Предлагали различные костыли, и rc.local запись внести, и в cron на каждые пять минут, права поменять. И вот я предлагаю свой. Может для кого это и не будет новостью, но я не встречал подобного решения на этом форуме.

Всё очень просто. Переписывает resolv.conf DHCP клиент. Соответственно идём в папку с его настройками и меняем их. В моём Ubuntu Server 11.10 amd64 это лежит тут: /etc/dhcp/dhclient.conf.
Меняем параметры строки prepend domain-name-servers на свои DNS, указывая их через запятую:

option rfc3442-classless-static-routes code 121 = array of unsigned integer 8;
send host-name "<hostname>";


prepend domain-name-servers 127.0.0.1, 192.168.0.1;


request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, host-name,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers,
        dhcp6.domain-search, dhcp6.fqdn,
        dhcp6.name-servers, dhcp6.sntp-servers;


Данный способ у меня прекрасно работает!
« Последнее редактирование: 07 Март 2012, 19:35:31 от Александр Андреевич »
Banana Pi

Оффлайн Дмитрий Бо

  • Погонщик серверов
  • Модератор раздела
  • Старожил
  • *
  • Сообщений: 3540
  • Я не техподдержка, я за порядком слежу
    • Просмотр профиля
    • dihoc.ru - контекстный вьетнамско-русский словарь
Re: Как запретить изменяться resolv.conf?
« Ответ #1 : 08 Март 2012, 13:54:29 »
А не убрать ли domain-name-servers из request?
Не опускай рук, а то пропустишь в бороду

Оффлайн drako

  • Старожил
  • *
  • Сообщений: 1422
    • Просмотр профиля
Re: Как запретить изменяться resolv.conf?
« Ответ #2 : 08 Март 2012, 14:16:53 »
Может для кого это и не будет новостью, но я не встречал подобного решения на этом форуме.
На форуме действительно такого нет, но лично я только вчера об этом способе на канале #ubuntu-ru расказывал :)
А не убрать ли domain-name-servers из request?
На то оно и linux, что существует несколько путей решения проблемы.

Оффлайн Shalmaran

  • Автор темы
  • Активист
  • *
  • Сообщений: 837
  • Cow super power!
    • Просмотр профиля
    • kristyushatmb.livejournal.com
Re: Как запретить изменяться resolv.conf?
« Ответ #3 : 08 Март 2012, 17:39:38 »
Мне вчера не до #irc было :)  У меня сервер сломался, так что решайте сами. В моем случае - это отличный вариант. IP можно подставить и свои и те, что провайдер выдаёт тоже не затирать.
Banana Pi

Оффлайн alexbalkan

  • Активист
  • *
  • Сообщений: 281
    • Просмотр профиля
Re: Как запретить изменяться resolv.conf?
« Ответ #4 : 30 Апрель 2014, 14:09:14 »
Я решил снова обратится к этой теме. Последовал вашему совету, действительно получилось. Даже пробовал несколько раз изменил resolv.conf после перезапуска dnsmasq все становилось как надо, по вашему рецепту. Прошло несколько часов, еще раз перегрузил сеть и dnsmasq и все благополучие закончилось. Снова стала та проблема что и была.

Оффлайн skytrain

  • Участник
  • *
  • Сообщений: 162
    • Просмотр профиля
Re: Как запретить изменяться resolv.conf?
« Ответ #5 : 05 Май 2014, 14:07:28 »
Вписывайте нужные nameserver сюда.
/etc/resolvconf/resolvconf.d/head или tail
Ресолвер сканирует эту директорию в поисках файлов формата resolvconf
resolv.conf редактрироваться не должен вообще.

Это удобно, так как список NS можно динамически обновлять из скриптов (например из /etc/ppp/ip-up.d/... )
Я наладил у себя автопереключение между NS при падении PPP
http://askubuntu.com/questions/224966/how-do-i-get-resolvconf-to-regenerate-resolv-conf-after-i-change-etc-network-in

resolv.conf собирается из файлов в
/var/run/resolvconf/interface/
« Последнее редактирование: 05 Май 2014, 14:10:31 от skytrain »
Не пытайся убежать от себя и от пули. Умрешь уставшим...

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27309
    • Просмотр профиля
Re: Как запретить изменяться resolv.conf?
« Ответ #6 : 05 Май 2014, 19:41:42 »
Многие замечали, что файл /etc/resolv.conf самовольно меняется после редактирования. Это не может не раздражать.
Это раздражает только тех, кто не знает, зачем и почему он меняется.
Кто знает - используют это, вместо того, чтобы искать, как отключить.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.134 секунд. Запросов: 24.