Generated by DeepSeek V3.2| RFC 1035 | |
|---|---|
| Title | Domain Names - Implementation and Specification |
| Number | 1035 |
| Author | Paul Mockapetris |
| Pubdate | November 1987 |
| Status | Internet Standard |
| Series | STD 13 |
| Updates | RFC 882, RFC 883 |
| Obsoletes | RFC 973 |
RFC 1035. Published in November 1987, this document is a core Internet Standard (STD 13) that defines the implementation and specification for the Domain Name System (DNS). Authored by Paul Mockapetris, it obsoletes RFC 973 and updates the earlier theoretical descriptions in RFC 882 and RFC 883. This Request for Comments provides the definitive technical blueprint for the operational DNS, detailing message formats, resource record types, and protocol behaviors that underpin global Internet navigation.
RFC 1035 was created to provide a complete and implementable specification for the Domain Name System, moving the protocol from a theoretical framework to a working Internet service. Its primary purpose was to standardize the on-the-wire format for DNS messages and the interpretation of resource records, ensuring interoperability between diverse software implementations from vendors like IBM and DEC. The document aimed to resolve ambiguities present in earlier RFCs, solidifying DNS as the scalable, distributed database essential for mapping human-readable names to IP addresses. This work was critical for the ARPANET's transition to a more robust, global network infrastructure managed by organizations like the Defense Advanced Research Projects Agency.
The specification within this document formalizes the DNS as a hierarchical, distributed database. It defines key components such as domain names, name servers, and resolvers, establishing the tree-structured name space delegated by entities like the Internet Assigned Numbers Authority. The protocol operates primarily over User Datagram Protocol (UDP) on port 53, with provisions for Transmission Control Protocol (TCP) for larger transactions. It introduces the concepts of zone files and zone transfers, enabling the distribution of authority from root servers operated by organizations like the University of Southern California down to individual administrative domains.
RFC 1035 meticulously defines a uniform message format for all DNS communications, divided into five main sections. The header section contains control fields like QR bit and opcode to identify queries or responses from authoritative servers. The question section carries the query for a specific domain name and QTYPE. The answer, authority, and additional sections contain resource records, with the authority section listing name server records such as those for the .com top-level domain. This structured format is essential for parsers in systems like Berkeley Software Distribution (BSD) and Microsoft Windows.
A central contribution of the document is the detailed definition of multiple resource record (RR) types, each with a standardized data format. Core RRs include the A record for mapping a name to an IPv4 address, the CNAME record for aliases, and the MX record for mail exchange server routing critical to SMTP. It also specifies the NS record for delegating to other name servers, the PTR record for reverse lookups within the in-addr.arpa domain, and the SOA record containing administrative zone parameters. These definitions provided the essential data structures for BIND, the dominant DNS software developed at the University of California, Berkeley.
The protocol section outlines the behaviors of DNS clients (stub resolvers) and servers. It describes standard query procedures, the handling of response codes like SERVFAIL, and the critical recursion process where a server queries other servers like those at the Network Information Center on behalf of a client. Mechanisms for caching to improve performance and guidelines for retransmission algorithms using timers are specified. The document also covers the use of TCP for tasks requiring reliable delivery, such as zone transfers between primary and secondary servers, a feature heavily used by Internet service providers.
The clear specifications in RFC 1035 led directly to widespread, interoperable implementations, most notably the BIND software suite, which became the de facto standard for Unix systems. Its release catalyzed the global deployment of DNS, enabling the scalable growth of the Internet beyond the ARPANET and supporting the eventual commercialization led by entities like MCI Communications. The protocol's resilience and distributed design, as codified in this document, have allowed it to scale for decades, forming an indispensable layer of the Internet protocol suite alongside TCP/IP. Its principles continue to influence modern extensions developed by the Internet Engineering Task Force. Category:Internet Standards Category:Domain Name System Category:1987 documents