www.wikidata.de-de.nina.az
Zeroconf oder Zero Configuration Networking ist ein Vorhaben fur die selbstandige Konfiguration von Rechnernetzen ohne Eingriffe durch Menschen Es wird hauptsachlich in Netzwerken genutzt in denen eine Administration des Netzwerkes unpraktisch ist wie bei Heimnetzwerken oder kleinen Firmennetzwerken 1 Inhaltsverzeichnis 1 Hintergrund 2 Automatische IP Zuweisung 3 Multicast DNS 3 1 Vermeidung redundanten Netzwerkverkehrs 3 1 1 Known Answer Suppression 3 1 2 Duplicate Question Suppression 3 1 3 Duplicate Answer Suppression 4 Implementierungen 4 1 Microsoft 4 1 1 Microsoft APIPA 4 1 2 DNS SD 4 1 3 mDNS 4 1 4 Weitere Protokolle 5 Normen und Standards 6 Weblinks 7 EinzelnachweiseHintergrund BearbeitenDie entsprechende Arbeitsgruppe der Internet Engineering Task Force schloss mangels Konsens ohne Ergebnis 1 Sie arbeitete von 1999 bis 2004 Ihre Ziele waren automatische Zuordnung einer eigenen IP Adresse der Netzmaske und einer IP Adresse eines Routers Namensauflosung Suchfunktion nach Diensten Zuordnung von Multicast Adressen unbeeintrachtigte Sicherheit Die Arbeitsgruppe relativierte Zero Null dahingehend dass wenig Konfiguration besser als ohne Sicherheit sei 1 2005 wurde nachtraglich RFC 3927 uber die automatische Konfiguration von IPv4 in Local Area Networks ohne das Dynamic Host Configuration Protocol veroffentlicht Dieser Text wurde von Mitarbeitern der Unternehmen Apple Microsoft und Sun Microsystems verfasst und dokumentiert auch verwandte fruhere Implementierungen von AutoIP oder Automatic Private IP Addressing APIPA Verbindungen in andere Netze als das Internet sind bei all dem ausgeschlossen Die IPv6 Stateless Address Autoconfiguration nach RFC 4862 ist darin flexibler Das einfachste Einsatzszenario ist es zwei Computer mit einem Crossover Kabel zu verbinden Jedes Gerat sucht sich dann automatisch eine freie IP Adresse und kann anschliessend mittels Internet Protocol IP unter dieser Adresse angesprochen werden Diese Aufgabenstellung ist nicht neu und wurde mit AppleTalk unter Mac OS und NetBIOS unter Windows schon weitgehend gelost Zur Nutzung muss man allerdings die IP Adresse der Gegenstelle kennen weshalb Zeroconf weiter zielt Automatische IP Zuweisung BearbeitenDabei handelt es sich um einen auf dem Address Resolution Protocol ARP aufbauenden Mechanismus um fur eine Netzwerkschnittstelle automatisch eine freie IP Adresse auszuwahlen Fur diesen Zweck ist von der IANA der Adressbereich 169 254 0 0 16 vorgesehen wobei die ersten und die letzten 256 Adressen in diesem Bereich fur zukunftige Anwendungen reserviert sind Der Dienst fur die automatische IP Adressierung heisst Internet Protocol Automatic Configuration IPAC Wenn ein Rechner eine Link Local IP Adresse konfigurieren will wahlt er eine zufallige IP Adresse zwischen 169 254 1 0 und 169 254 254 255 aus Bei der Erzeugung der IP Adresse sollte eine rechnerspezifische Information einfliessen wie etwa die MAC Adresse der Netzwerkschnittstelle damit moglichst jedes Mal dieselbe IP Adresse generiert wird sie wird also nur pseudozufallig gewahlt Nach der Auswahl seiner IP Adresse muss der Rechner diese fur sich beanspruchen und testen ob diese nicht bereits von einem anderen Rechner verwendet wird Dieser Test muss durchgefuhrt werden bevor die IP Adresse als Senderadresse in IP oder ARP Paketen verwendet wird und genau dann wenn eine Netzwerkschnittstelle aktiviert wird Das kann etwa das Einschalten oder Rebooten des Rechners das Aufwachen aus einem Sleep Modus das Einstecken eines Ethernet Kabels oder das automatische Einhangen eines Rechners in ein WLAN sein Explizit verboten ist diese Uberprufung periodisch durchzufuhren da das eine Verschwendung von Netzwerkressourcen darstellen wurde und im eigentlichen Test auf Adresskonflikte schon eine Moglichkeit vorgesehen ist eventuelle Konflikte auch passiv zu erkennen und darauf zu reagieren Die Uberprufung von Adressen auf Konflikte erfolgt mit Hilfe von ARP probes Ein ARP probe ist ein ARP Paket bei dem die Absender IP Adresse auf 0 0 0 0 gesetzt wird und als Empfanger IP Adresse die zu uberprufende Adresse verwendet wird Sobald der Rechner bereit ist mit der Konfliktuberprufung zu beginnen wartet er eine zufallig lange Zeit zwischen 1 und 2 Sekunden und sendet dann drei ARP probes mit einem zufalligen Zeitabstand von 1 bis 2 Sekunden aus Empfangt der Rechner zwischen dem Testanfang und 2 Sekunden nach Versenden der letzten ARP probe ein ARP Paket bei dem die Absender IP Adresse der zu uberprufenden IP Adresse entspricht so wurde ein Konflikt gefunden Der Rechner muss diese Prozedur dann mit einer anderen generierten IP Adresse wiederholen Wird in diesem Zeitraum ein anderes ARP probe empfangen das als Empfanger IP Adresse die zu testende IP Adresse enthalt und deren Absender MAC Adresse keiner der MAC Adressen der Netzwerkschnittstelle des Rechners entspricht so muss vom Rechner ebenfalls eine neue IP Adresse generiert und uberpruft werden Das kann beispielsweise passieren wenn zwei oder mehrere Rechner gleichzeitig versuchen dieselbe Link Local Adresse zu konfigurieren Um ARP Sturme und damit eine Uberlastung des lokalen Netzwerkes zu vermeiden wenn es zu mehreren Konflikten kurz hintereinander kommt muss jeder Rechner nach zehn Fehlversuchen die Geschwindigkeit mit der er neue Adressen auswahlt und uberpruft auf maximal eine Uberprufung pro Minute reduzieren Konnte der Rechner keinen Konflikt feststellen so hat er erfolgreich die generierte IP Adresse fur sich beansprucht Er muss diese dann bekannt machen indem er zwei ARP announcements mit einem Abstand von 2 Sekunden versendet Ein ARP announcement unterscheidet sich von einem ARP probe nur dadurch dass als Absender und Empfanger IP Adresse die neu ausgewahlte Link Local IP Adresse eingesetzt wird Die Erkennung von Konflikten muss dauerhaft auch nach dem Auswahlen einer verwendbaren IP Adresse stattfinden Empfangt der Rechner ein ARP Paket das von einem anderen Rechner versendet wurde und als Sender IP Adresse die eigene IP Adresse enthalt so handelt es sich um einen Adressenkonflikt Der Rechner hat nun zwei Moglichkeiten namlich eine neue IP Adresse auszuwahlen oder seine IP Adresse zu verteidigen Letzteres ist zu bevorzugen wenn der Rechner noch TCP Verbindungen offen hat Wurden noch keine kollidierenden ARP Pakete empfangen erfolgt die Verteidigung der Adresse durch den Rechner dadurch dass dieser ein ARP announcement aussendet Konnte der Rechner jedoch in den letzten Sekunden schon einen Adresskonflikt feststellen so muss er eine neue IP Adresse auswahlen um eine Endlosschleife zu vermeiden wenn zwei Rechner mit gleicher IP Adresse versuchen diese gegenuber dem anderen zu verteidigen Multicast DNS BearbeitenMulticast DNS im TCP IP Protokollstapel Anwendung Multicast DNSTransport UDPNetzwerk IP IPv6 IPv4 Netzzugang Ethernet TokenRing FDDI Das Protokoll Multicast DNS mDNS beschreibt ein Verfahren Namen und IP Adressen ohne DNS Server zu ubersetzen mDNS beschreibt wie Clients verfahren mussen wenn sie DNS Anfragen an Multicast Adressen senden und wie eine Gruppe von Rechnern damit umgeht sodass die Anfrage richtig und ohne unnotige Last auf dem Netzwerk beantwortet wird DNS Based Service Discovery DNS SD beschreibt einen Mechanismus zum automatischen Veroffentlichen und Finden von Netzdiensten DNS SD spezifiziert eine Konvention fur die Verwendung von existierenden DNS Record Typen die das Browsen und Veroffentlichen von Netzwerkdiensten mit DNS ermoglicht 2 mDNS legt fest dass die DNS Top Level Domain local link lokal ist Anfragen und Antworten die mit local zu tun haben ergeben ahnlich IP Adressen aus dem 169 254 0 0 16 bzw fe80 10 Bereich nur im lokalen Netz Sinn Alle DNS Abfragen fur Namen die auf local enden mussen 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 verfugbar konnen auch Anfragen die nicht auf local enden an diese Adresse gesendet werden Jedem Rechner steht es frei sich einen eigenen Rechnernamen aus der local Domain auszuwahlen Im Gegensatz zu anderen offentlichen Top Level Domains gibt es keinerlei Formalitaten ausser dass bereits vergebene Rechnernamen nicht mehr verwendet werden sollten Naturlich kann es in der Praxis zu Konflikten kommen von den Erfindern von mDNS wurde das aber als sehr unwahrscheinlich angenommen Eine Konfliktlosung wird sogar bewusst nicht diskutiert da es sinnvolle Anwendungen fur den Fall geben kann dass mehrere Rechner den gleichen Namen tragen etwa fur Lastverteilungs oder Hochverfugbarkeits Losungen Soll uber eine Reverse Mapping DNS Abfrage der Hostname zu einer link lokalen IP Adresse ermittelt werden so muss auch diese an die mDNS Multicast Adresse siehe oben gesendet werden Vermeidung redundanten Netzwerkverkehrs Bearbeiten mDNS stellt einige Regeln auf die mehrfache mDNS Abfragen und Antworten verhindern und so den Netzwerkverkehr moglichst gering halten sollen Known Answer Suppression Bearbeiten Eine Moglichkeit zur Unterdruckung von bereits bekannten Antworten besteht darin dass der Client der eine mDNS Abfrage versendet schon bekannte Antworten die noch in seinem Cache zu finden sind als Answer Records an seine Abfrage anhangt Sieht nun ein anderer Client der die Abfrage beantworten konnte seine vorgeschlagene Antwort in der Liste der bereits gegebenen Antworten und ist die TTL Time to live noch mehr als die Halfte der ublichen TTL muss er diese nicht mehr versenden Ist die TTL zu gering muss der andere Client eine Antwort versenden um die im Cache des ersten Clients gespeicherte TTL zu aktualisieren Duplicate Question Suppression Bearbeiten Wenn mehrere Clients in etwa zur selben Zeit dieselbe Abfrage versenden wurden kame es zu redundantem Netzwerkverkehr Plant ein Client eine Anfrage zu versenden und sieht eine Abfrage eines anderen Clients desselben Inhalts sollte er die fremde Abfrage als seine eigene betrachten und die Antwort darauf verwenden anstatt eine eigene Abfrage zu versenden Duplicate Answer Suppression Bearbeiten Wenn ein Server wahrend er die Versendung einer Antwort vorbereitet eine Antwort eines anderen Servers desselben Inhalts sieht und die TTL Time to live der fremden Antwort nicht kleiner als die der eigenen geplanten ist dann sollte er seine Antwort als gesendet betrachten also keine eigene Antwort senden Implementierungen BearbeitenDie erste Implementierung von Zeroconf wurde von Apple durchgefuhrt und heisst Bonjour fruher Rendezvous Es ist seit der Version 10 2 Jaguar 2002 in Mac OS X 2016 umbenannt in macOS integriert und Apple liefert die meisten Programme soweit es sinnvoll ist mit Bonjour Funktionalitaten aus Eine Komponente von Bonjour ist das mDNSResponder Projekt das von Apple im Sourcecode unter der Apache Lizenz veroffentlicht wurde mDNSResponder implementiert dabei mDNS und DNS SD Es wurde von Apple portierbar entworfen und implementiert so dass der Quelltext nicht nur unter Mac OS X ab 10 2 sondern auch unter Linux FreeBSD NetBSD OpenBSD Solaris VxWorks Mac OS 9 und Windows ohne Anpassungen ubersetzt werden kann Ein bekannter Fehler in der mDNS Implementierung von Apple fuhrt unter Windows 7 haufig zu dem Problem dass ein Default Gateway von 0 0 0 0 eingetragen wird der zeitlich vor dem per DHCP bezogenen Gateway herangezogen wird und damit die Internet Verbindung des Rechners effektiv lahmlegt 3 Eine einfache Losung ist hier die Deaktivierung des Bonjour Dienstes per Service Manager 4 Mit Avahi existiert weiterhin eine freie LGPL und portierfahige Implementierung von mDNS DNS SD die heutzutage in allen Linux Distributionen Standard ist Damit unter Linux die Namensauflosung bei der Top Level Domain local wie gewohnt uber den DNS Server z B BIND abgewickelt wird ist bei alteren Implementierungen der Eintrag mDNS off in der Datei etc host conf erforderlich 5 Microsoft Bearbeiten Microsoft APIPA Bearbeiten Microsofts APIPA soll es Heimanwendern ermoglichen ein TCP IP Netzwerk betreiben zu konnen ohne sich mit der IP Adressierung und deren IP Parametern auseinandersetzen zu mussen Das Betriebssystem versucht zuerst einen DHCP Server zu erreichen Ist ein solcher nicht erreichbar so wird automatisch eine zufallige Adresse aus dem Bereich 169 254 x x vergeben 6 In Windows ist die automatische IP Adressen Vergabe APIPA seit Windows 98 implementiert Sie entspricht jedoch nicht vollstandig dem RFC der IETF 7 Microsoft nennt dieses Verfahren Automatic Private IP Addressing oder kurz APIPA 8 DNS SD Bearbeiten Microsoft unterstutzt teilweise DNS SD in Windows 10 Die Unterstutzung wurde schrittweise eingebaut und diente ursprunglich nur innerhalb Windows dazu dass ein Windows 10 Client IPP Drucker im lokalen Netz finden kann Mittlerweile wird DNS SD auch fur das Ankundigen und Finden von drahtlosen Anzeigegeraten in einem lokalen Netzwerk verwendet Fur Programmierer ist DNS SD uber das Windows Networking ServiceDiscovery Dnssd API verfugbar 9 Ein Windows 10 Kommandozeilen Werkzeug fur DNS SD ist nur von Fremdfirmen zum Beispiel als Teil von Apples Bonjour fur Windows verfugbar Im Windows Subsystem fur Linux WSL ist DNS SD durch Avahi verfugbar mDNS Bearbeiten In Windows 10 kann im Entwickler Modus Device Discovery aktiviert werden 10 Dies aktiviert Multicast Unterstutzung im DNS Client Fur Windows IoT ist ein mDNS Antwortdienst von Microsoft im Quelltext verfugbar 11 In WSL ist mDNS uber Avahi verfugbar Weitere Protokolle Bearbeiten Je nach Windows Version und Konfiguration sind weitere proprietare Microsoft Protokolle wie LLMNR NBNS und SSDP verfugbar Microsoft rat von der Verwendung von NBNS ab Normen und Standards BearbeitenS Cheshire B Aboba E Guttman RFC 3927 Dynamic Configuration of IPv4 Link Local Addresses Mai 2005 englisch S Cheshire M Krochmal RFC 6762 Multicast DNS Februar 2013 englisch S Cheshire M Krochmal RFC 6763 DNS Based Service Discovery Februar 2013 englisch Weblinks Bearbeitenzeroconf org Offizielle Webseite der IETF Zeroconf Working Group Avahi mDNSResponder JmDNS Java wxServDisc wxWidgets Einzelnachweise Bearbeiten a b c Zero Configuration Networking zeroconf Internet Engineering Task Force abgerufen am 29 April 2012 S Cheshire M Krochmal RFC 6763 DNS Based Service Discovery Februar 2013 englisch Windows 7 network system tray icon displays Internet access when there is none Abgerufen am 13 Oktober 2019 amerikanisches Englisch Microsoft Knowledge Base The Default Gateway may have been set to 0 0 0 0 on a Windows Vista based or later OS running Apple s Bonjour service Support Name Resolution Problems with local Domains Abgerufen am 14 April 2017 APIPA Computer Lexikon Fachbegriffe verstandlich erklart PC EDV Glossar Abgerufen am 12 Juni 2020 APIPA Nicht mehr online verfugbar Archiviert vom Original am 20 November 2010 abgerufen am 25 Oktober 2010 englisch Automatische TCP IP Adressierung ohne einen DHCP Server Abgerufen am 25 Oktober 2010 Windows Networking ServiceDiscovery Dnssd Namespace Abgerufen am 31 August 2020 englisch Weitere Features im Entwicklermodus Abgerufen am 31 August 2020 Erste Schritte mit der Beispielquelle des mDNS Antwortdiensts Abgerufen am 31 August 2020 Abgerufen von https de wikipedia org w index php title Zeroconf amp oldid 238939612