[GTER] Dúvida em operação DNS

Jorge Godoy godoy at g2ctech.com
Thu Nov 25 10:09:13 -02 2004


Alexandre Hautequest <hquest at onda.com.br> writes:

> OK. O cluster f.root-servers.net (ou .org) eh round-robin baseado em seu
> proprio DNS. Mas existe esta mesma distribuicao entre os diferentes
> root-servers? Por exemplo, consulto o servidor a.root-server, depois na
> proxima pesquisa, o b.root-server, depois c.root-server, etc, etc?

[root at wintermute ~]# host -vvv .
Trying "."
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 46142
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;.                              IN      A

;; AUTHORITY SECTION:
.                       10767   IN      SOA     A.ROOT-SERVERS.NET. NSTLD.VERISIGN-GRS.COM. 2004112401 1800 900 604800 86400

Received 92 bytes from 127.0.0.1#53 in 3 ms
[root at wintermute ~]# host -vvv a.root-servers.net
Trying "a.root-servers.net"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 38594
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 1

;; QUESTION SECTION:
;a.root-servers.net.            IN      A

;; ANSWER SECTION:
a.root-servers.net.     172775  IN      A       198.41.0.4

;; AUTHORITY SECTION:
root-servers.net.       172775  IN      NS      f.root-servers.net.
root-servers.net.       172775  IN      NS      j.root-servers.net.
root-servers.net.       172775  IN      NS      k.root-servers.net.
root-servers.net.       172775  IN      NS      a.root-servers.net.

;; ADDITIONAL SECTION:
j.root-servers.net.     172775  IN      A       192.58.128.30

Received 130 bytes from 127.0.0.1#53 in 6 ms
[root at wintermute ~]# host -vvv a.root-servers.net
Trying "a.root-servers.net"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 59479
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 1

;; QUESTION SECTION:
;a.root-servers.net.            IN      A

;; ANSWER SECTION:
a.root-servers.net.     172760  IN      A       198.41.0.4

;; AUTHORITY SECTION:
root-servers.net.       172760  IN      NS      a.root-servers.net.
root-servers.net.       172760  IN      NS      f.root-servers.net.
root-servers.net.       172760  IN      NS      j.root-servers.net.
root-servers.net.       172760  IN      NS      k.root-servers.net.

;; ADDITIONAL SECTION:
j.root-servers.net.     172760  IN      A       192.58.128.30

Received 130 bytes from 127.0.0.1#53 in 6 ms
[root at wintermute ~]#  


> Entao, "teoricamente", um (ou mais) dos "root-servers" eh o responsavel
> pelos dominios .br ?

Não.  Nenhum deles.  Todos eles sabem quem é responsável pelo ".br", mas
eles não têm as informações de nada aqui dentro. 

> Mas, por que os dominios tendem a apresentar problemas, por exemplo,
> demora na resolucao do nome, caso o primario pare, ao contrario dos
> escravos? Se todos tem o mesmo peso, isto nao deveria acontecer. Digo,
> caso um pare, o problema deveria ser o mesmo para todos.

Isso depende de qual máquina você pegou na pesquisa.

[root at wintermute ~]# host -vvv www.uol.com.br
Trying "www.uol.com.br"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56191
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;www.uol.com.br.                        IN      A

;; ANSWER SECTION:
www.uol.com.br.         297     IN      A       200.221.2.45

;; AUTHORITY SECTION:
uol.com.br.             3597    IN      NS      eliot.uol.com.br.
uol.com.br.             3597    IN      NS      borges.uol.com.br.

Received 89 bytes from 127.0.0.1#53 in 12 ms
[root at wintermute ~]# host -vvv www.uol.com.br
Trying "www.uol.com.br"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34106
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 0

;; QUESTION SECTION:
;www.uol.com.br.                        IN      A

;; ANSWER SECTION:
www.uol.com.br.         296     IN      A       200.221.2.45

;; AUTHORITY SECTION:
uol.com.br.             3596    IN      NS      borges.uol.com.br.
uol.com.br.             3596    IN      NS      eliot.uol.com.br.

Received 89 bytes from 127.0.0.1#53 in 4 ms
[root at wintermute ~]#  


Se eu fizer uma busca X, posso pegar as máquinas "eliot" ou "borges",
aleatoriamente.  Se a máquina que eu escolher estiver com problemas,
devo esperar um timeout e então repetir a pesquina na outra máquina.  Se
eu der sorte de pegar a máquina sem problemas, então tudo funcionará
bem. 

Repare que eu preciso de duas queries:

[root at wintermute ~]# host -vvv -t ns uol.com.br
Trying "uol.com.br"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 6614
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;uol.com.br.                    IN      NS

;; ANSWER SECTION:
uol.com.br.             3479    IN      NS      borges.uol.com.br.
uol.com.br.             3479    IN      NS      eliot.uol.com.br.

Received 69 bytes from 127.0.0.1#53 in 3 ms
[root at wintermute ~]# host -vvv -t a www.uol.com.br borges.uol.com.br
Trying "www.uol.com.br"
Using domain server:
Name: borges.uol.com.br
Address: 200.147.255.105#53
Aliases:

;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39920
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 2

;; QUESTION SECTION:
;www.uol.com.br.                        IN      A

;; ANSWER SECTION:
www.uol.com.br.         300     IN      A       200.221.2.45

;; AUTHORITY SECTION:
uol.com.br.             3600    IN      NS      eliot.uol.com.br.
uol.com.br.             3600    IN      NS      borges.uol.com.br.

;; ADDITIONAL SECTION:
eliot.uol.com.br.       3600    IN      A       200.221.11.98
borges.uol.com.br.      3600    IN      A       200.147.255.105

Received 121 bytes from 200.147.255.105#53 in 17 ms
[root at wintermute ~]# 

A primeira me diz quem é responsável pelo domínio "uol.com.br", a
segunda é uma interrogação para um dos servidores (posso escolher
qualquer um dos dois e aqui acho que é uma coisa que depende do
programa) do UOL qual é a máquina que responde por 'www.uol.com.br'.


Sds,
-- 
Godoy.      <godoy at g2ctech.com>

Consultoria e serviços em redes Linux, FreeBSD e Windows.
Desenvolvimento de software e projetos. Treinamentos.
Telefones: +55 (41) 8807-1545     /    +55 (41) 362-7020
Curitiba, Paraná - Brasil         http://www.g2ctech.com




More information about the gter mailing list