HOME

TheInfoList



OR:

A Canonical Name (CNAME) record is a type of resource record in the
Domain Name System The Domain Name System (DNS) is a hierarchical and distributed name service that provides a naming system for computers, services, and other resources on the Internet or other Internet Protocol (IP) networks. It associates various information ...
(DNS) that maps one domain name (an alias) to another (the canonical name). This can prove convenient when running multiple services (like an FTP server ''and'' a
web server A web server is computer software and underlying Computer hardware, hardware that accepts requests via Hypertext Transfer Protocol, HTTP (the network protocol created to distribute web content) or its secure variant HTTPS. A user agent, co ...
, each running on different ports) from a single
IP address An Internet Protocol address (IP address) is a numerical label such as that is assigned to a device connected to a computer network that uses the Internet Protocol for communication. IP addresses serve two main functions: network interface i ...
. One can, for example, use CNAME records to point ''ftp.example.com'' and ''www.example.com'' to the DNS entry for ''example.com'', which in turn has an A record which points to the IP address. Then, if the IP address ever changes, one only has to record the change in one place within the network: in the DNS A record for ''example.com''. CNAME records must always point to another domain name, never directly to an IP address.


Details

DNS CNAME records are specified in and clarified in Section 10 of . CNAME records are handled specially in the domain name system and have several restrictions on their use. When a DNS resolver encounters a CNAME record while looking for a regular resource record, it will restart the query using the canonical name instead of the original name. However, if the resolver is specifically told to look for CNAME records, the canonical name (right-hand side) is returned, rather than restarting the query. The canonical name that a CNAME record points to can be anywhere in the DNS, whether local or on a remote server in a different
DNS zone A DNS zone is a specific portion of the DNS namespace in the Domain Name System (DNS), which a specific organization or administrator manages. A DNS zone is an administrative space allowing more granular control of the DNS components, such as ...
. For example, consider a DNS zone as follows: When an A record lookup for ''bar.
example.com The domain names example.com, example.net, example.org, and example.edu are second-level domain names in the Domain Name System of the Internet. They are reserved by the Internet Assigned Numbers Authority (IANA) at the direction of the Inter ...
'' is carried out, the resolver will see a CNAME record and restart the lookup for ''foo.example.com'' and will then return 192.0.2.23.


Possible confusion

With a CNAME record, one can point a name such as "''bar.example.com''" to "''foo.example.com''". Because of this, during casual discussion, the "''bar.example.com.''" (left-hand) side of a DNS entry can be incorrectly identified as "the CNAME" or "a CNAME". However, this is inaccurate. The canonical (true) name of "''bar.example.com''" is "''foo.example.com''". Because CNAME stands for Canonical Name, the right-hand side is the ''actual'' "CNAME"; on the same side as the address "A". This confusion is specifically mentioned in RFC 2181, "Clarifications to the DNS Specification". The left-hand label is an alias for the right-hand side (the RDATA portion), which ''is'' (or should be) a canonical name. In other words, consider the following CNAME record: This may be read as saying that "''bar.example.com''" is an alias for the canonical name (CNAME) "''foo.example.com''". A client will request "''bar.example.com''" and the answer will be "''foo.example.com''".


Restrictions


DNAME record

A DNAME record or Delegation Name record is defined by (original RFC 2672 is now obsolete). The DNAME record provides redirection (alias) for a subtree of the domain name tree in the DNS. That is, all names that end with a particular suffix are redirected to another part of the DNS. In contrast, the CNAME record creates an alias for a single name and not its subdomains. Like the CNAME record, the DNS lookup will continue by retrying the lookup with the new name. The name server synthesizes a CNAME record to actually apply the DNAME record to the requested name—CNAMEs for every node on a subtree have the same effect as a DNAME for the entire subtree. For example, if there is a DNS zone as follows: An A record lookup for ''foo.example.com'' will return no data because a DNAME is not a CNAME and there is no A record directly at ''foo''. However, a lookup for ''xyzzy.foo.example.com'' will be DNAME mapped and return the A record for ''xyzzy.bar.example.com'', which is 192.0.2.24; if the DNAME record had been a CNAME record, this request would have returned name not found. Lastly, a request for ''foobar.foo.example.com'' would be DNAME mapped and return 192.0.2.25.


ANAME record

Several managed DNS platforms implement a non-standard ALIAS or ANAME record type. These pseudo records are managed by DNS administrators like CNAME records, but are published and resolved by (some) DNS clients like A records. ANAME records are typically configured to point to another domain, but when queried by a client, answer with an IP address. While ANAME record types were submitted for standardization, there are other non-conforming implementations, so they can do whatever the owner of the DNS platform chooses, including existing at the apex of a zone and existing for domains that receive mail. The main advantage of ANAME records over CNAME records is that they can be used on a zone apex, while a standards-following resolver will not treat domain names with CNAME records as a zone apex. Also, while a DNS client requires at least two queries to resolve a CNAME to an A record to an IP address, an ANAME will shift the second and subsequent query to the server. If the DNS server can resolve the A record and cache the requested IP address more efficiently and with less latency than its DNS clients can, then the DNS client can resolve the query faster. The ANAME record type was submitted as a draft standard to IETF. However, the latest draft document expired in January 2020 and has been superseded by a series of proposals, the most recent of which is the one for the SVCB and HTTPS record types.


See also

* List of DNS record types *
Internet Assigned Numbers Authority The Internet Assigned Numbers Authority (IANA) is a standards organization that oversees global IP address allocation, Autonomous system (Internet), autonomous system number allocation, DNS root zone, root zone management in the Domain Name Syste ...
*
ICANN The Internet Corporation for Assigned Names and Numbers (ICANN ) is a global multistakeholder group and nonprofit organization headquartered in the United States responsible for coordinating the maintenance and procedures of several dat ...


References


External links

* {{IETF RFC, 2219, link=no – Use of DNS Aliases for Network Services DNS record types