第一招:檢查活動目錄數據庫文件與SYSVOL文件夾
記得筆者在以前的文章中,談到過活動目錄的SYSVOL文件夾的重要性。在這個文件夾中,會存儲一些重要的信息,如我們后續建立的組策略等等。為了安全起見,我們需要手工檢查這個文件夾的準確性。一般來說,SYSVOL文件夾下有四個文件夾,其中,sysvol文件夾必須為共享文件夾。SYSVOL文件夾的默認位置在%systemroot%SYSVOL文件夾內。所以,我們可以在開始、運行中,直接輸入%systemroot%SYSVOL這個路徑,來打開SYSVOL文件夾,看其下面是否有四個文件夾,并且,sysvol文件夾是否是共享。若不符合這些特征的話,則說明域控制器安裝有問題,需要進一步查出問題的原因,否則的話,域控制器運行可能會不正常。
活動目錄數據庫文件與日志文件也是活動目錄運行的基礎文件之一。特別是日志文件,是我們后續排除故障的重要依據。所以,我們在域控制器安裝以后,要確保域控制器已經正確安裝了活動目錄數據庫文件與日志文件。一般,我們也可以通過手工來檢查這些文件是否安裝準確。如我們可以在開始、運行處,直接輸入%systemroot%ntds,打開ntds文件夾,然后來檢查文件夾與文件是否被正確建立。
第二招:利用NSLOOKUP命令來檢查SRV紀錄
為了活動目錄能夠正常的工作,DNS服務器必須支持服務定位(SRV)資源記錄,資源記錄把服務名字映射為提供服務的服務器名字。活動目錄客戶和域控制器使用SRV資源記錄決定域控制器的IP地址。也就是說,當SRV紀錄不能夠被正確定義時,活動目錄的運行將會受到非常重大的不利影響。
要如何驗證SRV紀錄是否準確呢?我們可以利用NSLOOKUP命令來判斷,具體方法如下:
1、NSLOOKUP命令是一個命令行程序,是用來查詢域名信息的一個很重要的命令。我們可以在開始、運行處,輸入CMD命令,進入到命令行界面。一般情況下,在這個界面中就可以直接調用NSLOOKUP命令。
2、然后在提示符下面輸入nslookup命令。不需要輸入完整的路徑,直接輸入該命令即可。然后,設置nslookup的類型,利用命令set type=srv命令來進行。
3、然后,我們輸入_ldap._tcp.dc_msdcs.域名,從顯示出來的結果中,我們可以查看域控制器是否已經成功的將其扮演LDAP服務器角色的信息登記到了DNS服務器內。
LDAP是一個輕量目錄協議,他的作用就是使得每個用戶能夠定位組織、個體以及其它穩拿滾落資源,如打印機等設備的軟件協議。LDAP使你能尋找一個個體而不需要知道何處他們的位置,雖然還有其它信息能幫助你查。LDAP 目錄被組織成一個簡單的“樹”型層結構,由以下級別組成。最上面是,根目錄 ,又稱開始地或樹的源,下面的分支都從這里出來。個體,如用戶、共享文件,和共享資源,比如打印。LDAP 目錄可能分布在許多服務器之中。各臺服務器可能有階段性地同步總目錄的一個復制的版本。LDAP 服務器被稱為目錄系統代理。LDAP 服務器從用戶處得到一個請求并負責完成這個請求,如果有必要的話還會把它傳送給目錄系統代理,通過它對其它目錄系統代理保持同步是非常有必要的,其保證為用戶提供一個協調應答。
可見,LDAP協議對于活動目錄的重要性。故需要通過NSLOOKUP命令來檢查這個協議配置的準確性。
4、在有必要的情況下,還可以利用其它類似的命令來查看其它的SRV紀錄,最常見的可以利用_tcp來查詢。 _TCP是SRV中的一個重要的分組。在這個分組中,收集了DNS區域中的所有域控制器。如果客戶端找不到它們特定的站點,或者具有本地SRV記錄的任何域控制器都沒有響應,需要尋找網絡中其他地方的域控制器,就應該將這些客戶端放到這個分組中。
在實際工作中,我們最常見的錯誤就是在DNS服務器中找不到SRV紀錄。如當我們建立了DNS服務器與域控制器之后,若部署DNS服務器或者域控制器的主機IP地址屬性中,在主DNS地址中必須填寫這臺DNS服務器的IP地址。否則的話,在DNS服務器中將找不到這條SRV紀錄。當出現這個問題的時候,我們不需要重新安裝活動目錄,而只需要把IP地址屬性中的主DNS紀錄改過來,然后,重新啟動NETLOGON服務即可。
另外,以前我在Windows2000的服務器系統上部署域控制器的時候,也發現過SRV紀錄丟失的情況。經過我的測試,當域控制器或者DNS服務器配置不當的時候,就可能造成2000環境下的SRV紀錄出現丟失的情況。如當DNS服務器被配置為動態獲得IP地址,也就是說,其是DHCP服務器的客戶端,而不是固定IP地址,就會出現SRV紀錄丟失;又或者DNS中該區域不支持動態更新,或者DNS區域具有不同于活動目錄域名的名稱時,也會出現這種錯誤。一般在這種情況下,我們也不需要重新安裝活動目錄,而只需要把配置改正確即可,如配置DNS服務器使之采用靜態的IP地址;又或者在活動目錄命名中創建正向搜索區域,并且設置為自動更新。然后重新啟動以下Netlogon服務即可。重新啟動Netlogon服務,會強迫域控制器重新注冊適當的SRV紀錄。
另外,反向搜索不是必須的。如我們有時候在運行NSLOOKUP命令的時候,會出現timedout的錯誤提示。則表示沒有在DNS服務器中建立一個用來存儲此DNS服務器的PTR紀錄的反向查找區域。一般來說,可以不用理睬這個錯誤信息。沒有反向搜索紀錄,不會影響活動目錄的運行。
第三招:SRV登記失敗問題
我在安裝活動目錄的那篇文章中,談到可以先建立DNS服務器,再建立域控制器;也可以先建立域控制器,然后再建立DNS服務器。若我們是先建域控制器再順便建立DNS服務器的話,則在活動目錄安裝的過程中,會自動在此DNS服務器內建立一個支持這個域的區域。但是,如果我們在建立域控制器的過程中,采用其它的DNS服務器,則該DNS服務器內需要一個用來支持活動目錄域的區域。如果目前DNS服務器內沒有這個區域,則必須在建立域控制器前,預先添加這個域。
當出現一些特定的情況,無法在DNS服務器上正常添加域時,可以手工進行登記。當然,如此處理的話是有前提條件的。一般情況下,只有因為域控制器IP地址屬性出現錯誤、網絡連接出現問題或者DNS配置錯誤的情況下,才可以利用這種方法來處理。
如果是因為域控制器的IP地址設置出現了問題或者主機名稱沒有被正確登記到DNS服務器內的話,則可以到該域控制器上,進行手工登記。如可以利用registerdns參數進行定義。
總之,在域控制器安裝完畢后,需要確保其安裝的準確性。否則的話,我們后續的工作可能都會白做。再說,驗證其安裝的準確性,也不是一件很麻煩的事情。另外,最好能夠在活動配置完成后,對域控制器進行備份。防止因為后續配置的錯誤,導致災難性的損失,從而需要重新安裝活動目錄。


