How Website Hosting Works
The concepts behind the Internet are quite simple, and the Internet is amazingly flexible. However, the implementation of this flexibility results in a certain degree of complexity. This document will attempt to explain how hosting a web site works.
Request Routing and DNS
Before a web page can be served, your computer needs to know where to get it. www.yourdomain.com is not the location of the web site, it is an alias, or a nickname to the web site. The first thing your computer must do is find out where to get the web page. This is described here.
When a web browser requests a web page like www.yourdomain.com, it asks your computer's preferred DNS server if it knows the IP address of www.yourdomain.com. This is where the web site is hosted. The name of your preferred DNS server is specified in your computer's TCP/IP settings.
If your computer's preferred DNS server does not know, it will look up the domain name in a "whois" database to find out what its primary DNS server is. It will then ask the the primary DNS for the address of the site. (The preferred DNS server will save, or cache, the information for one day so it doesn’t have to keep looking it up if more than one request is made).
Finally, the preferred DNS will return the information to the browser.
Once the browser knows the IP address of the server, it makes the request directly to the web server for the page, and the page is sent back.
The functions described above represent where information is stored and how it is accessed. The actual mechanism that is responsible for doing all this work is called TCP/IP. It is transparent to the user and to the browser, and it operates the same way on all computers.
What this means to web hosting
When you register a domain name, you provide, in addition to your address and company name, the name of the primary and secondary DNS server. The registrar will then make sure that the whois database is always kept up-to-date.
The next piece is to make sure the primary and secondary DNS servers have the correct information. A "DNS Zone File" is maintained on the DNS server that maps parts of the domain name to IP addresses. For example, it may point www.yourdomain.com to your web server, mail.yourdomain.com to your mail server, etc.
The third piece is to make sure the web server is prepared to answer requests to your domain name. This means configuring the web server properly.
That's basically it. There is domain name registration, DNS hosting, and web hosting. All three pieces are required if you want your web site accessible through a domain name like "www.yourdomain.com". FieldCo provides all three of these services individually or together.
Frequently Asked Questions
Q: If I know the IP address of the web server, can I just put that in my browser and bypass all the DNS nonsense?
A: The answer is yes, and the fact that you are asking that question implies that you understand how this works, so that's great. However there is a catch. Some web servers are configured in such a way that they require a domain name to be able to service a request, and an IP address is not sufficient. So while you will be accessing the web server, it may not give you back your web page as expected. It is always best to use a domain name.
Q: Why bother with this DNS business - why can't the registrar simply maintain the IP address of the web server?
A: No. The Internet was designed this way for flexibility. The registrar points the domain name to the DNS server. So the DNS server gets all requests for yourdomain.com. The DNS server may direct requests for www.yourdomain.com to a dedicated web server, and requests for mail.yourdomain.com to a mail server, etc. The extra layer of abstraction is required for this flexibility. In addition, it allows companies to maintain thier own zone file instead of having to bother the registrar about this all the time.
Glossary
- DNS Server
- Domain Name Server. This is a computer, like a web server, that exists on the Internet. These servers are run by internet service providers and are designed to talk to each other to return information on where the servers on the internet are located.
- Web Server
- A server on the internet that is designed to serve web pages. The web pages are served directly from the web server. Other types of servers include DNS servers, and mail servers.