The hosts file
is a computer file
used to store information on where to find a node
on a computer network
. This file maps hostnames
to IP addresses
. The hosts file
is used as a supplement to (or instead of) the domain name system
on networks of varying sizes. Unlike DNS, the hosts file is under the control of the local computer's administrator.
(predecessor to the Internet
) had no domain name system for giving network nodes
their own addresses. Because there was no centralized system for this purpose, each network node contained its own “map” of the network nodes that it needed to know about, and assigned them names that were memorable to the user. There was no system for ensuring that all systems on a network were called the same thing, nor was there a way to read some other user’s hosts file
to automatically obtain their copy.
The small size of the ARPANET permitted hosts files to be used with some convenience for some time. Network nodes typically had one address, and could have potentially many names. As individual TCP/IP computer networks started becoming popular, however, the hosts file became a large burden on system administrators — networks and network nodes were being added all the time — making maintenance of the hosts file a task which grew significantly.
Location and default content
The host file is located in different locations in different operating systems and even in different Windows versions:
- Windows NT/2000/XP/2003/Vista:
%SystemRoot%system32driversetc is the default location, which may be changed. The actual directory is determined by the Registry key
- Windows 95/98/Me:
- Linux and other Unix-like operating systems (including iPhone OS):
- Mac OS 9 and earlier: System Folder: Preferences or System folder (format of the file may vary from Windows and Linux counterparts)
- Mac OS X:
/private/etc (uses BSD-style Hosts file)
- OS/2 and eComStation:
- Symbian 1st/2nd edition phones:
- Symbian 3rd edition phones:
C:private10000882hosts, only accessible with file browsers with AllFiles capability, most are not.
Default content on Windows operating systems
In Windows, the default hosts file is often blank
or it contains (inactive) comment lines followed by IPv4
An example can be found at http://vlaurie.com/computers2/Articles/hosts.htm.
Other uses for the hosts file
The hosts file has alternate uses, including filtering online advertising
(ads) by having entries for known ad servers
redirect to machines without the advertising
on them or more typically by redirecting references to ad servers to the local address 127.0.0.1
. This can save network bandwidth, as well, by eliminating a request to the DNS
server normally used for obtaining address information and not downloading the advertisements. The user's experience may be further enhanced by running a minimal web server locally that only returns a blank page for every request
In this way the ads from the web pages literally disappear without error. However, if the hosts file is to be used for this purpose, it must be kept up to date with lists of Internet servers known to host such content. On Windows machines, the "DNS Client" service
may need to be stopped in order for changes to the hosts file to have effect.
Blocking ads in this way can result in quicker browser operation and performance improvement for several reasons. The first reason is that rather than the browser having to contact a DNS server in order to resolve multiple IP addresses, it quickly parses a small text file (the HOSTS file) located locally on a computer. Second, when the HOSTS file returns an invalid or local IP address (for example 0.0.0.0) it is not able to load the requested ad which saves time and bandwidth. For example, adding an entry to the HOSTS file such as "0.0.0.0 www.doubleclick.net" would mean that requests for ads from the ad company DoubleClick would be forwarded to an invalid IP address (0.0.0.0) and never be loaded. It is quicker to load nothing rather than download an ad image from the Internet.
This phenomenon is discussed in more detail on the well-known podcast "Security Now" with Steve Gibson available at http://www.grc.com/securitynow.htm under episode #45 - The Hosts File.
Another solution is to block browser requests for the ads in the first place. This can be done through browser based plugins such as "No Script" and "Adblock" for Firefox. Another solution would be to block the ad addresses via a proxy or firewall.
Another use of the host file is to block known dubious or criminal domains and servers (with spyware and other malware). This has the same risks as hosts blocking ads, but generally requires fewer addresses in the hosts file and therefore would have a smaller impact on the system.
A useful and time-saving tip for web site programmers, intranet developers and IT managers is to enable non-standard TLDs on a LAN such as example.local (for accessing Example Company's Intranet) or sample.new (for a new version of the Sample.com website during testing).
Malicious use of redirection
The hosts file can also be "hijacked," or used for malicious purposes. For example, adware
, computer viruses
, trojan horses
, or other malware
can edit the hosts file to redirect traffic from a "safe" site (such as Google or Wikipedia
) to sites hosting content that may be offensive or intrusive to the user or the user’s computer system. For example, a trojan (Qhosts) redirected traffic from search engines such as Google
to a site specified by the author of the trojan horse Mydoom.B
(a malware program) blocked users from visiting sites regarding computer security
and antivirus software
, which also affected the Windows Update
References and footnotes
Custom hosts files
Applications to Manage Hosts Files