DNS Resource Record
A DNS Resource Record is a data record in a DNS system.
- Context:
- It can (typically) have a DNS Resource Record Type, such as a DNS Address Record[1].
- See: TTL Value, TCP-IP, AWS Route 53.
References
2016
The Domain Name System specifies a set of various types of resource records (RRs), which are the basic information elements of the domain name system. Each record has a type (name and number), an expiration time (time to live), a class, and type-specific data. Resource records of the same type are described as a resource record set (RRset). The order of resource records in a set, which is returned by a resolver to an application, is undefined, but often servers implement round-robin ordering to achieve load balancing. The Domain Name System Security Extensions (DNSSEC), however, work on the complete set of resource record in canonical order.
When sent over an Internet Protocol network, all records use the common format specified in RFC 1035:[1]
Field | Description | Length (octets) |
---|---|---|
NAME | Name of the node to which this record pertains | Variable |
TYPE | Type of RR in numeric form (e.g., 15 for MX RRs) | 2 |
CLASS | Class code | 2 |
TTL | Count of seconds that the RR stays valid (The maximum is 231−1, which is about 68 years) | 4 |
RDLENGTH | Length of RDATA field | 2 |
RDATA | Additional RR-specific data | Variable, as per RDLENGTH |
NAME is the fully qualified domain name of the node in the tree. On the wire, the name may be shortened using label compression where ends of domain names mentioned earlier in the packet can be substituted for the end of the current domain name. A free standing @ is used to denote the current origin.
TYPE is the record type. It indicates the format of the data and it gives a hint of its intended use. For example, the A record is used to translate from a domain name to an IPv4 address, the NS record lists which name servers can answer lookups on a DNS zone, and the MX record specifies the mail server used to handle mail for a domain specified in an e-mail address.
RDATA is data of type-specific relevance, such as the IP address for address records, or the priority and hostname for MX records. Well known record types may use label compression in the RDATA field, but "unknown" record types must not (RFC 3597).
The CLASS of a record is set to IN (for Internet) for common DNS records involving Internet hostnames, servers, or IP addresses. In addition, the classes Chaos (CH) and Hesiod (HS) exist.[2] Each class is an independent name space with potentially different delegations of DNS zones.
In addition to resource records defined in a zone file, the domain name system also defines several request types that are used only in communication with other DNS nodes (on the wire), such as when performing zone transfers (AXFR/IXFR) or for EDNS (OPT).