Respostas e tempos limite do servidor DNS

17

Estamos com um problema frustrante em nossa LAN. Periodicamente, as consultas do DNS ao tempo limite de servidores de nomes do ISP forçam um atraso de 5 segundos. Mesmo se eu ignorar /etc/resolv.conf usando uma escavação direta em um dos nossos servidores DNS, ainda encontro o problema. Aqui está um exemplo:

mv-m-dmouratis:~ dmourati$ time dig www.google.com @209.81.9.1 

; <<>> DiG 9.8.3-P1 <<>> www.google.com @209.81.9.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 14473
;; flags: qr rd ra; QUERY: 1, ANSWER: 5, AUTHORITY: 4, ADDITIONAL: 4

;; QUESTION SECTION:
;www.google.com.            IN  A

;; ANSWER SECTION:
www.google.com.     174 IN  A   74.125.239.148
www.google.com.     174 IN  A   74.125.239.147
www.google.com.     174 IN  A   74.125.239.146
www.google.com.     174 IN  A   74.125.239.144
www.google.com.     174 IN  A   74.125.239.145

;; AUTHORITY SECTION:
google.com.     34512   IN  NS  ns2.google.com.
google.com.     34512   IN  NS  ns1.google.com.
google.com.     34512   IN  NS  ns3.google.com.
google.com.     34512   IN  NS  ns4.google.com.

;; ADDITIONAL SECTION:
ns2.google.com.     212097  IN  A   216.239.34.10
ns3.google.com.     207312  IN  A   216.239.36.10
ns4.google.com.     212097  IN  A   216.239.38.10
ns1.google.com.     212096  IN  A   216.239.32.10

;; Query time: 8 msec
;; SERVER: 209.81.9.1#53(209.81.9.1)
;; WHEN: Fri Jul 26 14:44:25 2013
;; MSG SIZE  rcvd: 248


real    0m5.015s
user    0m0.004s
sys 0m0.002s

Outras vezes, as consultas respondem instantaneamente, como em menos de 20 ms ou mais. Eu fiz um rastreamento de pacotes e descobri algo interessante. O servidor DNS está respondendo, mas o cliente ignora a resposta inicial e envia uma segunda consulta idêntica à qual é respondida imediatamente.

Veja o rastreamento de pacotes . Observe as portas de origem idênticas às consultas (62076).

Pergunta: o que está causando a primeira consulta DNS a falhar?

UPDATE

Recursos:

Rastreio de pacotes:

link

Dtruss (strace para mac):

link

O firewall da Mountain Lion está atrasando aleatoriamente as solicitações de DNS de apple.stackexchange.com:

link

UPDATE 2

System Software Overview:

  System Version:   OS X 10.8.4 (12E55)
  Kernel Version:   Darwin 12.4.0
  Boot Volume:  Macintosh HD
  Boot Mode:    Normal
  Computer Name:    mv-m-dmouratis
  User Name:    Demetri Mouratis (dmourati)
  Secure Virtual Memory:    Enabled
  Time since boot:  43 minutes

Hardware Overview:

  Model Name:   MacBook Pro
  Model Identifier: MacBookPro10,1
  Processor Name:   Intel Core i7
  Processor Speed:  2.7 GHz
  Number of Processors: 1
  Total Number of Cores:    4
  L2 Cache (per Core):  256 KB
  L3 Cache: 6 MB
  Memory:   16 GB

Firewall Settings:

  Mode: Limit incoming connections to specific services and applications
  Services:
  Apple Remote Desktop: Allow all connections
  Screen Sharing:   Allow all connections
  Applications:
  com.apple.java.VisualVM.launcher: Block all connections
  com.getdropbox.dropbox:   Allow all connections
  com.jetbrains.intellij.ce:    Allow all connections
  com.skype.skype:  Allow all connections
  com.yourcompany.Bitcoin-Qt:   Allow all connections
  org.m0k.transmission: Allow all connections
  org.python.python:    Allow all connections
  Firewall Logging: Yes
  Stealth Mode: No
    
por dmourati 26.07.2013 / 23:53

2 respostas

3

Isso parece ser um bug no firewall do Lion. Está ativado no seu sistema?

Neste tópico do MacRumors ( problemas de DNS após a atualização para o Mountain Lion (10.8) ), um possível solução alternativa é discutida:

Try reducing MTU size.

System Preferences > Network > WiFi > Advanced > Hardware > Manually > MTU: Custom > 1300

Worked for me.

Você poderia verificar se a redução do tamanho da MTU atenua seu problema?

    
por 01.08.2013 / 13:19
0

Eu tive um problema semelhante recentemente e descobri que o firewall Cisco ASA não estava configurado para suportar o EDNS0, a especificação que permite pacotes DNS UDP maiores que 512 bytes. Uma vez que meu administrador do fw permitiu até 4096 bytes, o problema foi resolvido. Ótima informação aqui:

link

    
por 30.07.2013 / 22:59