Creating snapshots and restoring it..

Kevin Darcy kcd at daimlerchrysler.com
Thu Aug 11 03:57:23 UTC 2005


blrmaani wrote:

>Dear All,
>  Here is my requirement:
>
>I have a requirement where the contents of the DNS at a given
>point of time need to be captured. When a request comes to restore
>a particular snapshot, it has to be restored.
>
>"Create multiple snapshots of ( say N ) and restore the requested
>snapshot."
>
>Discussion:
>-----------
>One approach I can think of is that run 'dig' command on the named
>periodically and get snapshots. When requested to restore a
>particular snapshot, use nsupdate on a particular snapshot file
>to restore the contents to the named.
>
>What other approaches are implemented as a solution to this
>problem?
>
Is this just for authoritative data? Are Dynamic Updates enabled? If you 
just want to create a "snapshot" of authoritative data, with no Dynamic 
Updates enabled, then just stop people temporarily from modifying the 
zone files and save off a copy of those files. If Dynamic Update is 
enabled for one or more zones, you could use "rndc freeze" to prevent 
any updates to a particular zone while the snapshot is being taken, then 
"rndc thaw" when you're done.

If, on the other hand, you want to snapshot named's *cache*, then that's 
easy to do -- rndc dumpdb -- but there's no way to load it back in. Your 
nsupdate idea won't work for non-authoritative data. BIND is open 
source, though, so if you want to add a true "restore cache from 
snapshot" capability, there is nothing stopping you from doing so. The 
big danger, though, would be that such a feature would be abused by 
misguided cretins trying to improve the performance of their resolvers...

                                                                         
                                    - Kevin




More information about the bind-users mailing list