Seit dem Upgrade auf 17.04 kann ich Adressen in meinem lokalen Netzwerk (silvesternet.local) nicht mehr auflösen. Ich erhalte folgende Antwort:
$ systemd-resolve edgerouter
edgerouter: resolve call failed: No appropriate name servers or networks for name found
Im Journal gibt es nur Berichte über Zeitüberschreitungen für Transaktionen im Zusammenhang mit dieser Suche.
Ich habe Wireshark verwendet, um den Netzwerkverkehr zu überwachen, und es scheint, dass nicht einmal versucht wird, den Namen nachzuschlagen. Es gibt überhaupt keinen DNS-Verkehr. Das Nachschlagen einer anderen externen Domain funktioniert einwandfrei.
Viele Probleme rund um das gleiche Thema erwähnen das Ändern von nsswitch.conf, aber das scheint nichts zu lösen. Meine aktuellen Einstellungen sind:
hosts: files mdns4_minimal dns [NOTFOUND=return] resolve [!UNAVAIL=return] mdns4
networking
dns
Rob van der Most
quelle
quelle
sudo apt update && sudo apt full-upgrade
? Fehler im Release-Image wurden behoben ...systemd-networkd
Schnittstellen konfigurieren, müssen Sie möglicherweiseUseDomains=true
im[DHCP]
Abschnitt Ihrer.network
Dateien FolgendesAntworten:
Ich glaube, das ist beabsichtigt.
Ubuntu 17.04 hat für die Namensauflösung auf systemd-Resolution umgestellt und verwendet nur LLMNR (Multicast Name Lookup) für die Auflösung von Single-Label-Namen. Weitere Informationen finden Sie unter diesem Link: https://www.freedesktop.org/software/systemd/man/systemd-resolved.service.html
Die Gründe für diese Entscheidung finden Sie in der Antwort von Poettering in diesem Fehlerbericht: https://github.com/systemd/systemd/issues/2514
UPD: Dieses Problem kann umgangen werden, indem eine Domäne für das lokale Netzwerk verwendet wird. Wenn die Netzwerkschnittstelle (entweder manuell oder über DHCP) für die Verwendung einer Suchdomäne konfiguriert ist, fügt systemd-Resolution diese Domäne zu Single-Label-Namen hinzu und sucht sie dann über Unicast-DNS.
Offensichtlich sollte der lokale DNS-Server neu konfiguriert werden, um diese Domäne zu erkennen. Im Fall von dnsmasq, das lokale Host-zu-IP-Paare aus / etc / hosts liest, kann dies durch Hinzufügen der folgenden Anweisungen zur dnsmasq.conf erreicht werden:
UPD2: Oder Sie können einfach wie hier beschrieben zu dnsmasq zurückkehren. Https://askubuntu.com/a/911432/692094
quelle
Ich habe das gleiche Problem unter Ubuntu 18.04, das auch systemd-Lösung für DNS verwendet. In der Standardkonfiguration werden Hostnamen mit einer Bezeichnung oder Hostnamen mit lokaler Domäne nicht nach DNS, sondern nach LLMNR bzw. mDNS aufgelöst.
Um lokale Single-Label-Hostnamen oder .local-Domain-Hostnamen durch DNS aufzulösen, habe ich den dritten der "vier Modi für die Behandlung von /etc/resolv.conf" aktiviert, die in der Manpage für systemd- resolve.service beschrieben sind :
Eine ähnliche Antwort wurde hier gegeben . Die Gründe für die Standardeinstellung finden Sie in der Antwort von Poettering in diesem Fehlerbericht .
quelle
Nach dem Upgrade auf 18.04 funktionierte für mich die Konfiguration der Datei /etc/systemd/resolved.conf, wobei der Parameter Domains in die Domäne geändert wurde (lokal oder wie in meinem Fall mydomain.local). Ich habe auch den DNS-Parameter geändert, aber es schien, dass er nicht relevant ist, aber ich erwähne ihn nur für den Fall, dass dies nicht wahr ist. Weitere Informationen finden Sie unter https://www.freedesktop.org/software/systemd/man/systemd-resolved.service.html .
Zusätzlich habe ich die Avahi-Konfiguration (/etc/avahi/avahi-daemon.conf) geändert, um den Domänenparameter im Serverabschnitt von lokal (Standard) auf etwas anderes zu ändern, wie einige Leute in diesem Forum betonten.
Mit den genannten Änderungen kann ich die Maschinen über punktlose Namen erreichen, z. B. durch Pingen an meinen Computer wird die Maschine erfolgreich kontaktiert. Wenn ich jedoch an mycomputer.mydomain.local pinge, funktioniert dies nicht. Der vollqualifizierte Domänenname wird nicht wie erwartet aufgelöst.
Die Hoffnung, dass dies in einigen Fällen hilft oder zu einer allgemeineren Lösung führt.
quelle
Ich war mit diesem Problem konfrontiert, weil ich falsch konfiguriert war
nsswitch.conf
. Da12.04
folgende Zeichenfolge wie erwartet funktioniert hat. Hostnamen ohne Domain werden erfolgreich aufgelöst.Die neue
17.04
Version (sowie Version 16.10) von Ubuntu mit der alten Vorlage zum Konfigurieren des NSS-Systems funktioniert jedoch nicht wie zuvor.Falsch konfigurierte Version von
hosts
, aus alten Ubuntu-Versionen:hosts: files mdns4_minimal [NOTFOUND=return] dns mdns4
Erfolgreiche Arbeitsversion von
hosts
zum Beispiel ab 17.04:hosts: files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] dns
quelle