Configuring a Domain Controller to Cover Multiple Sites
You want to configure a domain controller to cover multiple sites, which will cause clients in all of those sites to use that domain controller for authentication and directory lookups.
Using a graphical user interface
Using a command-line interface
> reg add HKLM\System\CurrentControlSet\Services\Netlogon\Parameters /v "SiteCoverage" /t REG_MULTI_SZ /d <Site1>\0<Site2>
' This code configures a domain controller to cover multiple sites. ' ------ SCRIPT CONFIGURATION ------ strDC = "<DomainControllerName>" ' e.g. dc01 arrSites = Array("<Site1>","<Site2>") ' Array of sites to cover ' ------ END CONFIGURATION --------- strNTDSReg = "SYSTEM\CurrentControlSet\Services\Netlogon\Parameters" const HKLM = &H80000002 set objReg = GetObject("winmgmts:\\" & strDC & "\root\default:StdRegProv") objReg.SetMultiStringValue HKLM, strNTDSReg, _ "SiteCoverage", _ arrSites WScript.Echo "Site coverage set for " & strDC
In an Active Directory environment, it is perfectly valid to have a site that does not contain its own domain controller. In fact, if you model the site topology after your real network, some sites will lack their own domain controllers unless you've deployed a branch office architecture or have very few sites. If you create sites without any domain controllers, the site links between the sites will determine which domain controllers will cover or advertise their services to the site. When a domain controller covers for a remote site, it needs to publish site-specific DNS resource records that clients in the remote site can use to find the domain controller. Active Directory will select DCs to cover DC-less sites automatically, but you can hardcode the list of sites a specific domain controller should cover by modifying the Registry as described in the Solution section.
MS KB 200498 (Configure a Domain Controller for Membership in Multiple Sites)