Як я можу відключити системне рішення в Ubuntu 17.04?
Відключення його systemctl disable
не спрацювало, сервіс, здається, перезапущений (Networkmanager?)
Як я можу відключити системне рішення в Ubuntu 17.04?
Відключення його systemctl disable
не спрацювало, сервіс, здається, перезапущений (Networkmanager?)
Відповіді:
Цей метод працює над версіями Ubuntu 17.04 (Zesty), 17.10 (Artful), 18.04 (Bionic), 18.10 (Cosmic) та 19.04 (Disco):
Вимкніть та зупиніть службово-сервісну службу:
sudo systemctl disable systemd-resolved
sudo systemctl stop systemd-resolved
Потім поставте наступний рядок у [main]
розділі свого /etc/NetworkManager/NetworkManager.conf
:
dns=default
Видаліть посилання /etc/resolv.conf
rm /etc/resolv.conf
Перезавантажте NetworkManager
sudo systemctl restart NetworkManager
Також пам’ятайте, що відключення systemd-resolutionvd може порушити роздільну здатність імені в VPN для деяких користувачів. Дивіться цю помилку на панелі запуску (Спасибі, Вінсент).
Нещодавно я перейшов на (k) Ubuntu 17.04 і також натрапив на зміну systemd.
Моя установка є досить типовою, я думаю, що у мене є постачальник DNS у своєму широкосмуговому HUB, і це моє основне джерело інформації для всіх пристроїв у моїй мережі (яких у мене є декілька).
У системі systemd є якась краса, але це не все погано, але що насправді погано - це документація, відсутність комунікації з боку команди Ubuntu та гун-хо "давайте просто змінимо її, незважаючи на те, що вона зламає для всіх" менталітет.
Рішення для мене після виривання волосся було змінити /etc/systemd/ разрешить.conf:
[Resolve]
DNS=192.168.1.254 # <-- change to your router address
#FallbackDNS=8.8.8.8 8.8.4.4 2001:4860:4860::8888 2001:4860:4860::8844
Domains=lan # <-- change to your localdomain name (maybe .local)
#LLMNR=yes <-- I dabbled with this for a while but it doesn't matter
#DNSSEC=no
#Cache=yes
#DNSStubListener=udp
Не розуміючи, чому це не вийде, я зрозумів, що також потрібно було переключити /etc/resolv.conf на той, який надає systemd. Це не так у встановленому нестандартному пакеті (з невідомих мені причин).
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Локальний DNS-сервер потім не використовується, і всі запити DNS надсилаються до мого HUB.
Я думаю, що це набагато краще рішення, ніж вирізання та введення якогось іншого рішення, оскільки systemd-resolutionv тепер за замовчуванням.
Пов'язана проблема btw полягає в тому, що /etc/nsswitch.conf є нейтралізованою.
Він повинен читати:
хости: файли mdns4_minimal dns [NOTFOUND = return] вирішити [! UNAVAIL = return] dns
Це заплутана конфігурація, оскільки [NOTFOUND = return] означає, що обробка закінчується там. Записи після цього ніколи не будуть використані.
Якщо у вас є проблеми з витіканням вашої VPN і ви не можете зрозуміти, як налаштувати systemd (як я), ви можете видалити його способом, описаним у першій відповіді, але не додавати dns=default
рядок, оскільки він активує сервер імен 127.0 .0.1. Щоб встановити маршрутизатор як dns, створіть у своїй /etc/resolvconf/resolv.conf.d/
папці файл "хвіст", додавши рядокnameserser 192.168.1.1
зробіть, ln -sf /var/run/resolved/resolv.conf /etc/resolv.conf
якщо ви зіпсували цей файл.