Share on Facebook Share on Twitter Email
Answers.com

Zero configuration networking

Did you mean: Zero configuration networking (technology), sort, Delicious (variety of sweet apple), softlifting (technology), mDNS (technology)

 
Computer Desktop Encyclopedia: zero configuration
 

Installing a peripheral in a computer or connecting a computer or device to a network without requiring any technical configuration by the user. Plug and Play is a peripheral example, and Universal Plug And Play (UPnP), Zeroconf and Jini are network examples. See Zeroconf, UPnP, Jini and Plug and Play.

Download Computer Desktop Encyclopedia to your iPhone/iTouch

Search unanswered questions...
Enter a word or phrase...
All Community Q&A Reference topics
 
Wikipedia: Zero configuration networking
Top

Zero configuration networking (zeroconf), is a set of techniques that automatically creates a usable Internet Protocol (IP) network without manual operator intervention or special configuration servers.

Zero configuration networking allows inexpert users to connect computers, networked printers, and other network devices and expect a functioning network to be established automatically. Without zeroconf, a user must either set up special services, like Dynamic Host Configuration Protocol (DHCP) and Domain Name System services (DNS), or set up each computer's network settings manually, which may be difficult or impossible for non-technical or novice users.

Zeroconf is built on three core technologies:

  • Assignment of numeric network addresses for networked devices (link-local address autoconfiguration)
  • Automatic resolution and distribution of computer hostnames (multicast DNS)
  • Automatic location of network services, such as printing devices through DNS service discovery.

Contents

Address selection

Both versions of the Internet Protocol, IPv4 and IPv6, have standard methods of automatically configuring network interface addresses through a method called address autoconfiguration. IPv4 uses the 169.254.0.0/16 (link-local) set of addresses defined in RFC 3927. In IPv6, both link-local addresses and global or site-local unicast addresses may be automatically self-configured by a host, see RFC 4862.

The technique is called Link-Local address assignment in RFC 3927. However, Microsoft refers to this as Automatic Private IP Addressing (APIPA) or Internet Protocol Automatic Configuration (IPAC).

Name resolution

In 2000, Bill Manning and Bill Woodcock described the Multicast Domain Name Service[1] which spawned the implementations by Apple and Microsoft. Both implementations are very similar. Apple's Multicast DNS (mDNS) is an open specification, while Microsoft's Link-local Multicast Name Resolution (LLMNR) is little used and the specification is not an IETF standards track publication. The latter was published as informational RFC 4795.

The two protocols have minor differences in their approach to name resolution. mDNS allows a network device to choose a domain name in the local namespace and announce it using a special multicast IP address. This introduces special semantics for the local domain,[2] which is considered a problem by some members of the IETF.[3] The current LLMNR draft allows a network device to choose any domain name, which is considered a security risk by some members of the IETF.[4] mDNS is compatible with DNS-SD as described in the next section, while LLMNR is not.[5]

Service discovery

Apple's protocol: Multicast DNS/DNS-SD

Multicast DNS (mDNS) is a protocol that uses similar APIs to the normal unicast Domain Name System but implemented differently. Each computer on the LAN stores its own list of DNS resource records (e.g. A, MX, SRV, etc) and when an mDNS client wants to know the IP address of a PC given its name, the PC with the corresponding A record replies with its IP address. The mDNS multicast address is 224.0.0.251.

DNS based Service Discovery (DNS-SD) is the other half of Apple's solution, built on top of the Domain Name System. It is used in Apple products, many network printers and a number of third party products and applications on various operating systems. In contrast to Microsoft's competing technology, SSDP, it uses DNS rather than HTTP. It uses DNS SRV, TXT, and PTR records to advertise Service Instance Names. The hosts offering the different services publish details of available services like instance, service type, domain name and optional configuration parameters. Service types are given informally on a first-come basis. A service type registry is maintained and published by DNS-SD.org.

Many Mac OS X networking clients, such as the Safari browser and the iChat instant messaging software, use DNS-SD to locate nearby servers. On Windows, instant messaging and VoIP clients such as Gizmo support DNS-SD. Some Linux distributions also include DNS-SD functionality.

mDNS/DNS-SD was developed by Apple Computer employee Stuart Cheshire in the company's move from AppleTalk to IP.

Microsoft's protocol: UPnP SSDP

Simple Service Discovery Protocol (SSDP) is a UPnP protocol, used in Windows XP and several brands of network equipment. SSDP uses HTTP notification announcements that give a service-type URI and a Unique Service Name (USN). Service types are regulated by the Universal Plug and Play Steering Committee.

SSDP is supported in many SOHO firewall appliances, where host computers behind it may pierce holes for applications. It is also used in media center systems, where media exchange between host computers and the media center is facilitated using SSDP.

