Konfigurowałem serwer jak w poniższym linku https://help.ubuntu.com/community/Dnsmasq
root@user-desktop:/etc/init.d# sudo apt-get install dnsmasq
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
dnsmasq
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 0 B/15.4 kB of archives.
After this operation, 120 kB of additional disk space will be used.
Selecting previously unselected package dnsmasq.
(Reading database ... 146283 files and directories currently installed.)
Unpacking dnsmasq (from .../dnsmasq_2.59-4_all.deb) ...
Processing triggers for ureadahead ...
Setting up dnsmasq (2.59-4) ...
* Starting DNS forwarder and DHCP server dnsmasq
dnsmasq: failed to create listening socket for port 53: Address already in use [fail]
invoke-rc.d: initscript dnsmasq, action "start" failed.
dns=dnsmasq
nie oznacza, że nie jest cel instalowania DNSmasq. Dokonałemlisten-address=127.0.0.1
zmiany i wydaje się, że teraz działa dobrze.Miałem ten sam problem.
dnsmasq-base
został zainstalowany i nasłuchiwał na porcie 53 uniemożliwiającdnsmasq
uruchomienie.Możliwe jest użycie funkcji
dnsmasq-base
insead wdnsmasq
tym samym celu: wystarczy użyć innego katalogu konfiguracji: ten umieszczony wNetwork Manager
folderze:źródło
Sprawdź, co nasłuchuje na porcie 53 (domena) za pomocą:
Wyłącz dowolną usługę działającą na tym porcie. Zazwyczaj tak jest
systemd-resolved
.Mam zamiar
mask
to zrobić, aby nie uruchamiało się automatycznie przy ponownym uruchomieniu.Aby cofnąć to, co zrobiłeś:
Również
sudo update-rc.d systemd-resolved disable
może również zatrzymać jej auto począwszy od startu, ale ja jej nie testowane. Użyjdefaults
zamiast,disable
aby cofnąć polecenie.Lub możesz zmienić, na którym porcie nasłuchuje dnsmasq, edytując plik konfiguracyjny:
Naciśnij Ctrl+ Wi wpisz
listen-address=
i naciśnij Enter.Odkomentuj linię i dodaj 127.0.0.1 z innym portem niż 53, na przykład:
źródło
EDYCJA: trochę google, i znalazłem rozwiązanie . Wygląda na to, że menedżer sieci zależy od pakietu o nazwie „dnsmasq-base”, który zapewnia niektóre funkcje dnsmasq. Wpis Dnsmasq na Wiki Ubuntu stwierdza, że
Innymi słowy: chcesz użyć dnsmasq? Więc lepiej wiedz, co robisz. Wspomniane wcześniej rozwiązanie sugeruje zastąpienie dnsmasq-base przez dnsmasq w następujący sposób (pierwsze polecenie usunie także menedżera sieci):
A oto kilka ogólnych uwag na temat znajdowania bloków portów: możesz znaleźć to, co nasłuchuje na którym porcie, używając
lsof
:wyświetli listę portów IPv4 z powodu -i4, natomiast
wyświetli listę portów IPv6. Lub wpisz tylko
Powinno to (miejmy nadzieję) powiedzieć, co używa portu 53.
-Pn
Przełączniki wiersza poleceń zapobiegają konwersji numeru portu / adresu IP hosta na nazwy.Alternatywnie, uruchom
źródło
sudo apt-get remove dnsmasq-base
miałem połączenia z siecią, więc nie mogłem wykonać kolejnych kroków! Rozwiązaniem okazało się uruchomienie dhclient w celu uzyskania nowego adresu IP.