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.conf
görünüyor:
search my-domain.com
nameserver 8.8.4.4
nameserver 8.8.8.8
Benim nsswitch.conf
hattı var:
hosts: files dns
ve /etc/hosts
alışı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, tcpdump
ad sunucusunun hemen yanıt verdiğini ve telnet
engellenmeyen 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.conf
içinde görebilmek için birkaç satır ekledim addrinfo
.