WINDOWS DNS備份、還原

WINDOWS DNS備份、還原

DNS備份
當你的DNS服務器正常運行起來後,大家可以按照下列步驟對自己的服務器配置進行備份:
1. 停止DNS服務。
2. 打開Regedit程序,找到鍵
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\DNS。
3. 右鍵單擊DNS文件夾並且選擇“導出”。把文件命名爲dns1然後按Enter鍵。
4. 現在找到鍵
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server。
5. 右鍵單擊DNS Server文件夾,並且選擇“導出”命令。把文件命名爲dns2然後按Enter鍵。
在前面的步驟中我們創建了兩個注表文件,分別叫dns1.reg和dns2.reg。把它們存入到移動存儲或者保存在不在此服務器上的其他媒體中。
打開文件夾\Windows\System32\DNS並且把其中所有後綴爲.dns的文件都複製出來。也保存到你存儲.reg文件的媒體中。現在你已經完成了備份,接下來重新啓動DNS服務。

DNS的恢復
如果你的DNS服務器出現了故障,那麼你可以迅速找到另一臺機器代替它,設置步驟如下:
1.建立一個Server2003系統。給它取與所代替機器相同的名字,使用相同的DNS後綴和IP地址。
2.在其系統中安裝DNS服務。
3.停用DNS服務。
4.把所有後綴爲.dns的文件複製到這臺機器的\windows\system32\dns文件夾下。
5.找到那兩個後綴爲.reg的文件。雙擊它們,一次一個,並且確認自己想把它們安裝到註冊表中。
6.重新啓動DNS服務。
現在你就擁有了原DNS服務器的一個替代系統。要記住,如果你只想把一個區域的主服務器角色從一臺機器轉移到另一臺機器,那麼只需要把*.dns文件複製到目標計算機上就行了,然後再運行“新建區域”嚮導程序,告訴它你已經有了一個區域文件。
7.在目標 DNS 服務器上,啓動 DNS 服務器服務。要開始註冊服務器的 A 和 PTR 資源記錄,請在命令提示符下運行以下命令:
ipconfig /registerdns
8.如果此服務器同時還是域控制器,請停止並重新啓動 Net Logon 服務來註冊服務 (SRV) 記錄,或在命令提示符下運行以下命令:
netdiag /fix
9. 如果替換 DNS 服務器是域控制器,則可將其上以前是 Active Directory 集成區域的標準區域轉換回 Active Directory 集成區域。
10.確認每個區域上的 SOA 資源記錄包含正確的主服務器名,並且區域的 NS 資源記錄正確無誤。



另一種方法
現在的服務器上運行了很多系統服務,雖然中間沒有出過什麼問題,但是還是怕,要是出了問題,就是好幾天的時間沒有了,累4人的事情啊。所以要把什麼東西都backup一下。ghost備份的是系統,但是服務的配置是隨時在變化的,總不能時不時的來個ghost吧,再說沒有顯示器,很麻煩的。
研究了一個下午,終於實現了DNS和DHCP的自動備份。[dog]
DNS的備份
1、停止DNS服務
2、打開regedit,找到HKLM\system\currentcontrolset\services\dns
3、將DNS這個分支導出。命名爲DNS-1
4、找到HKLM\software\microsoft\windows NT\currentversion\DNS server
5、將DNSserver分支導出,命名爲DNS-2
6、打開\windows\system32\DNS ,把其中的所有*.dns文件複製出來,並和DNS-1.reg及DNS-2.reg保存在一起。
把上述內容備份出來即可。
DNS的恢復:
1、當區域裏的DNS服務器發生故障,重新建立一臺win2003服務器,並與所要替代的DNS服務器起相同的名字,設置相同的DNS後綴和IP地址。
2、在新系統中安裝並啓動DNS服務。
3、把前面備份出來的*.dns文件複製到新系統的\windows\system32\dns文件夾中。
4、停用DNS服務。
5、把備份的dns-1.reg和dns-2.reg導入到註冊表中。
6、重新啓動DNS服務。
dhcp的快速備份
命令行:
netsh dhcp server dump >dhcp_bak.txt
備份完成。
如果原DHCP服務器損壞,需要新建一臺DHCP服務器,並把DHCP-bak.txt複製過來。
在命令行運行:
netsh exec dhcp_bak.txt
這樣,相關的信息就恢復了,但租約信息用這種辦法無法恢復。

這只是手動實現的方法,作爲服務器,這樣做是不夠的,天天去備份不但費事也很不保險(忘記了怎麼辦?),所以我們可以做個批處理,然後建立個任務,讓它自動的實現備份。

以下是備份的代碼:

=================================================
@echo Backup DNS config start…………
@echo 請在D盤下建立backup\DNS和DNCP兩個文件夾
::拷貝system32\dns下的dns文件
copy c:\windows\system32\dns\*.dns d:\backup\DNS /y
::導出註冊表文件
regedit /e d:\backup\DNS\DNS-1.reg HKEY_LOCAL_MACHINE\system\currentcontrolset\services\dns
::全路徑文件名兩側加上引號
regedit /e d:\backup\DNS\DNS-2.reg "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\DNS Server"
@echo DNS config backup complete!
@echo Backup DHCP config start…………
::備份dhcp文件
netsh dhcp server dump >d:\backup\dhcp\dhcp_bak.txt /y
echo DHCP config backup complete!
echo off
exit
=========================================================
把上面的代碼保存爲bat文件就可以了,雙擊運行就可以自動完成DNS和DHCP的備份了。
HCP和DNS自動恢復代碼:
===============================================
@echo Resume DNS config start…………
net stop dns
::把.dns文件拷貝到system32\dns下
copy d:\backup\DNS\*.dns c:\windows\system32\dns /y
::導入註冊表文件

reg import d:\backup\DNS\DNS-1.reg
reg import d:\backup\DNS\DNS-2.reg
net start dns
@echo DNS Resume complete!
@echo Resume DHCP config start…………
::恢復dhcp文件
net stop tcpsvcs
netsh exec d:\backup\dhcp\dhcp_bak.txt
net start tcpsvcs
echo DHCP config resume complete!
echo off
exit
===========================================
這裏涉及到註冊表的導出和導入問題
導出:
regedit /e filename path
當出現空格時要用引號把整個路徑引起來,不然在dos下是不識別空格的
導入:
開始的時候實了下regedit /s命令,好像沒有用,所以用了reg import命令,在windows 2003下通過測試!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章