O domínio falso não resolve quando está off-line

1

Eu tenho uma noção frágil do DNS. No entanto, para instalar uma cópia de desenvolvimento local do Wordpress MU, eu precisava criar um domínio falso, que eu chamava de local.dev. Ele e todos os subdomínios simplesmente resolvem para 127.0.0.1. O Apache então direciona para a pasta correta.

Instalei o PowerDNS e consegui que ele funcionasse corretamente com um backend do MySQL. Eu não me sentia confortável, mas desde que funcionou, não fiz mais perguntas. O mais bizarro é que requer uma conexão de internet para resolver corretamente, e agora eu preciso usá-lo offline.

Se eu estiver off-line, o Chrome mostrará o erro:

Error 105 (net::ERR_NAME_NOT_RESOLVED): The server could not be found.

/ etc / hosts

127.0.0.1 localhost

/etc/resolv.conf

nameserver 127.0.0.1
nameserver 8.8.8.8
nameserver 8.8.8.4

Quando obtenho, obtenho a mesma coisa, online ou offline:

dig local.dev

; <<>> DiG 9.6.1-P2 <<>> local.dev
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 10635
;; flags: qr aa rd; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;local.dev.         IN  A

;; ANSWER SECTION:
local.dev.      120 IN  A   127.0.0.1

;; Query time: 0 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)
;; WHEN: Thu Apr 22 15:32:51 2010
;; MSG SIZE  rcvd: 43

nslookup não encontra local.dev em qualquer caso

nslookup local.dev
;; Got recursion not available from 127.0.0.1, trying next server
;; Got recursion not available from 127.0.0.1, trying next server
Server:     8.8.8.8
Address:    8.8.8.8#53

** server can't find local.dev: NXDOMAIN

Configuração do PowerDNS (comentários removidos):

allow-recursion=127.0.0.1
allow-recursion-override=on

Se precisar de mais informações, tenho prazer em fornecê-la.

    
por Fletcher Moore 21.04.2010 / 20:07

3 respostas

0

Parece que você precisa de uma entrada de hosts locais para seu servidor DNS ou seu PowerDNS está configurado para resolver endereços externamente antes de verificar seu banco de dados interno.

    
por 21.04.2010 / 22:29
1

Esqueça o PowerDNS. Basta adicionar as entradas necessárias ao seu arquivo de hosts. Algo parecido com isto:

127.0.0.1 local.dev

Se você tem um número pequeno de subdomínios, isso é muito mais simples do que tentar manter um serviço DNS.

    
por 21.04.2010 / 20:10
0

Eu só notei isso acontecendo para nós também. Eu tenho entradas de host para vários projetos (~ 30) em que estou trabalhando. E.G .:

127.0.0.1 localhost.example.com
127.0.0.1 localhost.mydomain.com
127.0.0.1 localhost.some-other-project.net

... e assim por diante.

Quando não estou conectado a uma rede, não consigo resolver esses nomes no Google Chrome. Funciona bem no Firefox e no Lynx. Eu posso pingar localhost.example.com muito bem. Parece que é o HostResolver do Google Chrome que está se recusando a usar o arquivo hosts.

Estou usando o Gogole Chrome 5.0.357.53 no Ubuntu 10.04. (Mas uma pesquisa rápida no Google sugere que isso está acontecendo no Windows também)

Siga estas etapas para se reproduzir (requerido servidor web em execução no host local e respondendo a "localhost.example.com"):

  • Adicionar entrada de arquivo de hosts para: 127.0.0.1 localhost.example.com
  • Desconecte a rede de formulários (desconecte cabos newtork, desligue o dispositivo sem fio | rádio, etc)
  • Abra o Google Chrome
  • Ir para: chrome: //net-internals/hostresolver.trace
  • Clique em "Ativar rastreamento"
  • Abra uma nova guia para localhost.example.com para ver este erro:

-

Error 105 (net::ERR_NAME_NOT_RESOLVED): The server could not be found.
  • Atualize a guia chrome: //net-internals/hostresolver.trace. Shows:

-

t=2085005:  "Received request r608 for {hostname='localhost.example.com', port=80, priority=1, speculative=1, address_family=0, allow_cached=1, referrer=''}"
t=2085005:  "Created job j325 for {hostname='localhost.example.com', address_family=1}"
t=2085005:  "Attached request r608 to job j325"
t=2085005:  "Starting job j325"
t=2085005:  "[resolver thread] Running job j325"
t=2085006:  "[resolver thread] Completed job j325"
t=2085006:  "Completing job j325 (took 0 milliseconds)"
t=2085006:  "Finished request r608 with error=-105"
t=2085207:  "Received request r609 for {hostname='clients1.google.com', port=80, priority=3, speculative=0, address_family=0, allow_cached=1, referrer=''}"
t=2085207:  "Created job j326 for {hostname='clients1.google.com', address_family=1}"
t=2085207:  "Attached request r609 to job j326"
t=2085207:  "Starting job j326"
t=2085207:  "[resolver thread] Running job j326"
t=2085207:  "[resolver thread] Completed job j326"
t=2085207:  "Completing job j326 (took 0 milliseconds)"
t=2085207:  "Finished request r609 with error=-105"
t=2085869:  "Received request r610 for {hostname='localhost.example.com', port=80, priority=0, speculative=0, address_family=0, allow_cached=1, referrer=''}"
t=2085869:  "Finished request r610 with error=-105"
t=2085889:  "Received request r611 for {hostname='linkhelp.clients.google.com', port=80, priority=2, speculative=0, address_family=0, allow_cached=1, referrer=''}"
t=2085889:  "Created job j327 for {hostname='linkhelp.clients.google.com', address_family=1}"
t=2085889:  "Attached request r611 to job j327"
t=2085889:  "Starting job j327"
t=2085889:  "[resolver thread] Running job j327"
t=2085889:  "[resolver thread] Completed job j327"
t=2085889:  "Completing job j327 (took 0 milliseconds)"
t=2085889:  "Finished request r611 with error=-105
    
por 24.05.2010 / 17:35