Efforts toward an IETF standard protocol

Service Location Protocol (SLP), the only protocol for service discovery to have reached the IETF Proposed Standard status, is supported by Hewlett-Packard's network printers, Novell, Sun Microsystems, and Apple Inc, but ignored by some other large vendors. SLP is described in RFC 2608 and RFC 3224 and implementations are available for both Solaris and Linux.

Standardization

RFC 3927, a standard for choosing addresses for networked items, was published in March 2005 by the Zeroconf IETF working group, which included individuals from Apple, Sun, and Microsoft.[6]

LLMNR was submitted for official adoption in the DNSEXT IETF working group, however failed to gain consensus and thus has been published as informational RFC only: RFC 4795.[7] Following the failure of LLMNR to become an Internet standard Apple was asked by the IETF to submit the mDNS/DNS-SD specs for publishing as informational RFC as well, given that mDNS/DNS-SD is used much more widely than LLMNR.

RFC 2608, the SLP standard for figuring out where to get services, was published by the SVRLOC IETF working group.[8]

Major implementations

Apple Bonjour

A widely adopted zeroconf solution is Bonjour (formerly known as Rendezvous) from Apple Inc., which uses multicast DNS and DNS Service Discovery. Apple changed its preferred zeroconf technology from SLP to mDNS and DNS-SD between Mac OS X 10.1 and 10.2, though SLP continues to be supported by Mac OS X.

Apple's mDNSResponder has interfaces for C and Java[9] and is available on BSD, Mac OS X, Linux, other POSIX based operating systems and Windows. The Windows downloads are available from Apple's website.[10]

Avahi

Avahi is a Zeroconf implementation for Linux and BSDs. It implements IPv4LL, mDNS and DNS-SD. It is part of most Linux distributions, and is installed by default on some. If run in conjunction with nss-mdns it also offers host name resolution.[11]

Avahi also implements binary compatibility libraries that emulate Bonjour and the historic mDNS implementation Howl, so software made to use those implementations can also utilize Avahi through the emulation interfaces.

Windows CE 5.0

Windows CE 5.0 includes Microsoft's own implementation of LLMNR. LLMNR is not Bonjour compatible though.

Link-local IPv4 addresses

There are some implementations available:

  • Windows and Mac OS have both supported link-local addresses since 1998. Apple released its open-source implementation in the Darwin bootp package.
  • Avahi contains an implementation of IPv4LL in the avahi-autoipd tool.
  • zcip (Zero-Conf IP)
  • BusyBox can embed a simple IPv4LL implementation
  • Stablebox, a fork from Busybox, offers a slightly modified IPv4LL implementation named llad.
  • zeroconf, a package based on Simple IPv4LL, a shorter implementation by Arthur van Hoff.[12]

The above implementations are all stand-alone daemons or plugins for DHCP clients that only deal with link-local IP addresses. Another approach is to modify existing DHCP clients:

  • Elvis Pfützenreuter has written a patch for the uDHCP client/server.[13]

Neither of these implementations addresses kernel issues like the broadcasting of ARP replies[14] or closing of existing network connections.

The Internet Protocol Suite
Application Layer
BGP · DHCP · DNS · FTP · GTP · HTTP · IMAP · IRC · Megaco · MGCP · NNTP · NTP · POP · RIP · RPC · RTP · RTSP · SDP · SIP · SMTP · SNMP · SOAP · SSH · Telnet · TLS/SSL · XMPP · (more)
Transport Layer
TCP · UDP · DCCP · SCTP · RSVP · ECN · (more)
Internet Layer
IP (IPv4, IPv6) · ICMP · ICMPv6 · IGMP · IPsec · (more)
Link Layer
ARP · RARP · NDP · OSPF · Tunnels (L2TP) · PPP · Media Access Control (Ethernet, MPLS, DSL, ISDN, FDDI) · Device Drivers · (more)

See also

References

  • Erik Guttman (2001). "Autoconfiguration for IP Networking: Enabling Local Communication". IEEE Internet Computing 5 (3): 81–86. doi:10.1109/4236.935181. 

External links


 
 

Did you mean: Zero configuration networking (technology), sort, Delicious (variety of sweet apple), softlifting (technology), mDNS (technology)


 

Copyrights:

Computer Desktop Encyclopedia. THIS COPYRIGHTED DEFINITION IS FOR PERSONAL USE ONLY.
All other reproduction is strictly prohibited without permission from the publisher.
© 1981-2009 Computer Language Company Inc.  All rights reserved.  Read more
Wikipedia. This article is licensed under the GNU Free Documentation License. It uses material from the Wikipedia article "Zero configuration networking" Read more