DNS-SD (Service Discovery) über mDNS (Multicast DNS) an Schulen
DNS-SD nutzt mDNS, um Dienste in lokalen Netzwerken zu entdecken und zu bewerben. Es ermöglicht die automatische Entdeckung von Netzwerkdiensten ohne Konfiguration von Serveradressen oder Ports. DNS-SD über mDNS wird teilweise (vor allem historisch-bedingt) manchmal auch als Zeroconf oder Apple Bonjour bezeichnet.
mDNS (Multicast DNS) Eckdaten
Multicast Address IPv6: ff02::fb
Multicast Address IPv4: 224.0.0.251
Port: 5353
mDNS ist ein Multicast-Protokoll. Das bedeutet, dass alle mDNS-Pakete eine TTL von 1 haben, was bedeutet, dass sie nicht geroutet werden können. Wenn die mDNS bzw. DNS-SD-Dienste auch in anderen Netzwerken verfügbar sein sollen, dann muss ein mDNS-Reflexionsdienst eingerichtet werden.
DNS-SD (DNS Service Discovery)
DNS-SD (DNS Service Discovery) nutzt normales DNS oder mDNS, um Dienste in einem lokalen Netzwerk zu entdecken und zu bewerben. Die Standard-Top-Level-Domain (TLD) ist .local.
Gängige DNS-SD-Dienste, die in Schulen verwendet werden
Drucker
_ipp._tcp: IPP-Drucker
_ipps._tcp: IPPS-Drucker
_printer._tcp: Allgemeine Drucker, die nicht speziell auf das Internet Printing Protocol ausgerichtet sind.
_print._sub._ipp._tcp: "_sub" gibt an, dass die Drucker in einer Subdomain organisiert sind.
_print._sub._ipps._tcp: "_sub" gibt an, dass die Drucker in einer Subdomain organisiert sind.
https://ftp.pwg.org/pub/pwg/candidates/cs-ippeve11-20200515-5100.14.pdf
AirPlay (Apple Medien- und Bildschirmübertragung)
Nützliche Web-Ressourcen für AirPlay:
https://support.apple.com/de-de/guide/deployment/depf138dd79c/web
https://openairplay.github.io/airplay-spec/service_discovery.html
Dienste, welche von einem Apple TV beworben werden:
_airplay._tcp
+ tcp Port 7000 öffnen
+ tcp/udp Ports 49152 bis 65535 öffnen für Geräte, auf die gestreamt werden darf.
_raop._tcp
Googlecast (Android Medien- und Bildschirmübertragung)
_googlecast._tcp
+ tcp/udp Port 8009 öffnen
mDNS-Reflexionsdienst
- Typische FLOSS-Reflexionsdienstprogramme sind z. B. avahi-daemon und mdns-reflector.
Warum Reflexionsdienste? Ein typisches Beispiel wäre die gemeinsame Nutzung von Druckern und Smartboards in verschiedenen (Wlan-)Netzwerken.
- Beispiel: Lehrer dürfen Drucker finden und benutzen und Schüler nicht.
- Beispiel: Lehrer + Schüler dürfen Bildschirmübertragung an ein Smartboard im Education-Netzwerk machen.
Dafür kann dann ein mDNS-Reflexionsdienst eingerichtet werden, um mDNS-Anfragen und -Antworten zwischen Netzwerke zu übertragen, regulieren und zu filtern. Dadurch wird es ermöglicht, dass Geräte in verschiedenen Netzwerken miteinander kommunizieren und Dienste wie gemeinsam genutzte Drucker für z. B. Lehrer zugänglich zu machen.
- Der mDNS-Reflexionsdienst muss nicht unbedingt auf einem Router ausgeführt werden. Der Server, auf dem der Dienst läuft, benötigt jedoch eine Netzwerkschnittstelle für jedes Netzwerk, für das mDNS-Pakete reflektiert werden sollen. (Daher ist der Router naheliegend.)