Bazı ana bilgisayar adı aramalarının tamamlanması birkaç saniye süren Debian Wheezy'yi çalıştıran bir VM'im var. Garip bir şekilde, ile yapılan aramalar getaddrinfo()etkilenir, ancak etkilenmez gethostbyname().
Yerel çözümlerin kırılma olasılığını dışlamak için Google çözümleyicilerine geçtim, bu yüzden şöyle /etc/resolv.confgörünüyor:
search my-domain.com
nameserver 8.8.4.4
nameserver 8.8.8.8
Benim nsswitch.confhattı var:
hosts: files dns
ve /etc/hostsalışılmadık bir şey içermiyor.
Ben denerseniz telnet webserver 80, bir ad çözünürlüğü almadan önce birkaç saniye boyunca asılı kalır. Bir ltraceçıkış [1], asmanın bir getaddrinfo()çağrıda olduğunu gösterir :
getaddrinfo("ifconfig.me", "telnet", { AI_CANONNAME, 0, SOCK_STREAM, 0, 0, NULL, '\000', NULL }, 0x7fffb4ffc160) = 0 <5.020621>
Ancak, tcpdumpad sunucusunun hemen yanıt verdiğini ve telnetengellenmeyen yalnızca ikinci yanıtta olduğunu gösterir . Cevaplar aynı görünüyor:
05:52:58.609731 IP 192.168.1.75.43017 > 8.8.4.4.53: 54755+ A? ifconfig.me. (29)
05:52:58.609786 IP 192.168.1.75.43017 > 8.8.4.4.53: 26090+ AAAA? ifconfig.me. (29)
05:52:58.612188 IP 8.8.4.4.53 > 192.168.1.75.43017: 54755 4/0/0 A 219.94.235.40, A 133.242.129.236, A 49.212.149.105, A 49.212.202.172 (93)
[...five second pause...]
05:53:03.613811 IP 192.168.1.75.43017 > 8.8.4.4.53: 54755+ A? ifconfig.me. (29)
05:53:03.616424 IP 8.8.4.4.53 > 192.168.1.75.43017: 54755 4/0/0 A 219.94.235.40, A 133.242.129.236, A 49.212.149.105, A 49.212.202.172 (93)
05:53:03.616547 IP 192.168.1.75.43017 > 8.8.4.4.53: 26090+ AAAA? ifconfig.me. (29)
05:53:03.618907 IP 8.8.4.4.53 > 192.168.1.75.43017: 26090 0/1/0 (76)
Ana bilgisayar güvenlik duvarı günlüklerini kontrol ettim ve bağlantı noktası 53'teki hiçbir şey engellenmiyor.
İlk DNS yanıtının yok sayılmasına neden olan şey nedir?
[1] Yapının ltrace.confiçinde görebilmek için birkaç satır ekledim addrinfo.