Jak wyłączyć dnsmasq?


14

Od czasu do czasu, kiedy przełączam się z interfejsu eth0na wlan0(lub odwrotnie), rozwiązywanie nazw domen /etc/resolv.confzawiera i zawiera

nameserver 127.0.1.1

I skomentował #dns=dnsmasqw /etc/NetworkManager/NetworkManager.confi ponownym uruchomieniu menedżera z sieci restart network-manager. Ale to nie pomogło.

Potem odkryłem, że dnsmasqproces nie jest potomkiem NetworkManagera

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

Nie jestem pewien, dlaczego działa. Czy to może być powiązane z VirtualBox? Nie chcę tego dotykać resolve.conf. Jak to wyłączyć?

Mój system to Linux Mint 17 Qiana.


Wyłączenie dnsmasq raczej nie pomoże: jego mocną stroną jest to, aby działało automatycznie w większości przypadków.
Gilles 'SO - przestań być zły'

Właśnie tego chcę: za każdym razem, gdy przełączam się między interfejsami lub między sieciami / routerami, działa bez ręcznych poprawek. Załóżmy, że dnsmasqjest to dobre oprogramowanie i wie, dlaczego nadpisuje /etc/resolv.conftreści nameserver 127.0.1.1wartością. Dlaczego więc nie spełnia swojej roli?
Gumkins

W przypadku dnsmasq /etc/resolv.confpowinien zawsze zawierać nameserver 127.0.0.1, ponieważ obsługuje wszystkie żądania DNS. W przypadku NetworkManager + dnsmasq normalnie dzieje się, że NM wysyła komunikaty do dnsmasq przez dbus, aby poinformować go o zmianie połączenia. Dlaczego tego nie robi? To pytanie możesz zadać na tej stronie - ze wszystkimi niezbędnymi wyjaśnieniami dotyczącymi konfiguracji sieci.
Gilles „SO- przestań być zły”

Czy możesz mi zatem powiedzieć, dlaczego jest 127.0.1.1(nie 127.0.0.1) i gdzie jest skonfigurowany?
gumkins

Wszystko zaczynające się od 127.punktów na maszynie lokalnej. Nie wiem, dlaczego użyto tutaj 127.0.1.1. W każdym razie, jeśli potrzebujesz pomocy z dnsmasq, musisz zadać nowe pytanie, w którym wyjaśnisz swoją konfigurację, w tym dlaczego w ogóle zaangażowany jest VirtualBox (czy twój system działa na maszynie wirtualnej? Czy jest to host maszyny wirtualnej? Jakie konfiguracje maszyny wirtualnej zrobiłeś? itp.).
Gilles „SO- przestań być zły”

Odpowiedzi:


15

W Linux Mint dnsmasq jest instalowany w celu buforowania zapytań DNS, a tym samym przyspieszenia korzystania z Internetu. Pierwszą częścią wyłączenia jest zmiana konfiguracji /etc/NetworkManager/NetworkManager.confpoprzez komentowanie dns=dnsmasq.

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

Następnie musisz ponownie uruchomić zarówno usługi, jak network-manageri networkingusługi.

sudo service network-manager restart
sudo service networking restart

Ponieważ mój laptop jest bardzo obciążony pamięcią RAM, upewniłem się, że usługa dnsmasq została zatrzymana. Z jakiegoś powodu nie zostało to wykonane automatycznie po ponownym uruchomieniu usługi. Podejrzewam, że istnieje bardziej elegancki sposób na zatrzymanie tego, ale zmęczyło mnie patrzenie, kiedy nie mogłem znaleźć pliku init, a SIGHUP nie działał.

sudo killall dnsmasq

Osobiście musiałem wyłączyć dnsmasq, ponieważ menedżer sieci i dnsmasq nie lubią mojego połączenia z drugim połączeniem z innym routerem.


3
Małe ostrzeżenie: ponowne uruchomienie network-managerpowoduje awarię pulpitu Cinnamon w tryb awaryjny. Zapisz swoją pracę!
okdewit
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.