Windows uses a HOSTS (located in
%systemdrive%/windows/system32/drivers/etc) file to maintain a personal
list of web addresses. Any time a request is made for a URL, the HOSTS
file will be checked first. If a corresponding address is found you will
be directed to that IP without first consulting a DNS Server. The
original intent of this file was to define where sites exist; we will
use it in this context to define where they don’t exist. Lets first look
at a HOSTS file entry
127.0.0.1 localhost
This is the loopback address for your machine for those cases where an
application needs to reference the local machine by IP address- the
loopback address will always be valid. This entry should never be
changed.
Now lets add an entry to block
127.0.0.1
www.yahoo.com
We are telling our local machine that Yahoo actually exists on the local machine. Any request for
www.yahoo.com
will be directed to the local machine and therefore effectively
blocked. You could also use the IP of another website if you wanted to
be creative.
Let’s take a closer look at a URL
http://www.yahoo.com
- http://
defines the transfer protocol in this case Hyper Text Transport
Protocol; this is the standard for viewing websites. Another common
protocol is ftp:// for file transfer.
- www is the host
- yahoo.com is the domain
- .com is further classified as the TLD (Top Level Domain)
A HOSTS file entry will disregard the transfer protocol so it isn’t
needed. However, the host does play an important role. A webmaster may
choose to define a host for his/her website. “WWW” has become the
universal standard for the default host. It is just as common to define a
site with no host as well. This means that as far as DNS goes
www.yahoo.com
& yahoo.com are two totally different sites, even though they
resolve to the same place. Because of this to effectively block the
site, you must also block all hosts. This would usually mean:
127.0.0.1 yahoo.com
127.0.0.1
www.yahoo.com