Niedawno zaktualizowałem do wersji 17.10. Kiedy próbuję przeglądać witrynę internetową lub pingować domenę, nie powiedzie się, że strony nie można rozwiązać.
network-admin
pokazuje zawartość /etc/resolv.conf
byćnameserver: 127.0.0.53
Jeśli zmienię to na 8.8.8.8 lub 208.67.222.222, wtedy wszystko będzie działać. Do momentu ponownego uruchomienia.
Po ponownym uruchomieniu lub wznowieniu serwer nazw zostaje zresetowany do 127.0.0.53.
Jak na stałe ustawić serwer nazw na coś, co działa?
Dla fanów systemowych, jeśli uruchomię systemd-resolve --status
, dostanę
Link 3 (wlo1)
Current Scopes: LLMNR/IPv4 LLMNR/IPv6
LLMNR setting: yes
MulticastDNS setting: no
DNSSEC setting: no
DNSSEC supported: no
Jeśli zastosuję się do porady podanej w tym pytaniu - DNS resetuje się po ponownym uruchomieniu. Ubuntu 17.10 - DNS nadal nie może rozwiązać.
dns
systemd-resolved
Terence Eden
źródło
źródło
systemctl stop systemd-resolved
isystemctl mask systemd-resolved
powinien załatwić sprawę :)Odpowiedzi:
Możesz zainstalować pakiet resolvconf, który zmodyfikuje sposób
/etc/resolv.conf
budowania podczas uruchamiania systemu.Następnie możesz utworzyć lub zmodyfikować plik
/etc/resolvconf/resolv.conf.d/tail
. Jeśli umieścisz w tym pliku linięnameserver 8.8.8.8
, ta linia zostanie dodana na końcu/run/resolvconf/resolv.conf
bootowania./etc/resolv.conf
będzie teraz symbolicznym linkiem do tego pliku.źródło
sudo dpkg-reconfigure resolvconf
. Próbowałem tego ostatnio, wyczyściłem plik ogona i na początku wydaje się, że działa.Poprawne rozwiązanie byłoby naprawić Systemd-rozdzielczej zamiast próbować leczyć migrenę z gilotyny.
To naprawdę miłe narzędzie, jeśli jest właściwie używane.
Sądząc po wynikach
systemd-resolve --status
...... Twoje narzędzie menedżera sieci nie przekazuje konfiguracji DNS dla interfejsu do systemu-rozwiązany.
Na przykład najnowsze wersje NetworkManagera zrobiłyby to automatycznie, jeśli
/etc/resolv.conf
dowiązanie symboliczne wskazuje wewnątrz/run/systemd/resolve
lub do/usr/lib/systemd/resolv.conf
. Alternatywnie, najnowsze wersje systemd-resolved starają się być kompatybilne z historycznym interfejsem resolvconf, instalując plikresolvconf
binarny komunikujący się z systemd-resolved.Podczas gdy jedno z tych dwóch rozwiązań byłoby preferowane, jeśli szukasz szybkiego i brudnego rozwiązania, możesz po prostu skonfigurować systemd-resolved do globalnego korzystania z serwerów DNS:
Następnie uruchom ponownie
systemd-resolved.service
lub uruchom ponownie .źródło
127.0.0.53
to adres lokalnego programu rozpoznawania kodów pośredniczących buforowania. Przekazuje żądania DNS na dowolne określone wcześniej serwery DNS.systemd-resolved
buforuje odpowiedzi DNS. Chociaż może to czasem być przydatne, w niektórych sytuacjach może powodować problemy. Usuń komentarz zcache=yes
wiersza w pliku konfiguracyjnym w odpowiedzi i ustaw go nano
./etc/resolve.conf
(lub tak naprawdę, na/run/resolvconf/resolv.conf
co wskazuje to pierwsze)? byłoby miło wiedzieć o testach, bez zakładanego ponownego uruchomienia. wszystko, co mogę powiedzieć, to to, że ponowne uruchomieniesystemd-resolved.service
nie wydaje się załatwićUżywam Lubuntu i Kubuntu 18.04. Problem DNS udało mi się rozwiązać w 2 krokach:
Pierwszy krok: Instalacja
unbound
i ustawić go zastąpićsystemd-resolved
jako Grégoire C pokazuje tutaj .restart
Otwórz jako plik root
/etc/NetworkManager/NetworkManager.conf
(
sudo leafpad /etc/NetworkManager/NetworkManager.conf
w Lubuntu 18.04 lub w Kubuntu 18.04SUDO_EDITOR=kate sudoedit /etc/NetworkManager/NetworkManager.conf
)i poniżej
[main]
wstaw tę linię:uruchom ponownie
Drugi krok: jeśli po ponownym uruchomieniu problem nadal nie został rozwiązany, tak jak w moim przypadku, uruchom menedżera plików jako root, przejdź do
/etc
, usuńresolv.conf
i utwórz nowyresolv.conf
. Pozostaw to puste i uruchom ponownie system operacyjny. W moim przypadku po tym ponownym uruchomieniu problem zniknął.W Kubuntu 18.04 nie możesz uruchomić Dolphin jako root, więc możesz najpierw przejść do
/etc
i otworzyć terminal, a następnie wpisaćsudo su
i nacisnąć Enter, aby użyć go jako root, a następnie usunąćresolv.conf
za pomocą poleceniarm resolv.conf
. Następnie możesz utworzyć nowy pusty plik na pulpicie, nazwać goresolv.conf
i stamtąd otworzyć terminal. Użyjsudo su
polecenia, aby przejść do trybu rootowania dla terminala, a następnie skopiuj nowyresolv.conf
z pulpitu/etc
na poleceniecp resolv.conf /etc
.Muszę dodać , że nie próbowałem zrobić drugiego kroku przed instalacją
unbound
, więc następnym razem zrobię to, aby zobaczyć, czy to wystarczy.źródło
resolv.conf
z/etc
został pokazany jako jakiś skrót, co nie jest normalne, tak myślę. Dlatego postanowiłem go usunąć i odtworzyć, tworząc nowy pusty plik i nazywając goresolv.conf
. I zadziałało. Z tego powodu napisałem powyżej, że następnym razem, gdy będę musiał ponownie zainstalować system operacyjny, spróbuję to zrobić najpierw, nie wykonując „pierwszego kroku” - aby sprawdzić, czy to wystarczy. Ale oryginalneresolv.conf
w/etc
potrzeby należy usunąć i odtworzyć w każdym razie - o tym jestem pewien.działając w ramach
systemd
paradygmatu dodaj DNS do łącza / urządzeniaużywając Ubuntu 17.10+ dodaj
*.network
plik:sudo nano /lib/systemd/network/100-somecustom.network
:100-somecustom.network (100 może być dowolną liczbą dla priorytetu i wymaga
.network
rozszerzenia pliku):Następnie uruchom ponownie:
Zobacz także:
Następnie sprawdź:
Ze strony informacyjnej
info systemd.network
:Inne podejście wyłącza
DNSStubListener
do użytku zdnsmasq
:sudo nano /etc/systemd/resolved.conf
:związane z:
źródło
W ten sposób zmieniam mój rekord dns w konfiguracji interfejsu.
Zmień adresy serwerów nazw, poprzednio było to .4, a potem zmieniłem na .3:
Zapisz konfigurację, a następnie zastosuj konfigurację:
Następnie zrestartuj usługę resolvectl.
Notatki: zrestartowałem serwer i zmiany, które wprowadziłem, pozostają nienaruszone. Używam
resolvctl dns
polecenia do weryfikacji rekordu dns.źródło
Miałem pewne problemy z NordVPN, więc postanowiłem to dodać.
Ustalenia:
NordVPN określa
/run/systemd/resolve/resolv.conf
ustawienia DNS podczas łączenia.NordVPN usuwa wszystkie ustawienia DNS
/run/systemd/resolve/resolv.conf
po rozłączeniu.To powoduje, że serwer DNS przestaje działać (ponieważ nie ma jednego zestawu).
System wymaga ponownego uruchomienia, aby zresetować go do czegokolwiek. Standardowy restart usługi (
sudo systemctl restart systemd-resolved.service
) nie działa.Rozwiązanie obejścia tego:
Udaj się do /etc/resolvconf/resolv.conf.d/
Dodaj serwery nazw
Sprawdź następujące miejsca dla serwerów nazw, które mogły zostać ustawione:
Sprawdź, które serwery DNS są używane z:
źródło
Może trochę późno, ale wpadłem na ten problem. Muszę przyznać, że ręcznie konfigurowałem ustawienia sieciowe za pomocą cli przed, a nie przez wbudowanego menedżera sieci. Używam Ubuntu 18.04.
Tak więc po wyłączeniu, a następnie ponownym włączeniu usługi systemd.resolved.service, dla mnie zostało rozwiązane to błędne zachowanie losowej utraty konfiguracji DNS.
po ponownym uruchomieniu:
Jestem stosunkowo świeżym użytkownikiem Linuksa, więc musi być ktoś, kto może wyjaśnić, w jaki sposób i dlaczego to by zadziałało, ale warto wspomnieć, czy może pomóc innym.
źródło
Podczas korzystania z rozpoznawania nazw dhcp działa w systemie Ubuntu zgodnie z oczekiwaniami. Problemy zaczynają się, gdy chcesz stać.
cat /etc/resolv.conf
pokaże, że twój dns to 127.0.0.53, a nie te, które masz w/etc/netplan/.yaml
pliku. Aby to naprawić, musisz usunąć/etc/resolve.conf
link i utworzyć nowy, wskazujący na/run/resolve/resolve.conf
źródło
Wymagało to trochę zabawy. Po zaktualizowaniu ustawienia uruchomiłem się ponownie. Posługiwać się:
Gdy skomentujesz „prośbę” o
Dodaj ten wiersz do
/etc/dhcp/dhclient.conf
:Edytuj plik konfiguracyjny i dodaj wpis. Dodatkowe nie zastąpią.
Dodaj wpisy do
/etc/resolvconf/resolv.conf.d/tail
Uruchom, aby wprowadzić zmiany
źródło
#
„komentarzy” do kodu - oznacza to nagłówek w Markdown. Zawsze sprawdzaj podgląd swojego posta przed wysłaniem.