Toda interface de rede ligada a uma rede TCP/IP é identificada por um endereço IP formado por 32 bits. Um nome pode ser atribuído a qualquer dispositivo que possua um endereço IP. A atribuição de nomes aos endereços se deve ao fato de que é muito mais fácil uma pessoa se lembrar de nomes do que de números. O software de rede entretanto trabalha apenas com os números.
Na maior parte dos casos, os nomes e números podem ser usados indistintamente. Desta forma, os comandos telnet wuarchive.wustl.edu e telnet 128.252.135.4 conduzem ao mesmo computador.
Quando se utilizam nomes é necessário que exista um serviço que efetue a conversão deste nome em um número IP para que se estabeleça a conexão.
A tradução entre nomes (mais facilmente memorizáveis) e números passou por diversos estágios durante o desenvolvimento da Internet e das redes que a precederam.Inicialmente existia uma tabela, chamada hosts.txt, mantida pelo DDN-NIC e que era distribuída a todos os computadores da Internet. Com o crescimento da Internet este esquema se tornou inviável, exigindo a criação de um serviço mais eficiente para a resolução de nomes. A tabela hosts.txt foi substituída por um banco de dados distribuído denominado Domain Name Service concebido por Paul Mockapetris. As especificações encontram-se descritas na RFC 1034.
O DNS, ou Domain Name Service, foi desenvolvido para oferecer uma alternativa à resolução de nomes através do arquivo hosts.txt que pudesse garantir seu funcionamento eficiente mesmo em face do crescimento explosivo por que vem passando a Internet, permitindo ao mesmo tempo que informações sobre computadores novos sejam rapidamente disseminadas conforme a necessidade.
O DNS é um sistema hierárquico distribuído concebido para realizar a tradução de nomes para números necessária ao estabelecimento de conexões entre computadores ligados à Internet.
Sob este sistema não existe nenhum repositório central que contenha informações sobre todos os computadores ligados à Internet.
Esta informação é distribuída por milhares de computadores, denominados servidores de nomes, ou name servers. Estes servidores de nomes encontram-se organizados de maneira similar ao sistema de arquivos do Unix.
O DNS possui um domínio raiz, localizado no topo da hierarquia de domínios, que é servido por um grupo de servidores denominados root name servers .