Udostępnij za pośrednictwem


Rozwiązywanie błędów rozpoznawania nazw DNS związanych z usługami przesyłania dalej DNS

Do wykonywania wyszukiwania nazw zewnętrznych możesz użyć skonfigurwanej usługi przesyłania dalej, warunkowej usługi przesyłania dalej lub wskazówek dotyczących katalogu głównego. Nie można jednak rozpoznać nazw zewnętrznych od klientów przy użyciu programu nslookup lub Resolve-DnsName. W tym artykule przedstawiono sposób rozwiązywania problemów z błędami rozpoznawania nazw związanych z usługą przesyłania dalej (DNS) usługi przesyłania dalej.

Analiza objawów

  1. Sprawdź, czy klienci, którzy nie mogą rozpoznać nazw, są zewnętrzne lub wewnętrzne.
    Jeśli problem jest specyficzny dla domeny wewnętrznej lub nazw zewnętrznych, te informacje ułatwiają zapoznanie się z konfiguracją specyficzną dla domeny na serwerze DNS.

  2. Sprawdź, czy wszyscy klienci napotykają problem, czy tylko konkretne.
    Dzięki temu można wyizolować, czy problem jest specyficzny dla serwera przekazującego DNS.

  3. Sprawdź serwer DNS.

    • Jeśli rozpoznawanie nazw nie powiedzie się z klientów, sprawdź, czy rozpoznawanie nazw również kończy się niepowodzeniem z preferowanego serwera DNS skonfigurowanego.
    • Sprawdź, czy rozpoznawanie kończy się niepowodzeniem z samego serwera DNS. Jeśli tak, możesz wykluczyć dowolny problem z klientem lub siecią między klientem a serwerem DNS.

    Zrzut ekranu przedstawiający przykład działania usługi przesyłania dalej DNS.

Rozwiązywanie problemów z schematem blokowym

Diagram wizualny schematu blokowego rozwiązywania problemów.

Kroki rozwiązywania problemów

Krok 1. Sprawdzanie łączności sieciowej między klientem a serwerem DNS

  1. Zweryfikuj konfigurację DNS. Uruchom polecenie ipconfig /all na kliencie i upewnij się, że skonfigurowano prawidłowy adres IP serwera DNS. Jeśli jest niepoprawna, skonfiguruj ją przy użyciu następującego polecenia:

    Set-DnsClientServerAddress -InterfaceAlias "Interface-Name" -ServerAddresses ("IP1")
    
  2. Sprawdź komunikację za pośrednictwem portu UDP 53. Upewnij się, że komunikacja między klientem a serwerem DNS jest dozwolona na porcie UDP 53.

  3. Wykonaj test ping od klienta do serwera DNS i na odwrót, aby zapewnić podstawową łączność sieciową.

Krok 2. Sprawdzanie konfiguracji serwera DNS

Wykonaj następujące kroki, aby sprawdzić, czy ten serwer DNS jest poprawnie skonfigurowany, aby móc rozpoznać nazwy, które nie są lokalne dla siebie.

  1. Sprawdź, czy warunkowy usług przesyłania dalej jest skonfigurowany dla danej domeny:

    Get-DnsServerZone -Name <domainname>
    
  2. Jeśli nie znaleziono warunkowego usługi przesyłania dalej, sprawdź, czy są skonfigurowane ogólne usługi przesyłania dalej:

    Get-DnsServerForwarder
    

    Sprawdź, czy dla parametru Useroothints ustawiono wartość TRUE.

  3. Jeśli żadne usługi przesyłania dalej nie są skonfigurowane, sprawdź wskazówki dotyczące katalogu głównego:

    Get-DnsServerRootHint
    

Jeśli żadna z nich nie zostanie skonfigurowana, rozpoznawanie nazw nie powiedzie się. Należy kontynuować tworzenie warunkowego usługi przesyłania dalej, jeśli jest to domena wewnętrzna lub usługa przesyłania dalej, jeśli jest to usługa przesyłania dalej dla domen zewnętrznych (najlepiej).

Uwaga 16.

Warunkowy moduł przesyłania dalej lub usługi przesyłania dalej, które są serwerami DNS, muszą mieć rekordy dla nazwy lub muszą być skonfigurowane do rozpoznawania nazwy.

Krok 3. Sprawdzanie stanu usługi DNS i łączności

  1. Upewnij się, że usługa serwera DNS jest uruchomiona zarówno na serwerach DNS przekazywania, jak i przesyłania dalej:

    Get-Service -Name DNS
    

    Uruchom usługę, jeśli nie jest uruchomiona:

    Start-Service -Name DNS
    
  2. Upewnij się, że komunikacja między serwerem przesyłania dalej DNS a serwerami usługi przesyłania dalej UDP 53 jest dozwolona.

Krok 4. Zbieranie przechwytywania sieci w celu śledzenia pakietów DNS

Przed przechwyceniem sieci na maszynie klienckiej zawsze zaleca się wyczyszczenie pamięci podręcznej po stronie klienta DNS:

ipconfig /flushdns

Następnie zbierz przechwytywanie sieci, wykonując następujące kroki:

  1. Uruchom narzędzie przechwytywania sieci (na przykład Wireshark) na kliencie, serwerze DNS i usłudze przesyłania dalej.
  2. Wykonaj nslookup <name> na kliencie, aby odtworzyć błąd.
  3. Zatrzymaj przechwytywanie i przejrzyj ślady. Odfiltruj port UDP 53, aby wyświetlić odpowiedni ruch DNS.

