Solved

Backup/Restore DNS

Posted on 2014-02-12
9
507 Views
Last Modified: 2014-02-14
Hi,

I'm looking for an easy way to be able to export/restore our DNS.  The DNS server is a Domain Controller so Active Directory is on there as well.  In case we have an incident where DNS zones/entries have been deleted, we would like an easy way to be able to restore them if needed.

Please let me know step by step on how to perform these tasks whether it be through a script or third party app.

Thanks
0
Comment
Question by:Lumious
  • 5
  • 4
9 Comments
 
LVL 34

Expert Comment

by:Paul MacDonald
ID: 39854593
0
 

Author Comment

by:Lumious
ID: 39855293
Hi,

I see that you have replied on my other post about DHCP.  But this post is about DNS Backups/Restores, not specifically DHCP.

Please let me know when you get a chance.

Thanks
0
 
LVL 34

Expert Comment

by:Paul MacDonald
ID: 39855941
I apologize for conflating the two posts!

As we're talking about Active Directory Integrated DNS, all the DNS information is backed up when you backup the System State of the Domain Controller.  Ideally, you should have multiple DCs, each running DNS, so the loss of a single DC doesn't impact Active Directory or your internal DNS.

You would really have to mess DNS up to justify doing a restore from backup.  But if you found yourself in that position, I would recommend doing an Authoritative Restore of Active Directory as well, since AD and DNS are so tightly integrated.
0
3 Use Cases for Connected Systems

Our Dev teams are like yours. They’re continually cranking out code for new features/bugs fixes, testing, deploying, testing some more, responding to production monitoring events and more. It’s complex. So, we thought you’d like to see what’s working for us.

 

Author Comment

by:Lumious
ID: 39856668
Hi,

One of our issues that we ran across recently was that on our main Domain Controller which has AD, DNS, and DHCP, some entries/zones, were removed, along with DHCP zones.  Once we noticed what happened, it had replicated out to the other DC's in the environment.  So we had to actually restore a DC from a previous backup to get the entries/zones of the DNS, grab them, and then restore them on the main DC so that it would push it out to the rest of the DC's in the environment.  So we basically had a major DNS issues all throughout our environment.

So if this ever happens again, that's why I was wondering what the best and easy way would be to be able to backup the DNS entries/zones either manually/automatically, so that we would be able to restore everything in a heartbeat if we ever needed to.

Please let me know when you get a chance.

Thanks
0
 
LVL 34

Accepted Solution

by:
Paul MacDonald earned 500 total points
ID: 39856726
AD and DNS should be consistent (it should be exactly the same) across all the Domain Controllers in a domain.  If you lost AD and/or DNS data when you lost a single Domain Controller, something was wrong.

DHCP is different of course because each server has a different piece of the total zone (the total set of IP addresses).  Nevertheless, if you have adequate IP addresses, any clients from the missing server should simply have gotten new addresses from one of the remaining DHCP servers and kept right on trucking.

Now, if someone changed DNS (removed AD records or some such) it's true those changes would propagate and cause you problems.  In that case, restoring any/all of the Domain Controllers from backup should have addressed the issue.  As far as Active Directory Integerated DNS is concerned, there is no "main server" - it's all one big namespace.  To your point, if AD is okay but AD DNS is bad, you're going to have problems that persist after doing a restore.

"If it ever happens again" here's how you can backup and restore AD DNS.  But I wouldn't rely on that.  Do System State backups, maintain several Domain Controllers, and keep the riff-raff off your server.

Hope that helps, and wasn't too preachy.
0
 

Author Comment

by:Lumious
ID: 39857630
Hi,

After reviewing you post and the link provided I believe I have a full understanding of this now.

I actually tried out the command script to backup one of the DNS zones and was successful.  

Now if I wanted to run this command script on an automated schedule, what would your suggestion be?  To run this manually I ran it through PowerShell and it exported/backed up the DNS zone to the location.

Ex:

dnscmd SERVERNAME /ZoneExport domain.com backup\domain.com.dns.bkp

Also when I tried to run this script a second time, it fails out and indicates in the PowerShell screen that "Error_Already_Exists".  So maybe there could be something added to this where it puts the "date/time" on the end of the file it exports so that it could be run again and again.

Please let me know when you think?  If I have to start up another question I can.

Thanks
0
 
LVL 34

Assisted Solution

by:Paul MacDonald
Paul MacDonald earned 500 total points
ID: 39857998
0
 

Author Comment

by:Lumious
ID: 39859169
Hi,

I've been trying to get the following command to run through task scheduler but have been unsuccessful.

dnscmd SERVERNAME /ZoneExport  DOMAIN.COM backup\DOMAIN.COM.dns.bkp

The manual way I do it, is to open powershell as Admin, and copy and paste the command into the window, and it runs successfully.

I need to know how to make this run through the task scheduler.  I'm not a scripter so I don't know what commands I have to put in the .ps1 file (powershell) in order for this to execute correctly.

Please let me know when you get a chance.

Thanks
0
 
LVL 34

Assisted Solution

by:Paul MacDonald
Paul MacDonald earned 500 total points
ID: 39859325
Per the first two links in my previous post, create a file (let's call it BackupDNS.ps1) with your command in it.  So we have a .ps1 file and in it is the line...
     dnscmd SERVERNAME /ZoneExport  DOMAIN.COM backup\DOMAIN.COM.dns.bkp

Then, in TaskScheduler, create a new task that runs powershell with the -File switch pointing to BackupDNS.ps1.  You may need the full path to PowerShell, and you may need the full path to your .ps1 file.  So the scheduled task will run...
     powershell -File BackupDNS.ps1
...and that should do it.

Depending on your operation system, the version of PowerShell you use will be at
     %SystemRoot%\system32\WindowsPowerShell\v1.0\powershell.exe
or
     %SystemRoot%\syswow64\WindowsPowerShell\v1.0\powershell.exe

Hope that helps!
0

Featured Post

Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
Macbook Sierra OS OpenVPN issue 13 80
Manual DNS and blocking mapped drives 8 96
2016 Domain Controller and IPv6 3 48
DNS issues after a power outage 3 22
This article explains how a domain name may be inadvertently appended to all DNS queries. This exhibits as described below. (CODE)And / Or: (CODE) Cause This issue can occur in either of these two scenarios. EITHER 1. A Primary DNS S…
Resolve DNS query failed errors for Exchange
Windows 10 is mostly good. However the one thing that annoys me is how many clicks you have to do to dial a VPN connection. You have to go to settings from the start menu, (2 clicks), Network and Internet (1 click), Click VPN (another click) then fi…
Sending a Secure fax is easy with eFax Corporate (http://www.enterprise.efax.com). First, just open a new email message. In the To field, type your recipient's fax number @efaxsend.com. You can even send a secure international fax — just include t…

813 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

12 Experts available now in Live!

Get 1:1 Help Now