Як відключити dnsmasq?


14

Час від часу, коли я перемикаюся eth0на wlan0(або навпаки), доменне ім’я інтерфейсу вирішує розриви та /etc/resolv.confмістить

nameserver 127.0.1.1

Я помітив #dns=dnsmasqв /etc/NetworkManager/NetworkManager.confі перезапущений адміністратору мережі restart network-manager. Але це не допомогло.

Потім я виявив, що dnsmasqпроцес не є дитиною NetworkManager

# pstree -spu $(pidof dnsmasq)
init(1)───dnsmasq(3015,libvirt-dnsmasq)

Я не впевнений, чому це працює. Чи може це бути пов’язано з VirtualBox? Я не хочу, щоб це торкалося resolve.conf. Як її відключити?

Моя система Linux Mint 17 Qiana.


Вимкнення функції dnsmasq навряд чи допоможе вам: її сильна сторона полягає в тому, щоб зробити цю роботу автоматично в більшості випадків.
Жил "ТАК - перестань бути злим"

Саме цього я хочу: кожен раз, коли я перемикаю між інтерфейсами або між мережами / маршрутизаторами, це працює без ручних виправлень. Припустимо, що dnsmasqце гарне програмне забезпечення, і воно знає, чому воно переписує /etc/resolv.confвміст зі nameserver 127.0.1.1значенням. То чому він тоді не робить свою роботу?
гумки

З dnsmasq /etc/resolv.confзавжди повинен містити nameserver 127.0.0.1, оскільки він обробляє всі запити DNS. У NetworkManager + dnsmasq зазвичай відбувається, що NM надсилає повідомлення до dnsmasq через dbus, щоб повідомити про це, коли з'єднання змінюються. Чому це не робиться? Це питання, яке ви можете задати на цьому сайті - з усіма необхідними поясненнями щодо налаштування вашої мережі.
Жил "ТАК - перестань бути злим"

Чи можете ви, будь ласка, просто дайте мені знати, чому він 127.0.1.1(ні 127.0.0.1) і де він налаштований?
gumkins

Все, що починається з 127.вказівки на локальну машину. Я не знаю, чому тут використовується 127.0.1.1. У будь-якому випадку, якщо вам потрібна допомога з dnsmasq, вам потрібно задати нове запитання, де ви пояснюєте свою установку, включаючи, чому VirtualBox взагалі задіяний (ваша система працює в VM? Або це хост VM? Які конфігурації VM ви зробили? тощо).
Жил "ТАК - перестань бути злим"

Відповіді:


15

На Linux Mint dnsmasq встановлюється для кешування запитів DNS і тим самим прискорює вашу роботу в Інтернеті. Перша частина її вимкнення - це зміна конфігурації /etc/NetworkManager/NetworkManager.conf, коментуючи її dns=dnsmasq.

sudo sed -i 's/^dns=dnsmasq/#&/' /etc/NetworkManager/NetworkManager.conf

Далі вам доведеться перезапустити network-managerі networkingслужби, і послуги.

sudo service network-manager restart
sudo service networking restart

Оскільки мій ноутбук дуже міцний на оперативній пам’яті, я переконався, що сервіс dnsmasq припинився. Чомусь це не робилося автоматично при перезапуску служби. Я підозрюю, що був більш елегантний спосіб зупинити це, ніж це, але я втомився дивитись, коли не зміг знайти файл init, і SIGHUP не працював.

sudo killall dnsmasq

Особисто мені довелося вимкнути dnsmasq, оскільки менеджер мережі та dnsmasq не люблять, щоб я підключався до другого з'єднання з відключеним інакше маршрутизатором.


3
Невелике попередження: перезапуск network-managerпризводить до того, що робочий стіл Cinnamon перестане працювати в режимі запасного режиму. Обов’язково збережіть свою роботу!
okdewit
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.