Domain controller is not functioning correctly

  • 12/07/2020
  • 8 minutes to read
    • D
    • v
    • s

This article provides common resolutions to the issue where domain controller is not functioning correctly.

Original product version: Windows Server 2012 R2
Original KB number: 837513

Symptoms

When you run the Dcdiag tool on a Microsoft Windows 2000-Server based domain controller or on a Windows Server 2003-based domain controller, you may receive the following error message:

DC Diagnosis
Performing initial setup:
LDAP bind failed with error 31

Gdy uruchomisz narzędzie REPADMIN /SHOWREPS lokalnie na kontrolerze domeny, możesz otrzymać jeden z następujących komunikatów o błędzie:

Błąd LDAP 82 (Local Error).

Ostatnia próba @ yyyy-mm-dd hh:mm.ss failed, result 1753: There are no more endpoints available from the endpoint mapper.

Last attempt @ yyyy-mm-dd hh:mm.ss failed, result 5: Access is denied.

Jeśli używasz Active Directory Sites and Services do uruchamiania replikacji, możesz otrzymać komunikat informujący o odmowie dostępu.

Podczas próby użycia zasobów sieciowych z konsoli kontrolera domeny, którego dotyczy problem, w tym zasobów Universal Naming Convention (UNC) lub zmapowanych dysków sieciowych, możesz otrzymać następujący komunikat o błędzie:

Brak dostępnych serwerów logowania (c000005e = „STATUS_NO_LOGON_SERVERS”)

Jeśli uruchomisz jakiekolwiek narzędzia administracyjne Active Directory z konsoli kontrolera domeny dotkniętego problemem, w tym Active Directory Sites and Services oraz Active Directory Users and Computers, możesz otrzymać jeden z następujących komunikatów o błędzie:

Nie można zlokalizować informacji o nazewnictwie, ponieważ: Nie można było skontaktować się z żadnym organem w celu uwierzytelnienia. Skontaktuj się z administratorem systemu, aby sprawdzić, czy domena została prawidłowo skonfigurowana i jest obecnie online.

Nie można zlokalizować informacji o nazewnictwie, ponieważ: Nazwa konta docelowego jest nieprawidłowa.

Klienci programu Microsoft Outlook podłączeni do komputerów z serwerem Microsoft Exchange Server, które używają kontrolerów domeny dotkniętych problemem do uwierzytelniania, mogą zostać poproszeni o podanie poświadczeń logowania, nawet jeśli uwierzytelnianie logowania z innych kontrolerów domeny przebiegło pomyślnie.

Narzędzie Netdiag może wyświetlać następujące komunikaty o błędach:

Test listyDC … … … … … . : Failed
Cannot call DsBind to <servername><fqdn>< adresip>).
Test kerberosa. . . . . . . . . . : Failed
Kerberos nie ma biletu dla krbtgt/<fqdn>.

Kerberos does not have a ticket for <hostname>.
LDAP test. . . . . . . . . . . . . : Passed
Failed to query SPN registration on DC <hostname><fqdn>

The following event may be logged in the system event log of the affected domain controller:

Resolution

There are several resolutions for these symptoms. The following is a list of methods to try. The list is followed by steps to perform each method. Try each method until the problem is resolved. Artykuły bazy wiedzy firmy Microsoft, które opisują mniej popularne sposoby rozwiązywania tych objawów, są wymienione poniżej.

  1. Metoda 1: Napraw błędy systemu nazw domen (DNS).
  2. Metoda 2: Zsynchronizuj czas między komputerami.
  3. Metoda 3: Sprawdź uprawnienia użytkownika Dostęp do tego komputera z sieci.
  4. Metoda 4: Sprawdź, czy atrybut userAccountControl kontrolera domeny ma wartość 532480.
  5. Metoda 5: Popraw sferę Kerberos (upewnij się, że klucz rejestru PolAcDmN i klucz rejestru PolPrDmN są zgodne).
  6. Metoda 6: Zresetuj hasło konta maszynowego, a następnie uzyskaj nowy bilet Kerberos.

Metoda 1: Napraw błędy DNS

  1. W wierszu poleceń uruchom polecenie netdiag -v. To polecenie utworzy plik Netdiag.log w folderze, w którym polecenie zostało uruchomione.
  2. Przed kontynuacją rozwiąż wszelkie błędy DNS w pliku Netdiag.log. Narzędzie Netdiag znajduje się w pakiecie Windows 2000 Server Support Tools na płycie CD-ROM Windows 2000 Server lub jako plik do pobrania.
  3. Upewnij się, że DNS jest skonfigurowany poprawnie. Jednym z najczęstszych błędów DNS jest wskazywanie kontrolera domeny na dostawcę usług internetowych (ISP) zamiast wskazywania DNS na niego samego lub na inny serwer DNS, który obsługuje dynamiczne aktualizacje i rekordy SRV. Zalecamy, aby wskazać kontroler domeny na niego samego lub na inny serwer DNS, który obsługuje dynamiczne aktualizacje i rekordy SRV. Zalecamy skonfigurowanie forwarderów do dostawcy usług internetowych w celu rozwiązywania nazw w Internecie.

