Dostosowywanie czasu, przez jaki Linux przechodzi w tryb failover do zapasowego serwera DNS wymienionego w resolv.conf


15

Obecnie używam zwykłej waniliowej konfiguracji linux do resolv.conf... czegoś takiego jak:

nameserver 123.123.123.123
nameserver 8.8.8.8

Kiedy 123.123.123.123 przestaje działać, zapytania DNS stają się niemożliwe powoli, zakładam, że Linux za każdym razem ponawia pierwszą. Czy istnieje sposób, aby linux był mądrzejszy w tym zakresie? Kontrole stanu zdrowia czy coś takiego? Czy też źle rozumiem, jak resolv.confpowinno działać?

Odpowiedzi:


18

Oprócz niesamowitej odpowiedzi ewwhite, uzupełnienie.

Możesz to dodać /etc/resolv.conf

options timeout:1 attempts:1 rotate

Domyślne wartości to czas: 5 prób: 2

Dzieje się tak, że biblioteka tłumacząca spróbuje użyć serwerów nazw wymienionych /etc/resolv.confod góry do dołu, jeśli nie ma opcji obracania. Jeśli rotacja jest obecna, wówczas dokonuje wyboru okrągłego robota. Jeśli resolver znajdzie się na dole listy, a serwer nie zareaguje w ciągu X sekund (biorąc pod uwagę, że X jest parametrem limitu czasu), to powtórzy cały proces wyboru robota okrągłego ponownie dla Y-1 razy (gdzie Y jest wartość prób).

Jednak należy zachować ostrożność, aby uniknąć kopania i znajomych w celu przetestowania tych opcji resolv.conf. Ponieważ unikają biblioteki tłumaczącej i bezpośrednio pytają serwery nazw. lepszym poleceniem jest getent hosts. Zauważ, że wszystko, co korzysta z glibc resolver, będzie musiało przestrzegać /etc/resolv.confpliku.


12

Jest to opisane za pomocą man resolv.conf.

Wypróbuj jedną z opcji limitu czasu, aby obniżyć wartość domyślną z 5 sekund do 1 sekundy ...

options timeout:1
nameserver 123.123.123.123
nameserver 8.8.8.8

Ale tak naprawdę DNS ma tak wiele dostępnych elastyczności, że można żyć bez limitów czasu niższej rozdzielczości. Czy można wybrać lepszy publiczny DNS lub uruchomić własny wewnętrzny program rozpoznawania nazw?

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.