Origem do registro DNS na rede SOHO?

0
Primeiro, perdoe minha ignorância, pois ainda estou me acostumando a trabalhar com o DNS. Eu sou um novato em rede.

A questão básica: Como determino a fonte de um registro DNS? Ou, pode ser mais preciso perguntar: como eu determino onde na minha rede um nome de host está sendo traduzido em um IP?

Específicos:

  • Actiontek MI424WR-GEN3I (fornecido como parte do serviço FiOS)
  • MacBookPro executando o OS X Yosemite
  • VMWare Fusion
  • Ubuntu 14 Server em execução na máquina virtual VMWare

Cenário: Eu estou em um Mac rodando o OS X Yosemite com o Ubuntu 14 rodando em uma máquina virtual VMWare. Eu estou aprendendo as dificuldades na criação de um site Drupal (não especificamente relevante para o problema), e eu configurei hosts virtuais no servidor Ubuntu. Tomando isso como um processo baby-steps, eu primeiro criei uma entrada no meu arquivo hosts: 192.168.1.22 cwb1.local

Isso funcionou bem, então eu fiquei um pouco mais ambicioso e removi esta entrada do arquivo hosts e criei uma entrada DNS no meu roteador, apontando o nome do host cwb1.local para o IP 192.168.1.22. Isso parecia ter funcionado muito bem também. O mistério é que, desde então, eu removi essa entrada de DNS e agora, até onde posso dizer, não tenho nenhum registro associando esse nome de host e IP entre si, ainda assim duas coisas estranhas acontecem:

  1. Eu posso pingar o nome do host e retornar com sucesso o IP
  2. posso navegar para o link no meu navegador e acessar meu Drupal site.

Limpei o cache do meu navegador e executei dscacheutil -flushcache no meu mac, até mesmo redefini meu servidor, e ainda não consigo determinar como / porque meu mac sabe associar esse nome de host e o IP juntos.

Diagnóstico: * note que a VM que executa este servidor está listada nas conexões DHCP do meu roteador como 'ubuntu'

MAC:~ me$ nslookup 192.168.1.22
Server:     192.168.1.1
Address:    192.168.1.1#53

22.1.168.192.in-addr.arpa   name = ubuntu.home.


MAC:~ me$ nslookup cwb1.local
Server:     192.168.1.1
Address:    192.168.1.1#53

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


MAC:~ me$ dig cwb1.local

; <<>> DiG 9.8.3-P1 <<>> cwb1.local
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 53342
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0

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

;; Query time: 49 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Sat Jan 17 20:53:36 2015
;; MSG SIZE  rcvd: 28


MAC:~ me$ dig 192.168.1.22

; <<>> DiG 9.8.3-P1 <<>> 192.168.1.22
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 60811
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

;; QUESTION SECTION:
;192.168.1.22.          IN  A

;; AUTHORITY SECTION:
.           10800   IN  SOA a.root-servers.net. nstld.verisign-grs.com. 2015011701 1800 900 604800 86400

;; Query time: 50 msec
;; SERVER: 192.168.1.1#53(192.168.1.1)
;; WHEN: Sat Jan 17 21:01:59 2015
;; MSG SIZE  rcvd: 105

Conteúdo do /etc/apache2/sites-available/html.conf

<VirtualHost *:80>
        DocumentRoot /var/www/html
        ServerName drupal7
</VirtualHost>
<VirtualHost *:80>
        DocumentRoot /var/www/html
        ServerName cwb1.local
        ServerAlias cwb1.local *.cwb1.local
</VirtualHost>

Alguém pode me dar alguma orientação aqui?

Editar Após o comentário do Romeo, eu revisitei meu arquivo / etc / hosts e tentei algo: Eu adicionei uma nova entrada para cwb1.local para um IP que não está presente na minha rede (192.168.1.23). Ao executar ping no cwb1.local, ele é resolvido para 192.168.1.23 (conforme esperado) e cada pedido de req expira (também como esperado). A parte interessante é que eu removi essa entrada do meu arquivo / etc / hosts, então corri:

  • dscacheutil -flushcache
  • sudo discoveryutil mdnsflushcache
  • sudo discoveryutil udnsflushcaches

e ainda obtém os mesmos resultados: o nome do host é resolvido, mas os pacotes expiram.

Então, meu Mac está propagando / espelhando essa informação em outro lugar também? Ou há algum tipo de buffer que não seja removido com os comandos de limpeza de cache acima?

Editar 2 Assim, após a reinicialização, o registro do nome do host parece ter finalmente desaparecido. Isso indica muito strongmente que o registro fantasma está sendo armazenado no meu Mac. Mas onde / como esse registro DNS fantasma é armazenado antes da reinicialização? Como posso garantir no futuro que estou obtendo informações precisas de DNS sem exigir uma reinicialização?

Mais uma vez, agradeço a todos que podem dar uma ideia!

    
por Beau 18.01.2015 / 03:09

1 resposta

0

Yosemite alterou os comandos para liberar DNS:

sudo discoveryutil mdnsflushcache
sudo discoveryutil udnsflushcaches

De acordo com o link , todos os domínios .local agora são resolvidos exclusivamente por meio do mdns / Bonjour. Como o Ubuntu ativa o mdns / avahi-daemon por padrão, você provavelmente não está acessando o servidor DNS.

Você pode desativar isso temporariamente com service avahi-daemon stop para ver se isso resolve o problema. Veja link

    
por 18.01.2015 / 03:26

Tags