Aby uzyskać więcej informacji na temat konfigurowania DNS dla usługi katalogowej Active Directory, kliknij następujące numery artykułów, aby wyświetlić artykuły w Bazie wiedzy Microsoft:
254680 Planowanie przestrzeni nazw DNS

Metoda 2: Synchronizacja czasu między komputerami

Sprawdź, czy czas jest prawidłowo zsynchronizowany między kontrolerami domeny. Dodatkowo sprawdź, czy czas jest poprawnie zsynchronizowany pomiędzy komputerami klienckimi a kontrolerami domeny.

Metoda 3: Sprawdź uprawnienia użytkownika „Access this computer from the network”

Zmodyfikuj plik Gpttmpl.inf, aby potwierdzić, że odpowiedni użytkownicy mają prawo użytkownika Access this computer from the network na kontrolerze domeny. Aby to zrobić, wykonaj następujące kroki:

  1. Modyfikuj plik Gpttmpl.inf dla Default Domain Controllers Policy. Domyślnie, Default Domain Controllers Policy jest miejscem, gdzie definiowane są prawa użytkownika dla kontrolera domeny. Domyślnie plik Gpttmpl.inf dla Default Domain Controllers Policy znajduje się w następującym folderze.

    Uwaga

    Sysvol może znajdować się w innej lokalizacji, ale ścieżka do pliku Gpttmpl.inf będzie taka sama.

    W przypadku kontrolerów domeny Windows Server 2003:

    C:\WINDOWS\Sysvol\Sysvol\<Domainname>\Policies\{6AC1786C-016F-11D2-945F-00C04fB984F9}\MACHINE\Microsoft\Windows NT\SecEdit\GptTmpl.inf

    Dla kontrolerów domeny Windows 2000 Server:

    C:\WINNT\Sysvol\Sysvol\<Domainname>\Policies\{6AC1786C-016F-11D2-945F-00C04fB984F9}\MACHINE\Microsoft\Windows NT\SecEdit\GptTmpl.inf

  2. Po prawej stronie wpisu SeNetworkLogonRight dodaj identyfikatory zabezpieczeń dla administratorów, użytkowników uwierzytelnionych i wszystkich. Zobacz następujące przykłady.

    Dla kontrolerów domeny Windows Server 2003:

    SeNetworkLogonRight = *S-1-5-32-554,*S-1-5-9,*S-1-5-32-544,*S-1-1-0

    Dla kontrolerów domeny Windows 2000 Server:

    SeNetworkLogonRight = *S-1-5-11,*S-1-5-32-544,*S-1-1-0

    Uwaga

    Administratorzy (S-1-5-32-544), Użytkownicy uwierzytelnieni (S-1-5-11), Wszyscy (S-1-1-0) i Kontrolery Enterprise (S-1-5-9) używają dobrze znanych identyfikatorów zabezpieczeń, które są takie same w każdej domenie.

  3. Usuń wszelkie wpisy na prawo od wpisu SeDenyNetworkLogonRight (Odmowa dostępu do tego komputera z sieci), aby pasowały do poniższego przykładu.

    SeDenyNetworkLogonRight =

    Uwaga

    Przykład jest taki sam dla Windows 2000 Server i Windows Server 2003.

    Domyślnie, Windows 2000 Server nie ma żadnych wpisów we wpisie SeDenyNetworkLogonRight. Domyślnie, Windows Server 2003 ma tylko konto Support_random string we wpisie SeDenyNetworkLogonRight. (Konto Support_random string jest używane przez usługę Remote Assistance.) Ponieważ konto Support_random string używa innego identyfikatora zabezpieczeń (SID) w każdej domenie, nie można go łatwo odróżnić od typowego konta użytkownika na podstawie identyfikatora SID. Możesz skopiować SID do innego pliku tekstowego, a następnie usunąć SID z wpisu SeDenyNetworkLogonRight. W ten sposób można go umieścić z powrotem po zakończeniu rozwiązywania problemu.

    SeNetworkLogonRight i SeDenyNetworkLogonRight mogą być zdefiniowane w dowolnej polityce. Jeśli poprzednie kroki nie rozwiążą problemu, należy sprawdzić plik Gpttmpl.inf w innych politykach w Sysvol, aby upewnić się, że prawa użytkownika nie są tam również zdefiniowane. Jeśli plik Gpttmpl.inf nie zawiera odniesienia do SeNetworkLogonRight lub SeDenyNetworkLogonRight, to znaczy, że te ustawienia nie są zdefiniowane w polityce i ta polityka nie jest przyczyną problemu. Jeśli te wpisy istnieją, upewnij się, że odpowiadają ustawieniom wymienionym wcześniej dla polityki Default Domain Controller.

