Bonjour / Zeroconf / Avahi

Bonjour ist eine Protokoll-Sammlung auf Basis von IP, DNS und NAT, um Netzwerkdienste, die in einem IP-Netz bereitgestellt werden, automatisch erkennen zu können, ohne das irgendetwas manuell konfiguriert werden muss. Bonjour, dass auch als Zeroconf (Zero Configuration Networking) bezeichnet wird, ist der Nachfolger von AppleTalk. Bonjour wurde von Apple im Jahr 2002 mit dem Namen "Rendezvous" ins Leben gerufen und später umbenannt. Bonjour gibt es nicht nur für Mac OS X, sondern auch für Linux (Avahi) und Windows (Bonjour).

Immer dann, wenn ein Computersystem in ein Netzwerk eingebunden wird, müssen Adressen konfiguriert, Dienste, Verzeichnisse und Laufwerke freigegeben werden. Bei Bonjour teilen die Diensteanbieter ihre Dienste von sich aus mit (Annoncierung), so dass er von anderen Stationen automatisch gefunden werden kann. Dabei kommt man ohne zentralen Server aus, der die Adressen, Portnummern und Servernamen verteilt. Die Dienste melden sich dynamisch an und ab.

Bonjour nutzt zum Informationsaustausch lediglich einzelne Multicast-DNS-Pakete (mDNS). Die Clients tauschen die Bonjour-Informationen über die Multicast-Adresse 224.0.0.251 (IPv4) bzw. ff02::fb (IPv6) an den Port 5353 aus. Die Bonjour-Pakete bleiben dabei im Subnetz. IP-Pakete aus dem Adressbereich zwischen 224.0.0.0 bis 224.0.0.255 dürfen IP-Router nicht über das eigene Subnetz hinaus übertragen. Multicast-Pakete werden nicht zwischen den Subnetzen geroutet.
Ein Problem ist das dann, wenn man mehrere Subnetze im Netzwerk hat, dann kommen nicht alle Bonjour-Pakete überall an. Nur wenn alle Stationen im selben Subnetz arbeiten, dann ist die Kommunikation zwischen allen Geräten mit Bonjour möglich.
Damit Bonjour-Informationen über Subnetzgrenzen hinweg übertragen werden, setzt man DNS-übliche Unicasts ein. Das Verfahren nennt man Wide Area Bonjour (WAB) und setzt einen DNS-Server voraus.

Ursprünglich war Bonjour für Heimnetzwerke gedacht. Doch mit der Verbreitung von Macbooks, iPhones und iPads verbreitete sich Bonjour auch in größeren Netzwerkumgebungen. Doch je mehr Bonjour-Stationen im Netzwerk, desto mehr fluten mDNS-Pakete das Netzwerk mit An- und Abmeldungen von Diensten. Aus diesem Grund hat sich Apple mit einer Arbeitsgruppe der Internet Engineering Task Force (IETF) zusammengetan, um eine neue Spezifikation für größere Netzwerk-Umgebungen in Unternehmen und Universitäten zu schaffen.

Aufgaben und Übungen mit dem Raspberrry Pi

Zeroconf/Bonjour/Avahi ist ein Announcierungsservice. Das bedeutet, der Service macht die Dienste, die ein Computer anbietet im lokalen Netzwerk bekannt. Typischerweise macht ein Drucker auf diese Weise in einem lokalen Netzwerk auf sich aufmerksam. Genauso kann jeder Computer in einem Netzwerk seinen Hostnamen bekannt machen. Das funktioniert besonders gut in DHCP-Umgebungen und wenn man die Konfiguration und Zuteilung statischer IP-Adressen vermeiden möchte.