DNS Sunucusu Yanıtları ve Zaman Aşımları


17

LAN'ımızda sinir bozucu bir sorun yaşıyoruz. DNS, ISS ad sunucularımıza zaman aşımı süresi 5 saniyelik bir gecikmeyi zorlayarak düzenli olarak sorgular. /etc/resolv.confDNS sunucularımızdan birine doğrudan bir kazma kullanarak atlasam bile , yine de sorunla karşılaşıyorum. İşte bir örnek:

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

Diğer zamanlarda, sorgular 20 ms'nin altında olduğu gibi anında yanıt verir. Bir paket izi yaptım ve ilginç bir şey keşfettim. DNS sunucusu olup yanıt ancak istemci ilk yanıt yok sayar, o zaman hemen cevap olan, bir ikinci denk sorgu gönderir.

Paket izlemeye bakın . Sorgularla aynı kaynak bağlantı noktalarına dikkat edin (62076).

Soru: İlk DNS sorgusunun başarısız olmasına ne neden oluyor?

GÜNCELLEME

Kaynaklar:

Paket izleme:

http://www.cloudshark.org/captures/8b1c32d9d015

Dtruss (mac için strace):

https://gist.github.com/dmourati/6115180

Mountain Lion güvenlik duvarı apple.stackexchange.com adresinden gelen DNS isteklerini rastgele geciktiriyor:

/apple/80678/mountain-lion-firewall-is-randomly-delaying-dns-requests

GÜNCELLEME 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

dtrussçıktı kesilmiş görünüyor. Program çıktısını STDOUT'a yazan sistem çağrılarını asla görmüyoruz.
Andrew B

Google DNS gibi başka bir genel ad sunucusunu denediniz mi?
vasco.debian

@ vasco.debian evet, aynı davranış.
dmourati

1
Bu iki istek-yanıt çifti arasındaki tek fark, istek ve yanıt arasındaki gecikmelerdir. Ağda da herhangi bir sorun görmüyorum. Deneme yapın ve gecikmenin önemli olup olmadığını kontrol edin - OS, analizörde gösterilmesine rağmen bir nedenden dolayı bazı udp paketlerini uygulamaya bırakabilir. Kesinlikle, ağ veya genel yapılandırma ile ilgili bir sorun değil, "dig" çalışması gerekir. Ağ yığını ayarında bir sorun olabilir. Ağ için sysctl ayarlarını kontrol edin. Beğen Bu rolande.wordpress.com/2010/12/30/…
GioMac

1
Mac üzerinde çalışan bir güvenlik duvarınız olup olmadığını söylemiyor musunuz?
JustinP

Yanıtlar:


3

Bu, Lion'un güvenlik duvarında bir hata gibi görünüyor. Sisteminizde etkin mi?

Bu MacRumors iş parçacığında ( Mountain Lion'a (10.8) güncellendikten sonra DNS sorunları ) olası bir geçici çözüm ele alınmaktadır:

MTU boyutunu küçültmeyi deneyin.

Sistem Tercihleri> Ağ> WiFi> Gelişmiş> Donanım> Elle> MTU: Özel> 1300

Benim için çalıştı.

MTU boyutunun küçültülmesinin sorununuzu azaltıp azaltmadığını kontrol edebilir misiniz?


Güvenlik duvarı ayarlarının değiştirilmesi sorunu ortadan kaldırdı. MTU'nun etkisi olmadı. Güvenlik duvarının devre dışı bırakılması veya "Tüm gelen bağlantıları engelle" olması gerekir.
dmourati

Güvenlik duvarını herhangi bir ayara getirmek sorun sıklığını azalttı, ancak sorunu tamamen ortadan kaldırmadı. 1/200 kez çoğaltılabilir.
dmourati

Özellikle rotada sıkışık atlamalar varsa, internette gezinirken bu büyüklükteki bir paket kaybını oldukça makul olarak değerlendiririm. Unutmayın, DNS, datagram dağıtımını garanti etmeyen UDP kullanır. DNS protokolünün kendisinin yeniden denemeleri ve yerleşik bir zaman aşımı mekanizması olmasının nedeni tam olarak budur.
Mels

1
Bu arada, burada "teşekkür ederim" yorumları yayınlamamız gerekmediğini biliyorum, ama saygınlığımı altı katına çıkardın :)
Mels

0

Son zamanlarda benzer bir sorun yaşadım ve Cisco ASA güvenlik duvarının 512 bayttan daha büyük DNS UDP paketlerine izin veren spesifikasyon EDNS0'ı destekleyecek şekilde yapılandırılmadığını tespit ettim. Fw yöneticim 4096 bayta kadar izin verdiğinde sorun çözüldü. Harika bilgi burada:

http://www.petenetlive.com/KB/Article/0000312.htm


Bunun burada geçerli olduğunu düşünmüyorum. Yanıt, yetki ve ek bölümlerde bile bu belirli DNS sorgusu için 512 baytın oldukça altında.
Andrew B
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.