Zeroconf: Namensauflösung und automatische Geräteerkennung
Gemeinsam mit der Arbeitsgruppe DNS Extensions entwickelte das Team von Zeroconf außerdem auch Lösungen für die automatische Adressübersetzung und Geräteverwaltung in den konfigurationslosen IPv4-Netzwerken. Anstatt ein komplett neues Protokoll zu entwerfen, entschied man sich dazu, diese Funktionen durch einfache Anpassungen des Standard-DNS-Protokolls zu bieten. Dabei arbeiteten die Projektgruppen eng mit Apple zusammen, denn das Elektronikunternehmen hatte mit seiner firmeneigenen Protokollsammlung AppleTalk bereits entsprechende Lösungen für die eigenen Geräte, die es lediglich auf die Internetprotokollfamilie zu übertragen galt. Ergebnis waren die Spezifikationen Multicast DNS (RFC 6762) und DNS-Based Service Discovery (RFC 6763).
Multicast DNS (mDNS) beschreibt, wie Geräte DNS-Anfragen an IP-Multicast-Adressen verschicken können. Zu diesem Zweck ist die Top-Level-Domain .local im mDNS-Protokoll als link-lokal definiert. Zudem müssen alle Anfragen, die auf .local enden, an die IPv4LL-Multicast-Adresse 224.0.0.251 (in IPv6 ist es die Adresse FF02::FB) geschickt werden. Alle DNS-Anfragen, die nicht auf .local enden, gelangen ebenfalls zu der Multicast-Adresse, wenn das Netzwerk nicht über einen DNS-Server verfügt. Generell können mDNS-Nachrichten sowohl über UDP als auch über TCP übertragen werden. Dabei wird statt des üblichen Ports 53 der Multicast-Port 5353 genutzt. Will ein Netzwerkgerät nun den Hostnamen eines anderen Netzwerkteilnehmers auflösen, schickt er diesem eine mDNS-Anfrage mit der Bitte um Identifizierung. Das Zielgerät antwortet mit einem Multicast-Paket, das seine IP-Adresse preisgibt. Alle Netzwerkgeräte erhalten diese Information und nehmen sie automatisch in ihrem DNS-Cache auf.
DNS-Based Service Discovery (DNS-SD) definiert, wie Dienste in einem Zeroconf-Netzwerk für alle Teilnehmer sichtbar und verfügbar gemacht werden können. Aus Abstimmungszwecken ist es zunächst notwendig, diese Dienste bei der IANA (Internet Assigned Numbers Authority) zu registrieren, um einen eindeutig zuordenbaren Servicenamen zu erhalten. Den jeweiligen Namen teilen Anwendungen den Netzwerkteilnehmern dann per Multicast-Benachrichtigung mit, wobei es keinerlei Problem darstellt, wenn mehrere Geräte den gleichen Dienst anbieten: Der zugreifende Netzwerk-Client hat in diesem Fall einfach die Möglichkeit, einen der Hosts auszuwählen.
Die beiden RFCs hat die IETF erst im Februar 2013 offiziell veröffentlicht, Apple hat als Initiator jedoch bereits 2002 damit begonnen, die Standards in seine Geräte zu integrieren. Die zu diesem Anlass entwickelte Software, die heute unter dem Namen Bonjour (früher Rendezvous) bekannt und Open Source ist, zählt zweifelsfrei zu den verbreitetsten Zeroconf-Lösungen. So ist die konfigurationslose Netzwerk-Architektur nicht nur für macOS und iOS, sondern auch für Windows verfügbar.