Network Working Group Bernard Aboba INTERNET-DRAFT Levon Esibov Category: Standards Track Dave Thaler Microsoft 20 February 2000 Multicast DNS Node Type Option This document is an Internet-Draft and is in full conformance with all provisions of Section 10 of RFC2026. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF), its areas, and its working groups. Note that other groups may also distribute working documents as Internet- Drafts. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." The list of current Internet-Drafts can be accessed at http://www.ietf.org/ietf/1id-abstracts.txt The list of Internet-Draft Shadow Directories can be accessed at http://www.ietf.org/shadow.html. 1. Copyright Notice Copyright (C) The Internet Society (2000). All Rights Reserved. 2. Abstract This document defines a new DHCP option which is passed from the DHCP Server to the DHCP Client to specify the multicast DNS configuration. 3. Introduction Multicast DNS was first defined in [5], and behavior was further specified in [3]. The Dynamic Host Configuration Protocol (DHCP)[1] provides a framework for passing configuration information to hosts on a TCP/IP network. RFC 2132 [2] allows DHCP servers to specify configuration information for various kinds of name servers to be passed to DHCP clients. However, no information is provided as to the configuration desired for multicast DNS. The purpose of this document is to allow DHCP servers to specify the multicast DNS configuration to be used by DHCP clients. Aboba, Esibov & Thaler Standards Track [Page 1] INTERNET-DRAFT Multicast DNS Configuration Option 20 February 2000 3.1. Requirements terminology The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY" and "OPTIONAL" in this document are to be interpreted as described in RFC 2119 [4]. 3.2. DHCP terminology This document uses the following terms: DHCP client DHCP client or "client" is an Internet host using DHCP to obtain configuration parameters such as a network address. DHCP server A DHCP server or "server" is an Internet host that returns configuration parameters to DHCP clients. 4. Format of the mDNS node type option The following diagram defines the format of the mDNS configuration option: 0 1 2 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Code | Length | Node Type | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Code TBD Length 1 Aboba, Esibov & Thaler Standards Track [Page 2] INTERNET-DRAFT Multicast DNS Configuration Option 20 February 2000 Node type The node type field, which is one octet, describes how the host should behave as an mDNS querier and listener. Values are defined as follows: Value Node Type ----- --------- 0x1 B-node 0x2 P-node 0x3 Reserved 0x4 M-node 0x5 - 0x7 Reserved 0x8 H-node 0x9 - 0xFF Reserved 4.1. B-node B-nodes act as multicast DNS queriers and listeners, but do not send unicast DNS queries. As a result, they are unable to resolve non-local names. 4.2. P-node P-nodes only send unicast DNS queries, and MUST NOT listen for mDNS queries or respond to them in any way. Hosts configured as P-nodes MUST NOT send multicast DNS queries for any purpose, including DNS server location. Thus, if no DNS server option is provided, a P-node host will be unable to resolve names. 4.3. M-node M-nodes use multicast DNS queries for resolving local names prior to querying the unicast DNS server, but use the unicast DNS server exclusively for resolving non-local names. M-nodes not configured with the address of a unicast DNS server will send only multicast DNS queries, and will be unable to resolve non-local names. Hosts configured as M-nodes MUST listen for mDNS queries on both the linklocal and local scopes, and MUST respond to mDNS queries for their own name, via unicast. M-nodes MUST NOT send unicast DNS queries for local names without first sending an mDNS linklocal and then local query for the name. If a host receives an mDNS node type option corresponding to an M-node without receiving a DNS server option, then the host SHOULD send an mDNS query in order to locate a local DNS server, as described in [5]. Aboba, Esibov & Thaler Standards Track [Page 3] INTERNET-DRAFT Multicast DNS Configuration Option 20 February 2000 4.4. H-nodes H-nodes send multicast DNS queries only if they have not been able to resolve the name via a query to a unicast DNS server. H-nodes not configured with the address of a unicast DNS server will send only multicast DNS queries, and will be unable to resolve non-local names. Hosts configured as H-nodes MUST listen for mDNS queries on both the linklocal and local scopes, and MUST respond to mDNS queries for their own name, via unicast. H-nodes MUST NOT send mDNS queries without first querying the unicast DNS server if one is available. If a host receives an mDNS node type option corresponding to an H-node without receiving a DNS server option, then the host SHOULD send an mDNS query in order to locate a local DNS server, as described in [5]. 5. References [1] Droms, R., "Dynamic Host Configuration Protocol", RFC 2131, March 1997. [2] Alexander, S., Droms, R., "DHCP Options and BOOTP Vendor Extensions", RFC 2132, March 1997. [3] Woodcock, B., Manning, B., "Multicast Discovery of DNS Services", Internet draft (work in progress), draft-manning-multicast- dns-01.txt, October 1998. [4] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, March 1997. [5] Braden, R., "Requirements for Internet Hosts -- Application and Support", RFC 1123, October 1989. 6. Security Considerations The option described in this draft may be used in situations where DHCP is authenticated or unauthenticated. In situations where authenticated DHCP is not used, it is possible for a rogue DHCP server to respond to the DHCP client with an inappropriate mDNS configuration option. For example, the rogue DHCP server could specify an mDNS configuration option of 0x1. This would cause the host to become both an mDNS querier and listener (B-node). Were hosts to be widely configured this way, this could result in propagation of mDNS queries throughout the enterprise. Aboba, Esibov & Thaler Standards Track [Page 4] INTERNET-DRAFT Multicast DNS Configuration Option 20 February 2000 7. IANA Considerations This draft does not create any new number spaces for IANA administration. 8. Acknowledgements This draft has been enriched by comments from Rick Lamb of Microsoft. 9. Authors' Addresses Bernard Aboba Microsoft Corporation One Microsoft Way Redmond, WA 98052 Phone: +1 (425) 936-6605 EMail: bernarda@microsoft.com Dave Thaler Microsoft Corporation One Microsoft Way Redmond, WA 98052 Phone: +1 (425) 703-8835 EMail: dthaler@microsoft.com Levon Esibov Microsoft Corporation One Microsoft Way Redmond, WA 98052 Phone: +1 (425) 936-2464 EMail: levone@microsoft.com 10. Full Copyright Statement Copyright (C) The Internet Society (2000). All Rights Reserved. This document and translations of it may be copied and furnished to others, and derivative works that comment on or otherwise explain it or assist in its implmentation may be prepared, copied, published and distributed, in whole or in part, without restriction of any kind, provided that the above copyright notice and this paragraph are included on all such copies and derivative works. However, this document itself may not be modified in any way, such as by removing the copyright notice or references to the Internet Society or other Internet organizations, except as needed for the purpose of developing Internet standards in Aboba, Esibov & Thaler Standards Track [Page 5] INTERNET-DRAFT Multicast DNS Configuration Option 20 February 2000 which case the procedures for copyrights defined in the Internet Standards process must be followed, or as required to translate it into languages other than English. The limited permissions granted above are perpetual and will not be revoked by the Internet Society or its successors or assigns. This document and the information contained herein is provided on an "AS IS" basis and THE INTERNET SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIMS ALL WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE." 11. Expiration Date This memo is filed as , and expires September 1, 2000. Aboba, Esibov & Thaler Standards Track [Page 6]