/etc/resolv.conf dosyasındaki ikinci ad sunucusu wget tarafından alınmadı


14

Resolv.conf şöyle görünür:

; generated by /sbin/dhclient-script
search mcdc
nameserver 10.0.4.48
nameserver 8.8.8.8

eğer yaparsam nslookup www.google.comçalışır

nslookup www.google.com
;; Got SERVFAIL reply from 10.0.4.48, trying next server
Server:     8.8.8.8
Address:    8.8.8.8#53

Non-authoritative answer:
www.google.com  canonical name = www.l.google.com.

ancak www.google.com'u kıvırdığımda ana bilgisayarı çözemez.

Stral altında curl çalıştırmayı denedim ve curl'un ikinci değil, resolv.conf'daki ilk ad sunucusunu kullandığını gördüm. İki ad sunucusu satırını değiştirirsem, www.google.com çözülür, ancak dahili DNS adları değişmez, bu nedenle bu iyi bir çözüm değildir.

Resolv.conf dosyasını her iki ad sunucusunu kullanmak için nasıl düzeltebilirim?

Yanıtlar:


24

Resolv.conf ve çözümleyici için varsayılan davranış, sunucuları listelenen sırada denemektir. Çözümleyici, yalnızca ilk ad sunucusu zaman aşımına uğradığında sonraki ad sunucusunu deneyecektir. Resolv.conf manpage diyor ki:

ad sunucusu Ad sunucusu IP adresi

Çözümleyicinin sorgulaması gereken bir ad sunucusunun Internet adresi (nokta gösteriminde). Her anahtar kelime için bir tane olmak üzere en fazla MAXNS (şu anda 3, bkz.) Ad sunucusu listelenebilir. Birden çok sunucu varsa, çözümleyici kitaplığı bunları listelenen sırada sorgular.

Ve:

(Kullanılan algoritma bir ad sunucusunu denemektir ve sorgu zaman aşımına uğrarsa, ad sunucuları bitinceye kadar bir sonraki adımı deneyin, ardından maksimum sayıda yeniden deneme yapılana kadar tüm ad sunucularını denemeyi tekrarlayın.)

Ayrıca daha fazla bilgi için çözümleyici (5) kılavuz sayfasına bakınız .

Çözümleyicinin davranışını kullanarak rotate, ad sunucularını yuvarlak sıra ile sorgulayacak şekilde değiştirebilirsiniz :

döndürme, _res.options içindeki RES_ROTATE kümelerini listeler arasından ad sunucularının yuvarlak olarak seçilmesine neden olur. Bu, tüm istemcilerin her seferinde ilk listelenen sunucuyu denemelerini sağlamak yerine sorgu yükünü listelenen tüm sunucular arasında yayma etkisine sahiptir.

Ancak, nslookup ikinci ad sunucusunu SERVFAIL, ilk ad sunucusundan bir alırsa kullanır . Gönderen nslookup man :

[hayır] başarısız Bir ad sunucusu SERVFAIL veya bir yönlendirme (nofail) ile yanıt verirse veya böyle bir yanıtta sorguyu sonlandırırsa (başarısız) sonraki ad sunucusunu deneyin.

(Varsayılan = nofail)


2

evet, DNS aramalarını iyileştirmek için "döndür" ve zaman aşımı ayarını kullanabilirsiniz, aşağıdaki örnek,

Ör:

[root@centos-xxxxxx ~]# cat /etc/resolv.conf
options rotate
options timeout:1
search xyz.abc.local
nameserver 192.168.56.3
nameserver 10.0.2.4

1

10.0.4.48 özyinelemeli bir dns sunucusu aka çözümleyici mi?

Yoksa yalnızca iç bölgeleriniz için yetkili bir sunucu mu?

Yetkili verilerinizi de tutabilecek bir dahili çözümleyici ayarlamalısınız.


0

Beklendiği gibi çalışmasını sağlamak için dnsmasq veya diğer hafif DNS tekrarlayıcılarını (veya tam bir DNS sunucusunu) yükleyin. Bkz . DNS sunucusu yazılımının karşılaştırılması .

Dnsmasq yapılandırması için aşağıdaki kadar basittir:

server=10.0.4.48
server=8.8.8.8

Ayrıca hangi alan adlarının hangi DNS için kullanılması gerektiğini de belirleyebilirsiniz. Örneğin:

server=/mcdc/10.0.4.48
server=8.8.8.8

Bu için dnsmasq göz yapacaktır *.mcdciçinde 10.0.4.48DNS sunucusu ve diğer herhangi bir in 8.8.8.8.

Sadece /etc/resolv.confyerel DNS'inizi kullanın:

nameserver 127.0.0.1

Dnsmasq kurulumu hakkında daha fazla bilgi için cevabımı burada bulabilirsiniz: /unix/55090/change-default-dns-on-openvpn-connect/545591#545591 .


-3

Yapabilirsen, bu şekilde yapılandırırdım.

search mcdc
nameserver 127.0.0.1
nameserver 8.8.8.8


6
Sorunun hangi kısmı makinelerinde bir DNS sunucusu çalıştırdıklarını veya yapmak istediklerini gösteriyor?
Jay


1
Blake: 127.0.0.1'in yalnızca yerel ana bilgisayarda ad sunucusu önbelleğe alma daemon'una sahip sistemler için kullanıldığını unutmayın. Bkz tldp.org/HOWTO/DNS-HOWTO-3.html
Stefan Lasiewski
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.