[erledigt] mdns und "Suchdomäne"

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

[erledigt] mdns und "Suchdomäne"

Beitrag von smutbert » 23.01.2017 11:48:52

Hallo,

ich finde die Namensauflösung über avahi und Debianlibnss-mdns in manchen Situationen äußerst praktisch, aber man muss immer den Hostnamen inklusive Domäne angeben

Code: Alles auswählen

$ ping zeus
ping: zeus: Der Name oder der Dienst ist nicht bekannt
$ ping zeus.local
PING zeus.local (192.168.1.132) 56(84) bytes of data.
64 bytes from 192.168.1.132 (192.168.1.132): icmp_seq=1 ttl=64 time=4.28 ms
[…]
obwohl ich bereits für einen Eintrag

Code: Alles auswählen

$ cat /etc/resolv.conf 
# Generated by NetworkManager
search local
nameserver 204.152.184.76
gesorgt habe. Das wäre doch eigentlich der richtige Ansatzpunkt?
Es geht hier um ein stretch, aber das Verhalten kenne ich bereits von jessie und davor und es spielt keine Rolle ob die Adressen statisch festgelegt werden oder von einem DHCP kommen.

lg smutbert
Zuletzt geändert von smutbert am 28.01.2017 13:23:35, insgesamt 1-mal geändert.

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: mdns und "Suchdomäne"

Beitrag von mat6937 » 23.01.2017 12:06:24

smutbert hat geschrieben: obwohl ich bereits für einen Eintrag

Code: Alles auswählen

$ cat /etc/resolv.conf 
# Generated by NetworkManager
search local
nameserver 204.152.184.76
gesorgt habe.
Bist Du sicher, dass bei entsprechender Konfiguration, der avahi-daemon, mehr als den Eintrag der DNS-Server der resolv.conf (zusätzlich) nutzen kann?

Der domian-name wird in der avahi-daemon.conf konfiguriert und wenn Du dort nichts geändert hast, dann sollte der doch per default auf ".local" sein.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: mdns und "Suchdomäne"

Beitrag von smutbert » 23.01.2017 12:27:51

mat6937 hat geschrieben:[…]
Bist Du sicher, dass bei entsprechender Konfiguration, der avahi-daemon, mehr als den Eintrag der DNS-Server der resolv.conf (zusätzlich) nutzen kann?
Ich fürchte ich versteh die Frage nicht 100%ig, aber trotzdem kann ich sie eindeutig mit: „Nein, ich bin mir nicht sicher!“ beantworten.

Nach meinem Verständnis verwendet der avahi-daemon überhaupt keine "richtigen" dns-Server sondert posaunt die eigene ip-Adresse ins Netzwerk und horcht mit libnss-mdns auf solche Broadcasts anderer Systeme. Ohne dass ich etwas dafür getan hätte läuft die Namensauflösung im lokalen Netzwerk dann über "mdns4_minimal"

Code: Alles auswählen

$ cat /etc/nsswitch.conf 
[…]
hosts:          files mdns4_minimal [NOTFOUND=return] dns myhostname
networks:       files
[…]
mat6937 hat geschrieben: Der domian-name wird in der avahi-daemon.conf konfiguriert und wenn Du dort nichts geändert hast, dann sollte der doch per default auf ".local" sein.
Ja, dort steht local. Auch mein System war sich bereits vor dem Hinzufügen der Suchdomäne darüber im Klaren

Code: Alles auswählen

$ hostname -f
achill.local
Trotzdem muss ich an die Hostnamen immer .local anhängen damit es funktioniert.

Gerade habe ich in einem Forum einen etwas vagen Hinweis gefunden, dass sich das Hinzufügen der Suchdomäne zwar auf die Namensauflösung über dns, nicht aber auf die über mdns4_minimal auswirkt. Hilft mir also nicht so recht weiter...

Und es tut sich eine weitere Frage auf, wenn nach der der Namensauflösung über files und mdns4_minimal gleich [NOTFOUND=return] folgt, wieso funktioniert die Namensauflösung im Internet überhaupt - dafür ist mdns(4_minimal) doch gar nicht zuständig?

mat6937
Beiträge: 2953
Registriert: 09.12.2014 10:44:00

Re: mdns und "Suchdomäne"

Beitrag von mat6937 » 23.01.2017 12:38:52

smutbert hat geschrieben: Trotzdem muss ich an die Hostnamen immer .local anhängen damit es funktioniert.
Du könntest ja mal vor dem ping:

Code: Alles auswählen

tcpdump -c 30 -vvven port 53
starten und danach:

Code: Alles auswählen

ping zeus
bzw.

Code: Alles auswählen

ping zeus.local
um zu schauen, ob ping die Namesauflösung mit Hilfe eines DNS-Server oder ohne einen DNS-Server macht. Evtl. vorher den dns-cache löschen/leeren.
smutbert hat geschrieben: Und es tut sich eine weitere Frage auf, wenn nach der der Namensauflösung über files und mdns4_minimal gleich [NOTFOUND=return] folgt, wieso funktioniert die Namensauflösung im Internet überhaupt - dafür ist mdns(4_minimal) doch gar nicht zuständig?
Nein, mdns(4_minimal) ist nicht zuständig, aber dns in der Zeile "hosts" der nsswitch. conf ist dafür zuständig. Evtl. mit tcpdump testen/nachschauen.

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: mdns und "Suchdomäne"

Beitrag von smutbert » 24.01.2017 10:34:34

Ich bin davon ausgegangen, dass das [NOTFOUND=return] nach mdns4_minimal dafür sorgt, dass die Einträge danach (also dns und myhostname) gar nicht zum Zug kommen, selbst wenn mdns scheitert.

Hier [1] habe ich aber etwas interessantes gefunden: Unter MacOS springt mdns nur auf Hostnamen mit der Domain .local an, dh bei zeus würde unter MacOS die Abfrage via mdns einfach übersprungen werden. Laut Wikipedia muss das wohl allgemein und damit auch unter Linux so sein
[…] Alle DNS-Abfragen für Namen, die auf „.local.“ enden, müssen mit UDP und IP Multicast an die mDNS-Multicast-Adresse (IPv4: 224.0.0.251, IPv6: ff02::fb, UDP-Port 5353) gesendet werden. Ist kein anderer DNS-Server verfügbar, können auch Anfragen, die nicht auf „.local.“ enden, an diese Adresse gesendet werden.
[…]
Quelle

Das heißt, wenn ich bei der Konfiguration der Netzwerkschnittstelle keinen DNS-Server angegeben hätte, dann könnte es vielleicht auch ohne .local funktionieren. Das hilft mir zwar nix, weil ich ja auch ins Internet will, aber ausprobieren werd ich es trotzdem.

[1] http://apple.stackexchange.com/question ... -no-effect

Benutzeravatar
smutbert
Moderator
Beiträge: 8331
Registriert: 24.07.2011 13:27:39
Wohnort: Graz

Re: mdns und "Suchdomäne"

Beitrag von smutbert » 28.01.2017 13:23:20

Das (nicht-)Vorhandensein eines DNS-Servers ändert am Verhalten gar nichts. Das heißt ohne .local hiner dem Hostnamen kein mdns.

Danke für die Unterstützung mat6937.

Antworten