LINUX.ORG.RU
решено ФорумAdmin

Ubuntu в VirtualBox: не работает добавление в /etc/resolv.conf

 , , ,


0

1

Собственно, проблема. Хочу, чтоб в /etc/resolv.conf показались следуюшие строки (на самом деле — хватит лишь строк 1 и 2):

nameserver 10.136.85.27
nameserver 10.136.85.32
nameserver 10.0.2.3
nameserver 10.0.2.2
Для чего, я записал их в /etc/resolvconf/resolv.conf.d/base. Но, после запуска sudo resolvconf -u получаю лишь
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1

В интернетах предлагают посмотреть настройки NetworkManager, что я и сделал:

$ nmcli connection modify "$CONNECTION" ipv4.dns "10.136.85.27 10.136.85.32 10.0.2.3 10.0.2.2"

$ nmcli connection show "$CONNECTION" | grep -Pi ipv?4.dns
ipv4.dns:                               10.136.85.27,10.136.85.32,10.0.2.3,10.0.2.2
ipv4.dns-search:                        
ipv4.dns-options:                       (default)
IP4.DNS[1]:                             10.0.2.3

Толку — ноль. Как воркераунд записал те строки в /etc/resolvconf/resolv.conf.d/head. Помогите понять, что не работает.

/etc/NetworkManager/NetworkManager.conf

Закомментировать dns=dnsmasq

Остальное правильно, только можно было делать что-то одно :-)

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

Здается мне, не помогло :(

$ cat /etc/NetworkManager/NetworkManager.conf
[main]
plugins=ifupdown,keyfile,ofono
#dns=dnsmasq

[ifupdown]
managed=false

$ sudo resolvconf -u
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1

Проблема в функции uniquify_nameserver_list в /etc/resolvconf/update.d/libc: она получает на вход список nameserver'ов от NetworkManager и файла base. Ее предназначение отфильровать повлторяющиеся, однако она делает return как только видит 127.*:

case "$TRUNCATE_NAMESERVER_LIST_AFTER_LOOPBACK_ADDRESS" in (y|Y|yes|YES|Yes) case "$1" in (127.*|::1) return 0 ;; esac ;; esac

И, какраз, список от NetworkManager начинается с nameserver 127.0.1.1

KennyMinigun ★★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.