Content deleted Content added
m Open access bot: doi added to citation with #oabot. |
Citation bot (talk | contribs) Add: date. | Use this bot. Report bugs. | Suggested by Лисан аль-Гаиб | Category:Domain Name System | #UCB_Category 2/149 |
||
Line 25:
IPv6 hosts are required to support multiple addresses per interface; moreover, every IPv6 host is required to configure a link-local address even when global addresses are available. IPv6 hosts may additionally self-configure additional addresses on receipt of router advertisement messages, thus eliminating the need for a DHCP server.{{Ref RFC|4862}}
Both IPv4 and IPv6 hosts may randomly generate the host-specific part of an autoconfigured address. IPv6 hosts generally combine a prefix of up to 64 bits with a 64-bit EUI-64 derived from the factory-assigned 48-bit [[IEEE]] [[MAC address]]. The MAC address has the advantage of being globally unique, a basic property of the EUI-64. The IPv6 protocol stack also includes duplicate address detection to avoid conflicts with other hosts. In IPv4, the method is called ''link-local address autoconfiguration''.{{Ref RFC|3927}} However, [[Microsoft]] refers to this as ''[[Automatic Private IP Addressing]]'' (APIPA)<ref>{{Citation | url = http://msdn.microsoft.com/en-us/library/aa505918.aspx | publisher = Microsoft | title = MS Developer Network | contribution = Apipa | access-date = 2008-07-05 | archive-url = https://web.archive.org/web/20170318001826/https://msdn.microsoft.com/en-us/library/aa505918.aspx | archive-date = 2017-03-18 | url-status = dead }}</ref> or '''''Internet Protocol Automatic Configuration''''' ('''IPAC'''). The feature is supported in Windows since at least [[Windows 98]].<ref>{{Citation | url = http://support.microsoft.com/kb/220874 | title = Knowledge base | date = 6 January 2021 | contribution = How to use automatic TCP/IP addressing without a DHCP server | publisher = Microsoft}}</ref>
==Name service discovery==
Line 36:
To address the need for automatic configuration, Microsoft implemented [[NetBIOS Name Service]], part of which is the [[Computer Browser Service]] already in Microsoft Windows for Workgroups 3.11<ref name="ComputerBrowserService">{{cite web|title=Description of the Microsoft Computer Browser Service|url=https://support.microsoft.com/en-us/kb/188001|website=Microsoft Knowledge Base|publisher=Microsoft|access-date=1 November 2015}}</ref> as early as 1992. NetBIOS Name Service is zero-configuration on networks with a single subnet and may be used in conjunction with a [[Windows Internet Name Service|WINS]] server or a Microsoft DNS server that supports secure automatic registration of addresses. This system has small, but not zero, management overhead even on very large enterprise networks. The protocols NetBIOS can use are part of the [[Server Message Block]] (SMB) suite of open protocols<ref name=ComputerBrowserService /> which are also available on Linux and iOS, although Windows typically supports a wider range of so-called dialects which can be negotiated between Windows clients that support it. For example, Computer Browser Services running on server operating systems or later versions of Windows are elected as so-called ''master browser'' over those that are not running a server operating system or running older versions of Windows.<ref name=ComputerBrowserService />
In 2000, Bill Manning and [[Bill Woodcock]] described the ''Multicast Domain Name Service''<ref>{{Citation | url = https://datatracker.ietf.org/doc/html/draft-manning-dnsext-mdns-00.txt | title = Multicast Domain Name Service |last1 = Manning |first1=Bill |last2= Woodcock |first2= Bill | newspaper = Ietf Datatracker |publisher = [[IETF]] |date= August 2000}}</ref> which spawned the implementations by Apple and Microsoft. Both implementations are very similar. Apple's [[Multicast DNS]] (mDNS) is published as a standards track proposal {{IETF RFC|6762}}, while Microsoft's [[Link-local Multicast Name Resolution]] (LLMNR) is published as informational {{IETF RFC|4795}}. LLMNR is included in every Windows version from Windows Vista onwards<ref>{{Citation | publisher = Microsoft | type = webpage | url = https://technet.microsoft.com/library/bb878128 | title = Microsoft TechNet Library Link-Local Multicast Name Resolution | date = 5 May 2010 }}</ref> and acts as a side-by-side alternative for Microsoft's NetBIOS Name Service over IPv4 and as a replacement over IPv6, since NetBIOS is not available over IPv6. Apple's implementation is available as the [[Bonjour (software)|Bonjour service]] since 2002 in Mac OS X v10.2. The Bonjour implementation (mDNSResponder) is available under the [[Apache License|Apache 2 Open Source License]]<ref>{{Citation | publisher = Apple | type = webpage | url = https://developer.apple.com/softwarelicensing/agreements/bonjour.php | title = Bonjour Licensing and Trademarks }}</ref> and is included in [[Android Jelly Bean]] and later<ref>{{Citation | type = webpage | url = http://developer.android.com/about/versions/android-4.1.html | title = Android 4.1 APIs }}</ref> under the same license.
Use of either NetBIOS or LLMNR services on Windows is essentially automatic, since using standard DNS client APIs will result in the use of either NetBIOS or LLMNR depending on what name is being resolved (whether the name is a local name or not), the network configuration in effect (e.g. DNS suffixes in effect) and (in corporate networks) the policies in effect (whether LLMNR or NetBIOS are disabled), although developers may opt into bypassing these services for individual address lookups.
Line 144:
==External links==
* {{Citation | url = http://jmdns.sourceforge.net/ | publisher = Source forge | title = JmDNS}}, a pure Java implementation of mDNS/DNS-SD.
* {{Citation | url = http://sourceforge.net/projects/pyzeroconf/ | publisher = Source forge | title = pyZeroConf| date = 11 July 2015 }}, a pure [[Python (programming language)|Python]] implementation of mDNS/DNS-SD.
* {{Citation | url = http://mono-project.com/Mono.Zeroconf | title = Mono.Zeroconf | publisher = Mono project}}, a cross platform (Linux, MS Windows, Apple Mac), unified Mono/.NET library for Zeroconf, supporting both Bonjour and Avahi.
* {{Citation | url = http://sourceforge.net/projects/wxservdisc/ | publisher = Source forge | title = WxServDisc| date = 13 June 2013 }}, a cross-platform wxWidgets-based service discovery module without external dependencies.
* {{Citation | url = http://files.multicastdns.org/draft-cheshire-dnsext-multicastdns.txt | title = Multicast DNS | last = Cheshire | first = Stuart | type = draft}}.
* {{Citation | url = http://files.dns-sd.org/draft-cheshire-dnsext-dns-sd.txt | publisher = DNS‐SD | title = DNS-Based Service Discovery Specification | last = Cheshire | first = Stuart | type = draft}}.
|