Qual é a resposta correta para um servidor DNS quando um domínio não existe?

5

Recentemente, observei um comportamento "estranho" do servidor DNS do meu provedor ao resolver um domínio inexistente. Isso está me causando alguns problemas e eu queria saber se esses servidores DNS estão realmente em conformidade com o padrão.

Começou com a adição do recurso que, se você solicitar um domínio incorreto, direciona você para uma página de pesquisa que eles executam. Eu acho que isso é útil para algumas pessoas quando navega na web, mas ele torce as coisas para outras aplicações, especialmente se o servidor de pesquisa tem algumas outras portas abertas, como SMTP.

Para contornar isso, alterei as preferências do meu provedor para desativar esse recurso. Agora o DNS do meu ISP faz algo muito estranho. Quando um domínio não pode ser encontrado, ele retorna MEU próprio endereço IP como o nome A para esse domínio inexistente. Então, agora, se eu clicar em um link que não existe mais, ele me leva para minha própria página inicial (percorrer a mesma conexão com a Internet).

Estou tentando entender por que ser transferido para meu próprio endereço IP seria útil. Mais ao ponto, este é o padrão ou eles estão quebrando o padrão para algum propósito mais conhecido por eles mesmos?

    
por couling 26.03.2012 / 23:28

4 respostas

9

Sim, seu ISP está quebrando o padrão, mas é uma ocorrência comum nos dias de hoje. Os servidores DNS do seu ISP devem estar retornando uma resposta NXDOMAIN , ou "Domínio inexistente".

Se eles não puderem fazer isso, eu procuraria usar servidores DNS externos, como o Google ou < href="https://www.opendns.com/"> OpenDNS ou executando seus próprios servidores internos de cache / resolução para seus clientes.

Uma observação sobre o OpenDNS, acredito que você tenha que se inscrever em uma conta comercial para desativar o redirecionamento NXDOMAIN.

    
por 26.03.2012 / 23:32
2

Não. Você deve obter o NXDOMAIN ( link ) quando um domínio não existir no servidor de DNS autoritativo. Um exemplo:

host foooo.serverfault.com
Host foooo.serverfault.com not found: 3(NXDOMAIN)

O Google retorna NXDOMAIN

 host foooo.serverfault.com 8.8.8.8
 Using domain server:
 Name: 8.8.8.8
 Address: 8.8.8.8#53
 Aliases: 

 Host foooo.serverfault.com not found: 3(NXDOMAIN)

Você já tentou usar seu próprio servidor DNS (servidor de DNS em cache do BIND)? A melhor maneira de rastrear esse problema é executar o comando dig ou usar melhor o comando tcpdump. O seguinte rastreará o caminho de delegação dos servidores de nomes raiz para verificar se você está obtendo dados corretos de seus próprios servidores de DNS autoritativos:

 dig +trace your.domain.com
    
por 26.03.2012 / 23:41
1

Não sei ao certo o que a RFC está a respeito disso. No entanto, o Windows DNS retorna um tempo limite.

> yagoo.mil
Server:  mylocaldc.com
Address:  172.27.27.10

DNS request timed out.
    timeout was 2 seconds.
DNS request timed out.
    timeout was 2 seconds.
*** Request to mylocaldc.com timed-out

No entanto, o Google retorna o nome do domínio de volta sem resposta.

> server 8.8.8.8
Default Server:  google-public-dns-a.google.com
Address:  8.8.8.8

> yagoo.mil
Server:  google-public-dns-a.google.com
Address:  8.8.8.8

Name:    yagoo.mil
    
por 26.03.2012 / 23:35
1

Isso é ... espera, o que?

Você realmente deve receber NXDOMAIN para qualquer domínio que não exista.

Os resultados de curingas em domínios que não existem são uma realidade nos dias de hoje - por mais lamentável que isso possa ser. Mas retornar o IP solicitante como um curinga ... isso não faz sentido. Eu também nunca vi o Google fazer algo assim.

Você tem a saída de dig ou nslookup que pode compartilhar para esclarecer o que está acontecendo?

Alternativamente, você está disposto a compartilhar o IP do servidor DNS do seu ISP, ou talvez o seu nome? Eu adoraria ver isso em ação, porque não faz sentido algum. Não consigo pensar em nenhum motivo pelo qual o comportamento que você está descrevendo existirá.

    
por 26.03.2012 / 23:36