Tymczasowa awaria rozpoznawania nazw

12

Otrzymuję komunikat o błędzie za każdym razem, gdy robię coś, co wymaga wyszukiwania DNS na moim serwerze CentOS. Na przykład:

[root @ 15557 itp.] # wget http://www.whitehouse.gov/sites/default/files/rss_viewer/birth-certificate-long-form.pdf
--2011-05-03 20: 55: 35-- http://www.whitehouse.gov/sites/default/files/rss_viewer/birth-certificate-long-form.pdf
Rozwiązanie www.whitehouse.gov ... nie powiodło się: tymczasowa awaria rozpoznawania nazw.
wget: nie można rozwiązać adresu hosta `www.whitehouse.gov '

Jeśli zrestartuję serwer, problem ten zniknie na krótki czas, ale zawsze wraca po około godzinie. Jeśli zmienię adresy IP serwera nazw wymienione w resolv.conf, problem nie zostanie rozwiązany, nawet jeśli zastąpię je wspólnym serwerem nazw, takim jak Google 8.8.8.8. Jeśli opróżnię pamięć podręczną hostów po zmianie resolve.conf, nie rozwiąże to również problemu. Po ponownym uruchomieniu serwera resolv.confprzywracane są wartości domyślne (chyba przez niektóre DHCP).

whitelines222
źródło
1
Jakaś utrata pakietów wychodzących na twoim serwerze? Odpalam sniffer pakietów i sprawdzę, jak wygląda ruch DNS, kiedy to się stanie.
EEAA
Czy możesz polecić sniffer pakietów? Nie instalowałem wcześniej takiego oprogramowania. Dzięki.
whitelines222
tcpdumpjest łatwo dostępny w większości dystrybucji za pośrednictwem repozytorium pakietów. Polecam jednak poszukać go w samouczku tcpdump przed rozpoczęciem. Możesz także użyć tcpdump do przechwycenia pakietów i zapisania ich w pliku dziennika, a następnie możesz otworzyć ten plik dziennika w narzędziu GUI o nazwie Wireshark, które jest nieco bardziej przyjazne dla użytkownika niż przy użyciu CLI.
EEAA
tcpdump -Ani <twój_interface> -s0 port domain (-w my.log &)
3molo

Odpowiedzi:

9

Może to być problem spowodowany przez serwer DHCP - faktycznie, przez nieuczciwy lub inny źle skonfigurowany serwer DHCP w sieci.

Prawdopodobnie tak się dzieje: po uruchomieniu serwera udaje mu się uzyskać dokładne parametry ( adres IP, brama, serwery DNS itp. ) Z legalnego serwera DHCP, w wyniku czego nie wystąpią żadne problemy, dopóki nie zostanie wydzierżawiony odnowienie. Po stosunkowo krótkim czasie ( zależy to od konfiguracji klienta i serwera dhcp)), klient DHCP podejmie próbę odnowienia dzierżawy, kontaktując się z legalnym serwerem DHCP (poprzez transmisję emisji pojedynczej). Jeśli z jakiegoś powodu to się nie powiedzie lub twój klient dhcp z jakiegoś powodu nie otrzyma odpowiedzi z legalnego serwera DHCP, przejdzie w stan ponownego wiązania i wyemituje żądanie przedłużenia czasu dzierżawy. Jeśli nieuczciwy / inny źle skonfigurowany serwer DHCP zdoła odpowiedzieć w pierwszej kolejności, może wysłać do klienta DHCP niedokładne parametry - na przykład „zły” adres serwera DNS, w wyniku czego nie będzie można rozwiązać nazw hostów.

Jeśli moje spekulacje są słuszne, ponowne uruchomienie serwera nie zawsze rozwiązuje problem, ponieważ mogą wystąpić sytuacje, w których nieuczciwy serwer DHCP zareaguje pierwszy, w wyniku czego wystąpi wspomniany problem.

W każdym razie spróbuj skonfigurować statyczne adresy IP, wyłączyć DHCP i ręcznie ustawić serwery DNS. Powinieneś także prawdopodobnie sprawdzić, czy w sieci działa inny serwer DHCP niż ten, z którego korzystasz.

dkaragasidis
źródło
Jak mogę sprawdzić, czy w mojej sieci jest nieuczciwy serwer DHCP? serverfault.com/questions/8526/…
Elijah Lynn
1

W moim przypadku ustawiłbym reguły fw dla niewłaściwego interfejsu. Dlatego port 53 nie był otwarty, a serwer nie mógł wykonać żądania dns

grahamrhay
źródło