DNS não resolve o mesmo que o host

2

Temos um host OSX e uma instância do Ubuntu 10.04 vagrant em execução no VirtualBox. Ao tentar enviar um email para emailtests.com (para fins de teste de email), notamos que o DNS não estava sendo resolvido adequadamente.

Então tentamos seguir o comando no OSX e nossa instância do Vagrant: dig -tMX emailtests.com

OSX

; <<>> DiG 9.8.3-P1 <<>> -tMX emailtests.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 39364
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 4, ADDITIONAL: 3

;; QUESTION SECTION:
;emailtests.com.            IN  MX

;; ANSWER SECTION:
emailtests.com.     300 IN  MX  10 litmus-smtp-in-392690123.us-east-1.elb.amazonaws.com.

;; AUTHORITY SECTION:
emailtests.com.     172711  IN  NS  ns-1596.awsdns-07.co.uk.
emailtests.com.     172711  IN  NS  ns-215.awsdns-26.com.
emailtests.com.     172711  IN  NS  ns-1288.awsdns-33.org.
emailtests.com.     172711  IN  NS  ns-964.awsdns-56.net.

;; ADDITIONAL SECTION:
ns-964.awsdns-56.net.   158810  IN  A   205.251.195.196
ns-1288.awsdns-33.org.  158499  IN  A   205.251.197.8
ns-1596.awsdns-07.co.uk. 72461  IN  A   205.251.198.60

;; Query time: 74 msec
;; SERVER: 184.73.189.33#53(184.73.189.33)
;; WHEN: Mon Sep  9 13:15:02 2013
;; MSG SIZE  rcvd: 282

Vagabundo

; <<>> DiG 9.7.0-P1 <<>> -tMX emailtests.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 2227
;; flags: qr aa rd; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
;; WARNING: recursion requested but not available

;; QUESTION SECTION:
;emailtests.com.            IN  MX

;; Query time: 104 msec
;; SERVER: 10.0.2.3#53(10.0.2.3)
;; WHEN: Mon Sep  9 13:09:42 2013
;; MSG SIZE  rcvd: 32

Como você pode ver, os registros MX não estão sendo resolvidos da mesma maneira. Eu olhei em volta online e encontrei respostas nos dizendo para adicionar o seguinte arquivo do vagrant:

  config.vm.customize ["modifyvm", :id, "--natdnsproxy1", "on"]
  config.vm.customize ["modifyvm", :id, "--natdnshostresolver1", "on"]
  config.vm.customize ["modifyvm", :id, "--natdnspassdomain1", "on"]

Que já tivemos. Ainda não conseguimos resolver esse endereço e provavelmente muitos outros endereços corretamente. Alguma idéia sobre como resolver isso ou diminuir o problema?

Observação: podemos enviar e-mails para o gmail e fazer ping / dig alguns domínios.

UPDATE, ifconfig do vagrant

eth0      Link encap:Ethernet  HWaddr 08:00:27:36:71:5f  
          inet addr:10.0.2.15  Bcast:10.0.2.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe36:715f/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:38137 errors:0 dropped:0 overruns:0 frame:0
          TX packets:26845 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:18987844 (18.9 MB)  TX bytes:6605246 (6.6 MB)

eth1      Link encap:Ethernet  HWaddr 08:00:27:80:07:aa  
          inet addr:192.168.42.3  Bcast:192.168.42.255  Mask:255.255.255.0
          inet6 addr: fe80::a00:27ff:fe80:7aa/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:8294812 errors:0 dropped:0 overruns:0 frame:0
          TX packets:4509692 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:1871276346 (1.8 GB)  TX bytes:1268188839 (1.2 GB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:815216 errors:0 dropped:0 overruns:0 frame:0
          TX packets:815216 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:371105283 (371.1 MB)  TX bytes:371105283 (371.1 MB)
    
por Parris 11.09.2013 / 20:08

2 respostas

2

Parece que o servidor DNS configurado, 10.0.2.3, não está configurado para fazer pesquisas recursivas. Você não recebe resposta alguma. Use um servidor DNS que possa fazer pesquisas recursivas ou configure o seu para poder fazer isso.

    
por 11.09.2013 / 20:14
1

Eu tropecei nisso enquanto olhava para o mesmo problema esta manhã, e depois de muito googling / head-scratching surgiu a seguinte solução, que eu vou postar para qualquer outra pessoa que tenha esse problema no futuro e fique presa .

As configurações do Vagrantfile natdns que funcionam para nós (Vagrant 1.6.3, testado no OSX (usando o VirtualBox 4.3.14) e no Windows8 (usando o Virtual Box 4.3.15 r95286 - meu colega tinha um problema diferente não relacionado usando o 4.3.14 com windows8 então está usando uma versão beta que parece funcionar corretamente com vagrant)

config.vm.customize ["modifyvm", :id, "--natdnsproxy1", "off"]
config.vm.customize ["modifyvm", :id, "--natdnshostresolver1", "off"]
config.vm.customize ["modifyvm", :id, "--natdnspassdomain1", "off"]

(definitivamente a primeira linha, você pode não precisar dos dois seguintes, eu os incluí apenas caso você os tenha ligado enquanto experimenta - eu tenho apenas --natdnsproxy1 e --natdnshostresolver1 no meu Vagrantfile ambos desativados) .

O motivo parece ser que o Vagrant usa --natdnsproxy1 como on, e o DNS proxy do virtualboxs para consultas mx parece defeituoso / quebrado / flakey - se você defini-lo como off o vm usará os endereços IP que o host usa para o DNS, em vez de tentar procurá-los via 10.0.2.3 - et voila você obtém os registros mx completos do DNS (ou pelo menos nós).

(Por uma questão de pesquisa no google, a razão pela qual eu cheguei a tudo isso foi que os e-mails não estavam sendo enviados para certos domínios do vagrant rodando o Centos 6.5 - poderíamos ver que o sendmail estava respondendo com o erro: servidor requer autenticação ao tentar enviar para um endereço de e-mail não local ... ", e então descobrimos que fazer um dig mydomain.com mx estava retornando o registro A do domínio em vez do esperado, o que sugeria um Problema de pesquisa de DNS com o Vagrant / VirtualBox).

    
por 27.08.2014 / 17:23