Ich habe Ubuntu 16.10 neu installiert und eine Sicherungskopie meines vorherigen Home-Verzeichnisses von kubuntu 16.04 auf meine neue Installation erstellt. Die Dinge funktionieren gut, aber ich konnte lokale Adressen trotz vieler Versuche und Irrtümer nicht auflösen.
Alle Netzwerke scheinen einwandfrei zu funktionieren. Das Surfen im Internet, die DNS-Suche nach externen Adressen, SSH usw. sind großartig. Vor Ort kann ich über ssh mit ihren Adressen auf Maschinen zugreifen, aber nicht mit ihren Namen. In Nautilus / Samba funktioniert alles einwandfrei, was bedeutet, dass WINS funktioniert. Das einzige Problem scheint das lokale Netzwerk-DNS zu sein. Ich habe Avahi-Daemon installiert und läuft, wie es mit Ubuntu kam.
Ich habe einige Fehlerbehebungsmaßnahmen hinzugefügt, bei denen << >> verwendet wurde, um redundante oder korrekt funktionierende Teile zu verkürzen.
$ nmcli g
STATE CONNECTIVITY WIFI-HW WIFI WWAN-HW WWAN
connected full enabled enabled enabled enabled
$ ping tendril8 << or tendril8.local >>
ping: tendril8: Name or service not known
$ ping gateway
PING gateway (192.168.1.1) 56(84) bytes of data.
64 bytes from gateway (192.168.1.1): icmp_seq=1 ttl=64 time=4.16 ms
$ ping askubuntu.com
PING askubuntu.com (151.101.129.69) 56(84) bytes of data.
64 bytes from 151.101.129.69 (151.101.129.69): icmp_seq=1 ttl=49 time=43.0 ms
$ nslookup askubuntu.com
Server: 127.0.1.1
Address: 127.0.0.1#53
<< followed by several IP addresses >>
$ nslookup tendril8 << or tendril8.local >>
Server: 127.0.1.1
Address: 127.0.0.1#53
** server can't find tendril8: NXDOMAIN
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
$ ls -la /etc/resolv.conf
lrwxrwxrwx 1 root root 29 Oct 15 19:30 /etc/resolv.conf -> ../run/resolvconf/resolv.conf
$ cat /etc/nsswitch.conf
# /etc/nsswitch.conf
#
# Example configuration of GNU Name Service Switch functionality.
# If you have the `glibc-doc-reference' and `info' packages installed, try:
# `info libc "Name Service Switch"' for information about this file.
passwd: compat
group: compat
shadow: compat
gshadow: files
hosts: files resolve [!UNAVAIL=return] mdns4_minimal dns [NOTFOUND=return]
networks: files
protocols: db files
services: db files
ethers: db files
rpc: db files
netgroup: nis
Hinweis: Ich habe viel Zeit damit verbracht, "ältere" Lösungen zu untersuchen, bevor Ubuntu zu systemd.resolved in 16.10 wechselte. Sie haben bei mir nicht funktioniert und ich glaube nicht, dass dies eine doppelte Frage zu ähnlichen Fragen mit früheren Ubuntu-Konfigurationen ist.
quelle
Antworten:
Wenn ich Ihre Frage richtig verstehe, können Sie Ihre lokalen Hostnamen nicht auflösen.
In diesem Fall hatte ich das gleiche Problem mit einer Neuinstallation von 16.10, und es stellte sich heraus, dass es sich um ein bekanntes Problem ( https://bugs.launchpad.net/ubuntu/+source/systemd/+bug/1624071 ) im Zusammenhang mit libnss handelt -auflösen in systemd.
In meinem Fall bestand die Lösung darin, Ihre Datei /etc/nsswitch.conf zu überprüfen und genau zu notieren, wie NSS Ihre Hosts auflöst:
Diese Logik scheint die Auflösung des Hostnamens nicht zu erfüllen, bevor sie überhaupt zu mDNS gelangt.
Das Bearbeiten der Host-Zeile auf eine Version vor 16.10 behebt diesen offensichtlichen logischen Fehler:
Der enthaltene Link zum Fehlerbericht deutet darauf hin, dass eine zukünftige Version des systemd-Pakets dieses Problem möglicherweise beheben wird.
Reich
quelle
Eine alternative Lösung, die automatisch bearbeitet
/etc/nsswitch.conf
wird, ist das Entfernen von [ Bearbeiten: und Neuinstallieren]libnss-resolve
:quelle
Ich hatte dieses Problem mit einer Neuinstallation von Ubuntu 17.04. Ich habe mich entschieden, auf meinem Laptop von systemd-aufgelöst zu dnsmasq zu wechseln (der Nameserver verwendet auch dnsmasq). Ich habe die Schritte unter Deaktivieren von systemd aufgelöstem und aufgelöstem DNS mit dnsmasq ausgeführt.
quelle