Take the 2-minute tour ×

What is Canonical Name in relation to Host Name, Domain Name? Are they all pointing to the same IP?

share|improve this question
add comment

2 Answers

In DNS, a hostname is a domain name that identifies a host computer (e.g. foo.example.com). The term hostname is also used to mean the name used for a computer without the domain suffix (foo).

Note that the above usage, as used by DNS administrators, is slightly different from more causal usage where example.com would be considered a domain but many people don't realise a fully qualified hostname is also technically a domain name (see RFCs).

In DNS there are many types of records:

  • "A" records associate a domain name with an address
  • "CNAME" records associate an alias (extra) domain name with a canonical domain name
    • multiple CNAME records can be used to associate several aliases with a single canonical domain name
  • "PTR" records are normally used to associate an IP-address with a canonical domain name.
  • etc

"Canonical" means "unique distinguished exemplar". A computer may have many aliases but should only have one canonical name.

From RFC1035

CNAME A <domain-name> which specifies the canonical or primary name for the owner. The owner name is an alias.

From RFC1034

Most of these systems have a notion that one of the equivalent set of names is the canonical or primary name and all others are aliases.

share|improve this answer
add comment

The host name is the real name the server has. A canonical name is a name that the host is known by, but that the host is not actually called.

A machine's host name could be "barkley.example.com", but because it runs the web and FTP services for the domain "example.com", it could have canonical names of "www.example.com" and "ftp.example.com".

share|improve this answer
so, canonical names are a subset of the single host name. Is it used for TCP protocol to direct the packets to a certain port(HTTP vs. FTP for example)? –  KMC Feb 28 '12 at 4:50
No. The name has nothing to do with which ports are available except where the server software itself restricts it (if even possible). –  Ignacio Vazquez-Abrams Feb 28 '12 at 4:53
since different canonical name points to the same IP, why do we need more names other than the domain name? –  KMC Feb 28 '12 at 5:18
For convenience and convention. Plus, it allows for moving services to a different host without having to change the name. –  Ignacio Vazquez-Abrams Feb 28 '12 at 5:20
But multiple canonical names can point to the same host with a single IP. I do not understand what you mean by "moving services to a different host without having to change the name"? –  KMC Feb 28 '12 at 5:34
show 2 more comments

Your Answer


