This page explains how DNS uses, resolves and maps names. Study the DNS namespace and make wise decisions when you create names for domain, sub-domain, servers and hosts.
Introduction to DNS Names
The purpose of DNS is to provide a connection when we type a name. Now that name could refer to a server, a host, a web site, or a UNC path. Always remember that computers prefer to use an IP address and that the role of DNS is a database of host records. It's an exaggeration to say that DNS provides the connect, but it does supply the answer to the name to IP address mapping.
Let us start with a simple network where DNS maps the HostName to IP address. DNS Servers are designed to answer queries, for example, where is BigServer? Back comes the reply BigServer - 10.10.1.1.
On the internet there is an extra layer because we prefer to use a FQDN (Fully Qualified Domain Name) such as www.computerperformance.co.uk/. An organization called InterNic provide and control the extra mapping layer. In this example we want to access the root web page at www.computerperformance.co.uk/ We will look at the detail later, but for now back comes the reply that NameServer.SomeISP.com has a record for the web site we want.
http://www.computerperformance.co.uk/ NameServer.SomeISP.com
NameServer.SomeISPCom http://www.computerperformance.co.uk/ 64.239.144.69
NameServer has a record for the Computer Performance web at IP address 64.239.144.69. Try an experiment with 'Trace Route' Tracert computerperformance.co.uk.
Hosts, Hosts Files and HostNames
When ever you have trouble understand DNS, return to the basics. New features are supposed to make DNS easier and faster. What they don't tell you is that each extra setting makes it more scaleable and less error prone for the DNS server, but harder for you and I to understand. The answer is if you do get into a tangle, review the basics and test with ping.
In modern DNS, Hosts means a simple (A) record that maps a machine name (HostName) to an IP address. If you like to match theory to practical, then type hostname at the command prompt. In addition, you can check the FQDN found at System Icon, Computer Name, Change, More... You will need this information to configure this setting when installing Active Directory.
Hosts is also the name of a file found in the %systemroot%System32\drivers\etc folder. Can you believe that once upon a time (1983) this was how everyone mapped hostnames and IP addresses? Then in 1984 Paul Mockapetris invented a hierarchical, distributed system and called it DNS. The link between this history lesson and basics, is that when all else fails edit that hosts file in the \drivers\etc folder and add the hostname and IP address to make your connection work.
DNS Namespace
I think that Namespace is a pretentious word, however it is shorter than, hierarchical structure of names that join up to form a FQDN. Having been rude about the moniker, I love the concept and design behind the word Namespace.
Approach the DNS namespace as if admiring a pyramid. At the top is the '.', dot or 'null'. So, if you see such a dot or period in your DNS Server Forward Lookup Zone then it's not a mistake, you have found the top level of your DNS system.
Levels of Namespace
* 1 Root .'
* 7 Top Level Domains (TLD): com, org, net, mil, edu, gov, co.uk
* Lots of Second level domains. This is the part of the namespace that we recognise e.g. microsoft as in microsoft.com.
* Incidentally, one of my hobby-horses and frustrations is that those 7 Top Level Domains were invented, almost over-night, by just one person. (As were DNS and IP 4). Whereas, committees have taken about ten years to thrash out IP 6 and more TLD for example .commerce, .info and .biz.
* Subdomains are optional. They are not needed by small companies or beginners. However one day you may consider an extra level of domains for example, research.yourdomain.com. The other use of subdomains is where you want a different domain names for your Active Directory, web and email address. For example, leave your email, internet domain as yourdoman.com and have ad.yourdomain.com for your Active Directory domain.
* Hostname for example, web.microsoft.com or bigserver.yourdomain.com. This level is sometimes called the leaf, or referred to as has holding DNS leaf objects.
Take as an example a query for the FQDN web.microsoft.com. On the internet all attempts to answer queries start at the '.' and soon percolate down to the next level, where we find the familiar .com, .net .org .co.uk extensions. What happens next is that the .com server knows where to find Microsoft.com, and of course Microsoft's own DNS knows the whereabouts of web.microsoft.com.
DNS Name Server (NS).
In DNS, Name Server has several shades of meaning. NS is a particular type of DNS record, along side Host (A), MX and CNAME. The most important nuance of Name Server is that here is a server that holds copies of these DNS resource records. Moreover, Name Servers know about other Name servers. In fact name servers have a whole world of their own where they replicate records and forward queries.
Another important DNS and Name Server concept is that of Authority. Perhaps ownership best describes this usage of the word Authority. Servers that are authoritative are responsible for answering queries about their Host, MX and other records. Name Servers also register the records and are responsible for DNS house keeping. Always investigate the Start of Authority (SOA) record. Once you find the SOA, you can see which server is the Primary or ultimate source of all records for that domain.
Rules of DNS naming
If you are planning a new domain, what characters can you use in DNS? The answer is letters A-Z, lower case a-z, numbers and also the hyphen(-). To digress, my wife had a stroke of genius in having a hyphen in her domain name fashion-era.com. I wish that I had chosen computer-performance.co.uk. So if you are registering a domain a hyphen gives you more naming possibilities.
The Underscore (_) is a reserved character used by Microsoft DNS for its Active Directory services. Examples of _SRV records include, _gc (Global Catalog) and _dc (Domain Controller).
0 comments:
Post a Comment