This is not a bug, but a time sensitive function easily disrupted by network traffic such as NetBios drive mounts. By default, Windows 7 does not attempt to automatically recover, though two workarounds are available based on suggestions from Microsoft.
- Reducing the negative cache period via a client-side registry change. The relevant registry key is:
- Key: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetLogon\Parameters.
- Value: NegativeCachePeriod
specifies the amount of time that DsGetDcName
recalls a DC could not be found in a domain. If a subsequent attempt is made within this time, the DsGetDcName call does not work and does not try to find a DC again. If this number is too large, a client never tries to find a DC again if the DC is initially unavailable.
By default, the key does not exist; so it must be created manually and will be subsequently referenced by Windows 7. The Microsoft recommendation for a value to set:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NetLogon\Parameters\NegativeCachePeriod = 0
Re-triggering the DC list population using a network restart, also corrects the situation. This can be done via the NetConnect post-startup
script. Here we can use the addition of a dummy
network route or ipconfig with a sleep delay to trigger the restart.