Recipe 11.12 Creating a Site Link Bridge

11.12.1 Problem

You want to create a site link bridge because you've disabled site link transitivity.

11.12.2 Solution

11.12.2.1 Using a graphical user interface
  1. Open the Active Directory Sites and Services snap-in.

  2. In the left pane, expand Sites Inter-Site Transports.

  3. Right-click either the IP or SMTP folder depending which protocol you want to create a site link bridge for.

  4. Select New Site Link Bridge.

  5. Highlight two or more sites in the left box.

  6. Click the Add button.

  7. Click OK.

11.12.2.2 Using a command-line interface

Create an LDIF file called create_site_link_bridge.ldf with the following contents, where <Link1> and <Link2> refer to the site links to be bridged:

dn: cn=<BridgeName>,cn=IP,cn=inter-site 
transports,cn=sites,cn=configuration,<ForestRootDN>
changetype: add
objectclass: siteLinkBridge
siteLinkList: cn=<Link1>,cn=IP,cn=Inter-site Transports,cn=sites,cn=configuration,
<ForestRootDN>
siteLinkList: cn=<Link2>,cn=IP,cn=Inter-site Transports,cn=sites,cn=configuration,
<ForestRootDN>

Then run the following command:

> ldifde -v -i -f create_site_link_bridge.ldf
11.12.2.3 Using VBScript
' This code creates a site link bridge between two site links
' ------ SCRIPT CONFIGURATION ------
strLink1 = "<Link1>"        ' e.g. AMS-LON
strLink2 = "<Link2>"        ' e.g. SJC-RTP
strBridge = "<BridgeName>"  ' e.g. AMER-EUR
' ------ END CONFIGURATION ---------

set objRootDSE = GetObject("LDAP://RootDSE")
set objLinkCont = GetObject( _
                   "LDAP://cn=IP,cn=Inter-site Transports,cn=sites," & _
                   objRootDSE.Get("configurationNamingContext") )
set objBridge = objLinkCont.Create("siteLinkBridge", "cn=" & strBridge)
strLink1DN = "cn=" & strLink1 & _
             ",cn=IP,cn=Inter-site Transports,cn=sites," & _
             objRootDSE.Get("configurationNamingContext")  
strLink2DN = "cn=" & strLink2 & _
             ",cn=IP,cn=Inter-site Transports,cn=sites," & _
             objRootDSE.Get("configurationNamingContext") 
objBridge.Put "siteLinkList", Array(strLink1DN,strLink2DN)
objBridge.SetInfo

WScript.Echo "Successfully created bridge: " & strBridge

11.12.3 Discussion

If you've disabled site link transitivity or have networks that lack direct routes between sites, you will need to create site link bridges. Creating a site link bridge to link several links is analogous to creating a site link to link several sites. Lets take an example where site link transitivity is disabled and we have four sites; site A has a link to site B and site C has a link to site D. If we want domain controllers in sites A and B to replicate with sites C and D, we need to create a site link bridge to bridge the A-B link with C-D.

11.12.4 See Also

Recipe 11.11 for disabling site link transitivity



    Chapter 3. Domain Controllers, Global Catalogs, and FSMOs
    Chapter 6. Users
    Appendix A. Tool List