Metoda 4: Sprawdź, czy atrybut userAccountControl kontrolera domeny ma wartość 532480

  1. Kliknij Start, kliknij Uruchom, a następnie wpisz adsiedit.msc.
  2. rozwiń Domain NC, rozwiń DC=domain, a następnie rozwiń OU=Domain Controllers.
  3. Kliknij prawym przyciskiem myszy kontroler domeny, którego to dotyczy, a następnie kliknij Properties.
  4. W Windows Server 2003 kliknij, aby zaznaczyć pole wyboru Show mandatory attributes (Pokaż atrybuty obowiązkowe) i pole wyboru Show optional attributes (Pokaż atrybuty opcjonalne) na karcie Attribute Editor (Edytor atrybutów). W systemie Windows 2000 Server kliknij przycisk Both w polu Select which properties to view.
  5. W systemie Windows Server 2003 kliknij pozycję userAccountControl w polu Attributes. W Windows 2000 Server, kliknij userAccountControl w polu Wybierz właściwość do wyświetlenia.
  6. Jeśli wartość nie jest 532480, wpisz 532480 w polu Edycja atrybutu, kliknij Ustaw, kliknij Zastosuj, a następnie kliknij OK.
  7. Zakończ edycję ADSI.

Metoda 5: Ustalenie sfery Kerberos (potwierdzenie zgodności klucza rejestru PolAcDmN i klucza rejestru PolPrDmN)

Uwaga

Ta metoda dotyczy tylko systemu Windows 2000 Server.

Ważne

Ta sekcja, metoda lub zadanie zawiera kroki umożliwiające modyfikację rejestru. W przypadku nieprawidłowej modyfikacji rejestru mogą jednak wystąpić poważne problemy. Dlatego należy dokładnie wykonać te kroki. Dla dodatkowej ochrony przed modyfikacją rejestru należy utworzyć jego kopię zapasową. Dzięki temu w razie wystąpienia problemu można przywrócić rejestr. Aby uzyskać więcej informacji na temat tworzenia kopii zapasowej i przywracania rejestru, kliknij następujący numer artykułu, aby wyświetlić artykuł w Bazie wiedzy firmy Microsoft:
322756 Jak utworzyć kopię zapasową i przywrócić rejestr w systemie Windows

  1. Uruchom Edytor rejestru.
  2. W lewym okienku rozwiń Zabezpieczenia.
  3. On the Security menu, click Permissions to grant the Administrators local group Full Control of the SECURITY hive and its child containers and objects.
  4. Locate the HKEY_LOCAL_MACHINE\SECURITY\Policy\PolPrDmN key.
  5. In the right pane of Registry Editor, click the <No Name>: REG_NONE entry one time.
  6. On the View menu, click Display Binary Data. In the Format section of the dialog box, click Byte.
  7. The domain name appears as a string in the right side of the Binary Data dialog box. The domain name is the same as the Kerberos realm.
  8. Locate the HKEY_LOCAL_MACHINE\SECURITY\Policy\PolACDmN registry key.
  9. In the right pane of Registry Editor, double-click the <No Name>: REG_NONE entry.
  10. In the Binary Editor dialog box, paste the value from PolPrDmN. (Wartość z PolPrDmN będzie nazwą domeny NetBIOS).
  11. Zrestartuj kontroler domeny.

Metoda 6: Zresetuj hasło konta maszynowego, a następnie uzyskaj nowy bilet Kerberos

  1. Zatrzymaj usługę Kerberos Key Distribution Center, a następnie ustaw wartość startową na Manual.

  2. Użyj narzędzia Netdom z Narzędzi pomocniczych systemu Windows 2000 Server lub Narzędzi pomocniczych systemu Windows Server 2003, aby zresetować hasło konta maszynowego kontrolera domeny:

    netdom resetpwd /server: <another domain controller> /userd:domain\administrator /passwordd: <administrator password> 

    Upewnij się, że polecenie netdom jest zwracane jako zakończone pomyślnie. Jeśli tak nie jest, to znaczy, że polecenie nie zadziałało. Dla domeny Contoso, gdzie kontroler domeny, którego dotyczy problem, to DC1, a działający kontroler domeny to DC2, wykonaj następujące polecenie netdom z konsoli DC1:

    netdom resetpwd /server:DC2 /userd:contoso\administrator /passwordd: <administrator password>
  3. Zrestartuj kontroler domeny, którego dotyczy problem.

  4. Start the Kerberos Key Distribution Center service, and then set the startup setting to Automatic.

For more information about this issue, click the following article numbers to view the articles in the Microsoft Knowledge Base:
323542 You cannot start the Active Directory Users and Computers tool because the server is not operational