Why one shared file stopped working

HOSTS.TXT was a plain-text directory matching computer names to their numerical network addresses. A central administrator maintained it, and other computers fetched copies. That arrangement worked while the network was small: everyone could consult roughly the same list, and a person could add an entry when a new machine appeared.

Growth made the shared list a bottleneck. Each change had to reach every copy, and computers could be left with outdated information. The problem was not just the size of the file; it was coordinating updates across a network that was expanding and changing. A directory that depended on one person and repeated manual distribution could not keep up indefinitely.

DNS divided the directory into parts

Paul Mockapetris designed the Domain Name System, or DNS, in 1983 to replace that centralized process with a distributed one. Instead of asking every computer to download one master list, DNS divides names into domains and assigns responsibility for each part to particular servers. The owners of a domain can update its records without requiring a single administrator to rewrite and circulate a directory for the entire network.

When someone enters a name such as a website’s domain, the computer asks a resolver—a service that looks up the answer on its behalf. If the resolver does not already have a usable answer, it follows referrals through DNS servers until it reaches one responsible for that domain. That server can return the numerical address associated with the name. Resolvers also keep answers temporarily, a practice called caching, so repeated requests do not have to retrace the whole lookup.

A name can stay steady while its destination changes

This structure makes internet naming manageable without requiring every user to know numerical addresses. It also separates a familiar name from the machines currently serving it: a domain’s records can be changed as services move or infrastructure changes, while people continue typing the same name.

DNS did not eliminate human work or make the internet self-organizing; people still register names and maintain the records for domains. Its crucial change was to distribute that responsibility. Instead of one shared file becoming harder to update with every new computer, the network gained a way to delegate updates to the people responsible for each piece.