文章編號: 837513 - 上次校閱: 2007年2月2日 - 版次: 1.5

網域控制站無法正常運作

重要 本文包含有關修改登錄的相關資訊。修改登錄之前,請務必將它備份起來,並瞭解如何在發生問題時還原登錄。如需有關如何備份、還原和編輯登錄的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
256986? (http://support.microsoft.com/kb/256986/ ) Microsoft Windows 登錄說明

在此頁中

全部展開 | 全部摺疊

徵狀

當您在 Microsoft Windows 2000 Server 或 Windows Server 2003 的網域控制器上執行 Dcdiag 工具時,可能會收到下列錯誤訊息:
DC Diagnosis (DC 診斷)
Performing initial setup: (執行初始安裝:)
[DC1] LDAP bind failed with error 31 ([DC1] LDAP 繫結失敗,錯誤 31)
如果您在網域控制站上以本機方式執行 REPADMIN /SHOWREPS 公用程式,可能會收到下列錯誤訊息:
[D:\nt\private\ds\src\util\repadmin\repinfo.c, 389] LDAP error 82 (Local Error). ([D:\nt\private\ds\src\util\repadmin\repinfo.c, 389] LDAP 錯誤 82 (本機錯誤))。

如果您在受到影響的網域控制站主控台上,嘗試使用網路資源,例如「通用命名慣例」(UNC,Universal Naming Convention) 資源或對應的網路磁碟機,可能會收到下列錯誤訊息:
No logon servers available (c000005e = "STATUS_NO_LOGON_SERVERS") (沒有可用的登入伺服器 (c000005e = "STATUS_NO_LOGON_SERVERS"))
如果您在受到影響的網域控制站主控台上,啟動任何的 Active Directory 系統管理工具,包括「Active Directory 站台及服務」與「Active Directory 使用者和電腦」,可能會收到下列其中一項錯誤訊息:
Naming information cannot be located because: No authority could be contacted for authentication. Contact your system administrator to verify that your domain is properly configured and is currently online. (因為下列原因找不到命名資訊:無法聯絡到驗證的授權單位。請聯絡您的系統管理員,確定您的網域設定是否正確以及是否在連線狀態)。
Naming information cannot be located because: Target account name is incorrect. Contact your system administrator to verify that your domain is properly configured and is currently online. (因為下列原因找不到命名資訊:目標帳戶名稱不正確。請聯絡您的系統管理員,確定您的網域設定是否正確以及是否在連線狀態)。
經由受到影響的網域控制站連接到 Microsoft Exchange Server 電腦的 Microsoft Outlook 用戶端,即使他們曾經從其他網域控制站成功地使用登入驗證,但仍可能會要求他們提出登入認證以進行驗證。

Netdiag 工具可能會顯示下列錯誤訊息:
DC list test. (DC 清單測試)。. . . . . . . . . . : Failed (失敗)
[WARNING] Cannot call DsBind to servername.fqdn (ip address). ([警告] 無法呼叫 DsBind 到 <伺服器名稱>.<fqdn> (<IP 位址>))。 [ERROR_DOMAIN_CONTROLLER_NOT_FOUND]
Kerberos test. (Kerberos 測試)。. . . . . . . . . . : Failed (失敗)
[FATAL] Kerberos does not have a ticket for krbtgt/fqdn. ([嚴重錯誤] Kerberos 沒有 krbtgt/<fqdn> 的票證)。
[FATAL] Kerberos does not have a ticket for hostname. ([嚴重錯誤] Kerberos 沒有 <hostname> 的票證)。
LDAP test. (LDAP 測試)。. . . . . . . . . . . . : Passed (通過)
[WARNING] Failed to query SPN registration on DC hostname\fqdn ([警告] 無法在 DC <hostname>\<fqdn> 上查詢 SPN 登錄)


在受到影響的網域控制站,下列事件可能會記錄於系統事件日誌中。

類型:錯誤
來源:Service Control Manager
事件 ID:7023
描述:Kerberos 金鑰發佈中心 (KDC,Key Distribution Center) 服務因為發生下列錯誤而終止:The security account manager (SAM) or local security authority (LSA) server was in the wrong state to perform the security operation. (「安全性帳戶管理員」(SAM,Security Account Manager) 或「本機安全性授權」(LSA,Local Security Authority) 伺服器的狀態不適用於執行安全性作業)。

解決方案

有許多解決方案可以解決這些徵狀。下列為可以嘗試使用的方法清單, 而清單的後面即為執行各項方法的步驟, 請嘗試每一種方法直到問題完全解決為止。而列在本文最後面的「Microsoft 知識庫」文件,則是解決這些徵狀較不常用的修正程式。
  1. 方法 1:修正「網域名稱系統」(DNS,Domain Name System) 的錯誤。
  2. 方法 2:同步化電腦之間的時間。
  3. 方法 3:檢查 [從網路存取這台電腦] 的使用者權限。
  4. 方法 4:確認網域控制站的 userAccountControl 屬性為 532480。
  5. 方法 5:修正 Kerberos 領域 (確認 PolAcDmN 登錄機碼與 PolPrDmN 登錄機碼相符)。
  6. 方法 6:重設機器的帳戶密碼,再取得新的 Kerberos 票證。

方法 1:修正 DNS 的錯誤

  1. 在命令提示字元,執行 netdiag -v 命令; 這個命令會在執行該命令的資料夾中建立 Netdiag.log 檔。
  2. 繼續執行操作之前,請先解決 Netdiag.log 檔中所有的 DNS 錯誤。Netdiag 工具位於 Windows 2000 Server CD-ROM 的「Windows 2000 Server 支援工具」中,或者您也可以自行下載。如果要下載 Windows 2000 Server 支援工具,請造訪下列 Microsoft 網站:
    http://www.microsoft.com/windows2000/downloads/servicepacks/sp4/supporttools.mspx (http://www.microsoft.com/windows2000/downloads/servicepacks/sp4/supporttools.mspx)
  3. 請確認 DNS 已經正確地設定。最常見的一項 DNS 錯誤為:將網域控制站的 DNS 指向網際網路服務提供者 (ISP,Internet Service Provider),而不是將 DNS 指向它本身,或指向其他支援動態更新和 SRV 記錄的 DNS 伺服器。 建議您將網域控制站指向它自己,或其他支援動態更新和 SRV 記錄的 DNS 伺服器。同時也建議您設定 ISP 的轉寄站,以方便在網際網路上解析名稱。
如需有關在 Active Directory 目錄服務中設定 DNS 的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
291382? (http://support.microsoft.com/kb/291382/ ) Windows 2000 DNS 和 Windows Server 2003 DNS 的常見問題集
237675? (http://support.microsoft.com/kb/237675/ ) 為 Active Directory 設定網域名稱系統
254680? (http://support.microsoft.com/kb/254680/ ) DNS 名稱區規劃
255248? (http://support.microsoft.com/kb/255248/ ) How To Create a Child Domain in Active Directory and Delegate the DNS Namespace to the Child Domain

方法 2: 同步化電腦之間的時間

請確認兩部網域控制站的時間已經正確地同步化。 此外,也請確認用戶端電腦和網域控制站之間的時間都已經正確地同步化。

如需有關如何設定 Windows 時間服務的詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
258059? (http://support.microsoft.com/kb/258059/ ) 如何在 Windows NT 4.0 網域中同步 Windows 2000 或 Window XP 電腦的時間
216734? (http://support.microsoft.com/kb/216734/ ) 如何在 Windows 2003 中設定授權時間伺服器

方法 3: 檢查 [從網路存取這台電腦] 的使用者權限。

請修改 Gpttmpl.inf 檔,確認適用的使用者在網域控制站上具有 [從網路存取這台電腦] 使用者權限。如果要執行這項操作,請依照下列步驟執行:
  1. 修改「預設網域控制站原則」的 Gpttmpl.inf 檔。 根據預設值,「預設網域控制站原則」就是定義網域控制站使用者權限的地方; 「預設網域控制站原則」的 Gpttmpl.inf 檔預設位置位於下列資料夾中。

    注意 Sysvol 可能位於不同的位置中,但是 Gpttmpl.inf 檔的路徑卻都是一樣。

    Windows Server 2003 的網域控制站:

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

    Windows 2000 Server 的網域控制站:

    C:\WINNT\Sysvol\Sysvol\<Domainname>\Policies\{6AC1786C-016F-11D2-945F-00C04fB984F9}\MACHINE\Microsoft\Windows NT\SecEdit\GptTmpl.inf
  2. 至於 [SeNetworkLogonRight] 項目的權限,請為系統管理員、通過驗證的使用者和每個人 (Everyone) 加入安全性識別元; 請參閱下列範例。

    Windows Server 2003 的網域控制站:

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

    Windows 2000 Server 的網域控制站:

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

    注意 系統管理員 (S-1-5-32-544)、通過驗證的使用者 (S-1-5-11)、每個人 (S-1-1-0) 和企業網域控制站 (S-1-5-9) 所使用的已知安全性識別元,在每一個網域中都是相同的。
  3. 請移除 [SeDenyNetworkLogonRight] 項目所有的權限項目 (拒絕從網路存取這台電腦),以符合下列範例。

    SeDenyNetworkLogonRight =

    注意 Windows 2000 Server 和 Windows Server 2003 的範例都一樣。

    根據預設值,Windows 2000 Server 的 [SeDenyNetworkLogonRight] 項目中並沒有任何的項目; 而 Windows Server 2003 預設的設定只有 [SeDenyNetworkLogonRight] 項目中的 Support_random string 帳戶。 (Support_random string 帳戶是用於「遠端協助」)。因為 Support_random string 帳戶在每一個網域中都使用不同的安全性識別元 (SID),所以只有查看 SID 並不太容易分辨出一般使用者的帳戶。您可以先將 SID 複製到其他文字檔,然後再從 [SeDenyNetworkLogonRight] 項目中移除 SID。 如此一來,當您完成此問題的疑難排解之後,就可以將其恢復原狀。

    在所有原則中,都可以定義 [SeNetworkLogonRight] 和 [SeDenyNetworkLogonRight] 項目。如果前述的步驟並未解決這個問題,請檢查 Sysvol 中其他原則的 Gpttmpl.inf 檔,確認這些原則也都沒有定義使用者權限。如果 Gpttmpl.inf 檔並未包括 [SeNetworkLogonRight] 或 [SeDenyNetworkLogonRight] 的參考,該原則就不會定義那些設定值,因此也就不會發生這個問題。 如果那些項目確實存在,請確認他們完全符合前面所述「預設網域控制站」原則的設定值。

方法 4: 確認網域控制站的 userAccountControl 屬性為 532480

  1. 按一下 [開始],再按一下 [執行],然後輸入 adsiedit.msc
  2. 依序展開 [Domain NC][DC=domain][OU=Domain Controllers]
  3. 在受到影響的網域控制器上按一下滑鼠右鍵,再按一下 [內容]
  4. 在 Windows Server 2003,按一下以選取 [屬性編輯器] 索引標籤中的 [顯示強制屬性][顯示選擇性屬性] 核取方塊。在 Windows 2000 Server 中,按一下 [Select which properties to view] 方塊中的 [Both]
  5. 在 Windows Server 2003 中,按一下 [屬性] 方塊中的 [userAccountControl]。在 Windows 2000 Server 中,按一下 [Select a property to view] 方塊中的 [userAccountControl]
  6. 如果數值不是 532480,請在 [編輯屬性] 方塊中輸入 532480,再依序按一下 [設定][套用][確定]
  7. 結束 ADSI Edit。

方法 5: 修正 Kerberos 領域 (確認 PolAcDmN 登錄機碼與 PolPrDmN 登錄機碼相符)

注意 這個方法只限使用於 Windows 2000 Server 中。
警告 不當使用「登錄編輯程式」可能會導致嚴重的問題,甚至必須重新安裝作業系統。Microsoft 並不保證可以解決您不當使用「登錄編輯程式」所導致的問題。請自行承擔使用「登錄編輯程式」的一切風險。
  1. 啟動「登錄編輯程式」。
  2. 在左邊窗格中,展開 [安全性]
  3. [安全性] 功能表中,按一下 [權限],讓系統管理員取得本機群組的安全性 Hive 及其子容器和物件的「完全控制」。
  4. 找到 HKEY_LOCAL_MACHINE\SECURITY\Policy\PolPrDmN 機碼。
  5. 在 [登錄編輯程式] 的右邊窗格中,按一下 [<No Name>:REG_NONE] 項目。
  6. 按一下 [檢視] 功能表上的 [顯示二進位資料]。 在對話方塊中的 [格式化] 區段,按一下 [位元組]
  7. 網域名稱會以字串方式顯示在 [二進位資料] 對話方塊中的右邊, 而且網域名稱會和 Kerberos 領域的名稱相同。
  8. 找到 HKEY_LOCAL_MACHINE\SECURITY\Policy\PolACDmN 登錄機碼。
  9. 在 [登錄編輯程式] 的右邊窗格中,按兩下 [<No Name>: REG_NONE] 項目。
  10. [二進位編輯程式] 對話方塊中,貼上 PolPrDmN 的數值。 (PolPrDmN 的數值即為 NetBIOS 的網域名稱)。
  11. 重新啟動網域控制站。

方法 6: 重設機器的帳戶密碼,再取得新的 Kerberos 票證

  1. 停止 Kerberos 金鑰發佈中心的服務,再將啟動值設定為 [手動]。
  2. 使用「Windows 2000 Server 支援工具」或「Windows Server 2003 支援工具」中的 Netdom 工具,重設網域控制站的機器帳戶密碼:

    netdom resetpwd /server:其他網域控制站 /userd:domain\administrator /passwordd:系統管理員密碼

    請確認 Netdom 命令會在執行成功之後傳回來; 如果沒有傳回,表示該命令並未正常運作。例如,在 Contoso 網域中,受到影響的網域控制站為 DC1,而正在作業中的網域控制站則為 DC2,您可以從 DC1 主控台執行下列 Netdom 命令:

    netdom resetpwd /server:DC2 /userd:contoso\administrator /passwordd:系統管理員密碼
  3. 重新啟動受到影響的網域控制站。
  4. 啟動 Kerberos 金鑰發佈中心的服務,再將啟動值設定為 [自動]

如需有關這個問題的其他詳細資訊,請按一下下面的文件編號,檢視「Microsoft 知識庫」中的文件:
325322? (http://support.microsoft.com/kb/325322/ ) "The server is not operational" error message when you try to open Exchange System Manager
284929? (http://support.microsoft.com/kb/284929/ ) Cannot start Active Directory snap-ins; error message states that no authority could be contacted for authentication
257623? (http://support.microsoft.com/kb/257623/ ) Domain controller's Domain Name System suffix does not match domain name
257346? (http://support.microsoft.com/kb/257346/ ) "Access This Computer from the Network" user right causes tools not to work
316710? (http://support.microsoft.com/kb/316710/ ) Disabled Kerberos key distribution prevents Exchange services from starting
329642? (http://support.microsoft.com/kb/329642/ ) Error messages when you open Active Directory snap-ins and Exchange System Manager
272686? (http://support.microsoft.com/kb/272686/ ) Error messages occur when Active Directory Users and Computers snap-in is opened
323542? (http://support.microsoft.com/kb/323542/ ) You cannot start the Active Directory Users and Computers tool because the server is not operational
329887? (http://support.microsoft.com/kb/329887/ ) You cannot interact with Active Directory MMC snap-ins
325465? (http://support.microsoft.com/kb/325465/ ) 使用 Windows Server 2003 系統管理工具時,Windows 2000 網域控制站需要 SP3 (含) 以後版本
322267? (http://support.microsoft.com/kb/322267/ ) Removing Client for Microsoft Networks removes other services
297234? (http://support.microsoft.com/kb/297234/ ) Time difference exists between the client and the server
247151? (http://support.microsoft.com/kb/247151/ ) Down-level domain users may receive an error message when starting MMC snap-ins
280833? (http://support.microsoft.com/kb/280833/ ) Failure to specify all DNS zones in proxy client leads to DNS failures that are difficult to track
322307? (http://support.microsoft.com/kb/322307/ ) Cannot start Exchange Services or Active Directory snap-ins after you install Service Pack 2 (SP2) for Windows 2000

這篇文章中的資訊適用於:
  • Microsoft Windows Server 2003, Standard Edition (32-bit x86)
  • Microsoft Windows Server 2003, Enterprise Edition (32-bit x86)
  • Microsoft Windows Server 2003, Datacenter Edition (32-bit x86)
  • Microsoft Windows 2000 Datacenter Server
  • Microsoft Windows 2000 Advanced Server
  • Microsoft Windows 2000 Server
關鍵字:?
kberrmsg kbtshoot kbactivedirectory kbactivedirectoryrepl kbevent KB837513
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
 

文章翻譯