Когда я переключаюсь между разными сетями с разными серверами dhcp, мой файл resolv.conf
не меняется (другие настройки, такие как ip
и gw
, меняются).
Обходной путь должен удалить resolv.conf
и запустить dhclient
вручную.
Файл моего интерфейса выглядит следующим образом:
cat / etc / networK / interfaces
blockquote>auto lo iface lo inet loopback
Как исправить это навсегда ?
Некоторое время назад у меня была такая же проблема, и это было потому, что пакет resolvconf
не был установлен. попробуйте установить его, используя
sudo apt-get install resolvconf
, затем отредактируйте файл resolvconf и перезапустите сеть через
sudo /etc/init.d/networking restart
, а также как выглядит ваш файл / etc / network / interfaces?
Я также получил подсказку из этого ответа в предыдущей теме, аналогичной вашей. https://askubuntu.com/a/58802/49237
Возможный триггер для, по-видимому, спонтанных обновлений /etc/resolv.conf, когда обновляется аренда DHCP , Проверьте, как долго вы получаете аренду DHCP (это должно появиться в системных журналах, я думаю, в /var/log/syslog).
Вы можете использовать audd, чтобы узнать, что изменяет файл. Запустите демон (запуск sudo service auditd) и попросите его следить за изменениями в этом файле:
sudo auditctl -w /etc/resolv.conf -p w
Журналы аудита находятся в/var/log/audit/audit.log
. Вы увидите время, когда файл был изменен, и название программы, которая его изменила.Если у вас установлен пакет resolvconf, возможно, Network Manager наступает на него. Попробуйте отключить все сетевые интерфейсы, затем остановите Network Manager (остановка сетевого менеджера службы sudo), а затем перезапустите его.
BLOCKQUOTE>
Из того, что у вас нет определений iface в / etc / network / interfaces, я заключаю, что вы используете NetworkManager для настройки ваших интерфейсов.
Возможно, первоначальная проблема заключалась в неправильной настройке соединений в NetworkManager, например, при выборе «Только (DHCP) адреса» вместо «Автоматический (DHCP)» в качестве «Способа».
Также рассмотрите возможность того, что ваша символическая ссылка /etc/resolv.conf -> ../run/resolvconf/resolv.conf отсутствовала по той или иной причине. Смотрите ошибку # 1000244. Исправление для этого было бы запустить "dpkg-reconfigure resolvconf".
Удаление resolvconf было не лучшим решением. Делая это, вы полагаетесь на унаследованную поддержку в клиенте DHCP для непосредственной работы с /etc/resolv.conf. Пока это может сработать, но resolvconf был введен именно для того, чтобы навести порядок в такого рода вмешательствах.