Przeanalizuj scenariusze.

W poniższych sekcjach wymieniono kilka scenariuszy, które mogą wystąpić. Te scenariusze obejmują konfigurację warunkowego usługi przesyłania dalej, ale kroki rozwiązywania problemów są takie same, jeśli zajmujesz się standardowym usługą przesyłania dalej.

Scenariusz 1. Opóźnienie sieci lub przekroczenie limitu czasu

Serwer nazw DNS 192.168.10.10 przekazuje zapytanie do pierwszego usługi przesyłania dalej 192.168.5.5. Ze względu na opóźnienie sieci lub problemy z siecią pośrednią odpowiedź nie dociera do serwera DNS w okresie przesyłania dalejTimeout . W związku z tym serwer DNS przekazuje zapytanie do następnego skonfigurowanego usługi przesyłania dalej, czyli 192.168.5.6. Ponownie, ze względu na opóźnienia lub problemy z siecią pośrednią, odpowiedź nie dociera do serwera DNS. Ponieważ serwer DNS nie może pobrać odpowiedzi dla zapytania nodeA.contoso.com, wysyła do klienta odpowiedź "Błąd serwera".

Zrzut ekranu przedstawiający przepływ sieci, gdy występuje opóźnienie sieci lub przekroczenie limitu czasu z usługą przesyłania dalej DNS.

Rozwiązanie: Współpracuj z zespołem ds. sieci, aby rozwiązać problemy z opóźnieniami. Jeśli opóźnienie jest oczekiwane, upewnij się, że serwer DNS ma wystarczająco dużo czasu, aby poczekać na odpowiedź z warunkowego usługi przesyłania dalej przed przekroczeniem limitu czasu przez zwiększenie limitu czasu usługi ForwarderTimeout i RecursionTimeout .

Aby to zrobić, zobacz NET: DNS: Usługi przesyłania dalej i warunkowe limity czasu rozpoznawania usług przesyłania dalej.

Scenariusz 2. Zapytanie odrzucone przez usługę przesyłania dalej

Serwer nazw DNS 192.168.10.10 przekazuje zapytanie do warunkowego usługi przesyłania dalej 192.168.5.5. Na tym serwerze, jeśli istnieją jakiekolwiek zasady skonfigurowane do odmowy lub odmowy zapytań dla określonego rekordu lub strefy, warunkowy usług przesyłania dalej odpowiada na serwer nazw DNS przekazujący z odpowiedzią "Odmowa". Teraz serwer DNS przekaże ten błąd klientowi jako błąd serwera. Serwer DNS nie skontaktuje się z drugim usługą przesyłania dalej warunkowego, ponieważ otrzymaliśmy już odpowiedź od pierwszego (mimo że jest to odpowiedź o błędzie)

Rozwiązanie: Jeśli usługa przesyłania dalej jest serwerem DNS systemu Microsoft Windows, sprawdź, czy jakiekolwiek zasady rozpoznawania zapytań DNS skonfigurowane na warunkowym przesyłania dalej mają "odmówić" zapytań dotyczących strefy fab.com lub niektórych rekordów, takich jak NodeA.fab.com. Listę skonfigurowanych zasad można uzyskać za pomocą polecenia get-dnsserverqueryresolutionpolicy. Aby to zrobić, zobacz Get-DnsServerQueryResolutionPolicy.

Jeśli nie należy umieszczać żadnych takich zasad, usuń je, aby rozwiązać ten problem.

Jeśli jest to serwer DNS innej firmy, skontaktuj się z odpowiednim dostawcą.

Scenariusz 3. Brak rekordów w usłudze przesyłania dalej

Serwer nazw DNS 192.168.10.10 przekazuje zapytanie do pierwszego warunkowego przesyłania dalej 192.168.5.5. W usłudze przesyłania dalej warunkowego nie ma hosta A dla nazwy NodeA w fab.com strefie. W takim przypadku warunkowy usług przesyłania dalej odpowiada na serwer DNS z odpowiedzią "Błąd nazwy". Następnie serwer DNS przekaże tę samą odpowiedź do klienta. Serwer DNS nie skontaktuje się z drugim warunkowym usługą przesyłania dalej, ponieważ otrzymaliśmy już odpowiedź od pierwszego. Zwykle w przypadku wystąpienia tego scenariusza występuje objaw, że rozwiązanie kończy się niepowodzeniem dla niektórych nazw, a niekoniecznie wszystkich nazw fab.com domeny.

Zrzut ekranu przedstawiający przepływ sieciowy, gdy brakuje rekordów w usłudze przesyłania dalej.

Rozwiązanie: zarejestruj brakujące rekordy w usłudze przesyłania dalej dla danej strefy statycznie lub dynamicznie.

Zbieranie danych

Jeśli potrzebujesz pomocy technicznej firmy Microsoft, zalecamy zebranie informacji o problemie przed skontaktowaniem się z pomocą techniczną firmy Microsoft.

  1. Postępuj zgodnie z instrukcjami podanymi w temacie Introduction to TroubleShootingScript toolset (TSS), aby pobrać i zebrać dzienniki przy użyciu narzędzia TSS.
  2. Uruchom to polecenie, aby włączyć zbieranie dzienników na maszynie, której dotyczy problem:
    • Na serwerach DNS:

      .\TSS.ps1 -Scenario NET_DNSsrv
      
    • Na klientach DNS:

      .\TSS.ps1 -Scenario NET_DNScli