See zero configuration
iguration) An IETF specification that enables devices on an IP network to automatically configure themselves and be discovered without manual intervention. If required, Zeroconf can assign an IP address and alternate hostname to a device. Once assigned, Zeroconf lets users and applications readily discover the service it offers. Apple's Bonjour is the major implementation of Zeroconf (see Bonjour
), and Porchdog Software's Howl (www.porchdogsoft.com) and freedesktop.org's Avahi (www.avahi.org) are other fine examples.
Automatic IP Address Assignment
If a device does not have an IP address and there is no DHCP server in the network, Zeroconf employs link-local addressing to create one. See link-local address
Name Handling and Discovery
The DNS Service Discovery (DNS-SD) protocol is used to identify and discover Zeroconf-enabled devices on the network. DNS-SD employs multicast DNS (mDNS), which sends packets to every node on the network for resolving duplicate hostnames that might occur and to query the network for services.
Port Forwarding (Port Mapping)
Zeroconf uses the NAT Port Mapping Protocol (NAT-PMP) to open ports in a router to let a party from the outside world contact a user inside the network. For example, opening ports for VoIP and videoconferencing traffic makes two-way communications easier no matter which side initiates the call. See TCP/IP port
Zeroconf vs. UPnP
Zeroconf shares three functions with the Universal Plug and Play (UPnP) family of protocols: IP address assignment, service discovery and port forwarding. They both use link-local addressing for IP assignment, but different methods for discovery and port mapping. Zeroconf is noted for its greater simplicity, however. See UPnP
Zeroconf and Bonjour
An excellent reference from O'Reilly covers Zeroconf in splendid detail. If you want the scoop on Bonjour, mDNS, DNS-SD and more, read "Zero Configuration Networking" by Stuart Cheshire and Daniel H. Steinberg. (O'Reilly Media, Inc. 2006)