Seu computador possui uma lista de servidores DNS que podem ser consultados para obter mais informações. Em um sistema unix ou linux, isso é armazenado em /etc/resolv.conf. No Windows, é configurável nas suas configurações de rede. Freqüentemente, seu servidor DNS será fornecido pelo servidor DHCP, possivelmente junto com outras configurações, como domínio padrão, servidores proxy etc.
A localização do servidor DNS que você usa não importa muito. Desde que o seu computador tenha um endereço IP e uma rota padrão que funcione (por exemplo, você pode pingo servidor DNS), você poderá fazer consultas DNS.
Os servidores DNS não precisam conhecer "todos" os domínios. Eles só precisam saber quem é "autoritário", o que ele aprende em um conjunto de servidores "raiz". Cada servidor DNS possui uma lista de servidores "raiz" e essa lista é alterada com pouca frequência. Em um dos meus servidores DNS, há 18 servidores raiz configurados, e essa configuração ocorreu quando eu instalei o servidor DNS, há dois anos. Se a lista de servidores raiz mudou desde então, é possível acessar um número suficiente deles que eu não tenho percebi isso.
Meu servidor DNS, quando solicitado a resolver um domínio que não conhece, faz uma consulta a um servidor raiz para descobrir qual outro servidor DNS é autoritário para o domínio. A resposta obtida pode conter registros "NS" adicionais e ser marcada como não autoritativa; nesse caso, meu servidor DNS sabe que precisa "seguir a cadeia" e fazer uma nova consulta para um novo servidor. Eventualmente, ele encontra um servidor DNS que fornece informações autorizadas e podem ser feitas consultas que não são apenas registros NS. A (endereço) e MX (troca de correio) são obviamente os dois mais comuns.
Cada TLD (domínio de nível superior), como COM, NET, ORG, CA, UK, etc, mantém seu próprio registro de subdomínios. (Um "subdomínio" é qualquer domínio dentro de outro domínio; portanto, "example.com" é um subdomínio dentro de "com" e "com" é mesmo um subdomínio dentro de ".", A "raiz".) As regras para cada registro aplicam-se apenas ao TLD que administra - ou seja, há um conjunto de critérios completamente diferente para cada TLD com código de país, e os TLDs "genéricos" são administrados por diferentes organizações com políticas diferentes. Mas todos eles mantêm servidores DNS para seu TLD, que, a partir de uma linha de comando, você pode ver usando as ferramentas básicas de consulta DNS:
[ghoti@pc ~]$ host -t ns ca.
ca name server c.ca-servers.ca.
ca name server e.ca-servers.ca.
ca name server z.ca-servers.ca.
ca name server a.ca-servers.ca.
ca name server f.ca-servers.ca.
ca name server sns-pb.isc.org.
ca name server j.ca-servers.ca.
ca name server k.ca-servers.ca.
ca name server tld.isc-sns.net.
ca name server l.ca-servers.ca.
[ghoti@pc ~]$ host -t ns info
info name server c0.info.afilias-nst.info.
info name server d0.info.afilias-nst.org.
info name server b2.info.afilias-nst.org.
info name server b0.info.afilias-nst.org.
info name server a2.info.afilias-nst.info.
info name server a0.info.afilias-nst.info.
[ghoti@pc ~]$
Quando você compra um domínio de um registrador (dos quais existem muitos), esse registrador envia informações sobre o domínio ao registro (dos quais existe apenas um por TLD). É responsabilidade de cada registro manter a lista de domínios registrados em seu TLD e manter os servidores DNS que fornecem essas informações a outros servidores.