it-swarm.com.de

Vom Ubuntu 17.04-System aufgelöste DNS-Lookups schlagen nach dem Zufallsprinzip fehl

Ich habe ein Upgrade auf Ubuntu 17.04 durchgeführt und es scheint nun einen neuen DNS-Resolver-Mechanismus zu haben, der erstmals in Ubuntu 16.10 eingeführt wurde.

Ich erhalte jetzt in 50% der Fälle DNS-Nachschlagefehler.Alle anderenDer Aufruf von nslookup schlägt fehl, wobei die Hälfte der Aufrufe in Ordnung ist und die andere Hälfte Folgendes ergibt:

watch -n 1 nslookup google.com

Server:     127.0.0.53
Address:    127.0.0.53#53

** server can't find google.com: SERVFAIL

Soweit ich weiß, wird diese DNS-Server-IP-Adresse jetzt zur Darstellung von systemaufgelöstem DNS verwendet, wodurch eine Art Metasuche durchgeführt wird, um langsamere DNS-Abfragen (oder ähnliches) zu vermeiden. Ich sehe genau dasselbe Verhalten auf zwei Computern, die ich in der letzten Woche auf 17.04 aktualisiert habe.

Irgendeine Idee, wo das Problem liegt und wie man es richtig angeht?

Vor dem Upgrade hat alles bestens geklappt (von 16.04 oder 16.10, ich weiß nicht mehr, was, sorry). Ich dachte, 17.04 war eine LTS-Veröffentlichung, aber jetzt sehe ich, dass ich die Waffe gesprungen habe und sie erst im April als stabil angesehen wird. So, hier bin ich.

Ebenfalls zu beachten ... Browser scheinen keine Probleme aufzuweisen, aber nslookup, ping, git usw. tun dies.

36
moodboom

Ubuntu 17.04 kann ab dem 18.04.2017 keine DNS-Server mit DNSSEC-Unterstützung auflösen. Deaktivieren Sie DNSSEC mit diesem Daemon:

Sudo mkdir -p /etc/systemd/resolved.conf.d
printf "[Resolve]\nDNSSEC=no\n" | Sudo tee /etc/systemd/resolved.conf.d/no-dnssec.conf

Optional können Sie resolvconf neu konfigurieren, wenn Sie damit in Konflikt geraten sind (sagen Sie "Ja, um /etc/resolve.conf für dynamische Updates vorzubereiten?"

Sudo dpkg-reconfigure resolvconf

Starten Sie das System neu.

Sudo systemctl restart systemd-resolved

Ihr DNS sollte jetzt funktionieren. Sie können dies überprüfen, indem Sie systemd-resolve www.google.com versuchen und eine Antwort sehen.

44
Sajad Bahmani

Ich habe zwischen der systemd-aufgelösten und der manuellen /etc/resolv.conf-Verwaltung hin und her gewechselt und noch nicht festgestellt, dass der systemd-DNS-Auflösungsmechanismus stabil ist.

Es gibt anscheinend mindestens einen libnss Bug in Ubuntu 16.10 und anscheinend noch in 17.04. Es gibt viele Leute mit DNS-Problemen, seit Ubuntu 16.10 systemd-behoben ist. hier ist eine Analyse und hier ist die Problemumgehung einer anderen Person. Keiner von ihnen hat für mich funktioniert, bis ich /etc/resolv.conf manuell mit den DNS-Servern von Google überschrieben habe.

nameserver 8.8.8.8   << or another if you don't trust google
nameserver 8.8.4.4

Dies ist eine vollkommen gültige Lösung , wenn Sie keine dynamische DNS-Konfiguration benötigen. Stellen Sie einfach sicher, dass Sie das System anhalten und deaktivieren.

Sudo systemctl disable systemd-resolved.service
Sudo service systemd-resolved stop
12
moodboom

Ubuntu 17.04 und andere Distributionen unterstützen systemd, einschließlich systemd-resolved, was die Benutzer einer ziemlich schwierigen DNS-Auflösung aussetzt.

  • Wie in der Antwort von SjB erwähnt, kann die DNSSEC-Unterstützung Probleme verursachen.
  • systemd-resolved pingt alle DNS-Resolver an, damit sie die schnellsten verwenden können. Dies kann in komplexeren Umgebungen zu Problemen mit VPNs usw. führen.
  • DNS-Serverzertifikate wurden überprüft. Bei einer Zeitverschiebung sind Fehler aufgetreten.

Ich denke nicht, dass es notwendigerweise eine SCHLECHTE Veränderung ist, es ist nur VIEL Veränderung. Ich werde versuchen, diese Antwort zu aktualisieren und zu erweitern, sobald ich mehr erfahre.

4
moodboom

Einfach ausgedrückt, brauchen Sie nur die Zeile "DNSSEC = no" im Abschnitt [Resolve] von /etc/systemd/resolved.conf.

https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1682499/

3
John Ball

fügen Sie einfach den Nameserver /etc/systemd/resolved.conf hinzu. DNS = 194.109.xxx.xxx (auf Ihrem Router, externer Nameserver)

systemctl neu starten systemd aufgelöst

rand muss nicht von 3 auf 2 geändert werden, dnssec muss nicht auf off gesetzt werden

1
henk