Link to home
Start Free TrialLog in
Avatar of escreen
escreen

asked on

dns scavenging logging

I get the following event log information.  Is there a log I can open to see what records have been scavenged?  Thanks in advance.

The DNS server has completed a scavenging cycle:
Visited Zones     = 21,
Visited Nodes     = 1110,
Scavenged Nodes   = 55,
Scavenged Records = 49.
 
This cycle took 0 seconds.
Avatar of BatchV
BatchV

What version of server are you running?
Avatar of escreen

ASKER

Server 2003.
Avatar of Chris Dent

You could increase the level of audit logging, catch changes to the dnsTombstoned property for objects in your DNS zone. That'll log entries to the Security Log (if you have Audit Logging enabled in policy). It will not be entirely clear though, certainly not a nice concise list.

Chris
You could edit the registery to log all events in DNS. Link below gives details
http://technet.microsoft.com/en-us/library/cc782080(WS.10).aspx
@BatchV -- increasing the logging of events to include information only provides the summary information.  The 2501 message reported by the user is already an Information level message.  (The best additional logging I thought might include the level of detail the user is looking for might be Debug Logging -- but my servers are all handing tens to hundreds of thousands of requests per hour, and I'm nervous turning on THAT level of debugging.)
Apart from this I don't really think you have much choice with this issue.
Avatar of escreen

ASKER

The DNS server is already set to log all events and I do not see any information in the logs about scavenging.  Really seems wierd that Microsoft would tell you how many nodes it scavenged and not log that information anywhere...  Any other ideas?

The reason why I want to find this out is that I have had some DNS entries disappeard and the only thing I can think of that may have removed them is scavenging.

Thanks!

Maybe you could just pull a list of records using the LDAP Filter (dnsTombstoned=TRUE)?

Given that "deleted" records are kept in that state for 14 days (by default, defined by dsTombstoneInterval) you won't find there's much more than the most recently deleted set listed.

That would fairly trivially tell you what was deleted if not when.

Chris
I agree with Chris-Dent LDAP filter can provide you with some of the details
Avatar of escreen

ASKER

I would agree that it tell me what has been deleted, but the problem is that would still not tell what deleted it.  It would not differentiate between a person manually deleted a record and the scanvenging process deleting a record.  Do you agree or am I missing something?

I know that I have missing DNS records at this point, I need to find out what deleted them.

Thanks.
to delete manually you would need domain administrators rights.
Avatar of escreen

ASKER

Yes, or delegated rights. I am not sure where you are going with that though.
ASKER CERTIFIED SOLUTION
Avatar of Rich Weissler
Rich Weissler

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of escreen

ASKER

Thanks Razmus, that is really what I am looking for to be honest.

They are statically entered DNS entries and should not have been removed by Scavenging, but that does not mean that they weren't.  There are not many administrators that have the ability to remove these entries so I do not think it was user error, but that does not mean that it wasn't.  We did not loose that whole zone, so I do not think it is corruption.

I guess I will just enable auditing and hope it gives me the information I need to narrow this down more.

Thanks.
Avatar of escreen

ASKER

Answer does answer my question but does not solve my problem.
> Scavenging, but that does not mean that they weren't.  

It does, but I'll conceed that the operation of the scavenging process is a black box, claiming absolute certainty there is difficult. Statically added entries get a TimeStamp value of 0, the scavenging process explicitly ignores records with a TimeStamp value of 0.

Unfortunately, the change to deleted state for the record wipes out most of the dnsRecord attribute, making it impossible to determine what timestamp (if any) was set on the record immediately prior to deletion. It's the change to dnsRecord that makes the record invisible within the zone, the object still exists in the directory.

Briefly touching on corruption, this can occur when conflicting objects exist in Active Directory. This isn't always obvious, and rarely means that everything in the zone is corrupt. If this occurs again I urge you to check using ADSIEdit, conflicts will be prefixed with CNF:. Or you might check anyway, not a big or risky task.

I did think of one more. It is possible for a static record to be overwritten by a dynamic one, although I consider it to be unlikely than the other two options. For that to happen a number of conditions have to be true:

 - DHCP updating DNS for clients
 - DHCP is running on a DC without defined credentials or DHCP is running and using credentials of a privileged account to update (both are bad)
 - Someone logs a computer onto the network with the same name and DNS suffix as the removed name

I'm sure you can see why I believe it to be unlikely, there are a lot of conditions there. But it's worth considering if you're clutching at straws :)

In the end, enabling auditing is the best bet if you're worried about this happening again. I would try watching for changes to the dnsTombstoned property (rather than trying to catch delete, or similar), you should check that change flags a username in the security log when a record is removed.

Chris
escreen,

Do note that by setting a grade of C for this you are effectively blaming us for the design of the DNS system by MS. Each of us attempted to provide you with help and support within the constraints of the system. Assigning us a grade C on that basis is really quite rude.

Chris
Avatar of escreen

ASKER

Oh, I thought that was average... Sorry...  LOL...  I did not know C was bad...  My bad.
Usage of the grades is defined here:

https://www.experts-exchange.com/help.jsp#hs=29&hi=403

And the scenario this falls under here:

https://www.experts-exchange.com/help.jsp#hs=29&hi=405

If you feel it prudent I would push for a change to the grade, mainly because I don't like seeing C's in my history ;)

https://www.experts-exchange.com/help.jsp#hs=29&hi=404

Chris
Avatar of escreen

ASKER

I submitted the request, hopefully they will change it.  Thanks anyhow for the help.

No worries, hopefully next time we'll be able to provide something more constructive :)

Chris