A bridgehead server is a domain controller (DC) that functions as the primary route of Active Directory (AD) replication data moving into and out of sites. If you have more than one domain in your forest, you'll most likely have more than one bridgehead server. The bridgehead server is authoritative only for the naming contexts (NCs) that it holds in its local directory database (i.e., the Schema NC, the Configuration NC, and the Domain NC for the domain to which the DC belongs). Even if the DC is also a Global Catalog (GC) server and holds a partial copy of the other domains' NCs, the DC isn't authoritative for these partial domain NCs. Therefore, if you have DCs from multiple domains in each of your sites, you'll need multiple bridgehead servers to transport each domain's replication traffic.
How does a DC become a bridgehead server? By default, the Knowledge Consistency Checker (KCC) elects a DC to be a bridgehead server. As the KCC builds the replication topology, it evaluates DCs in each site to determine whether they can be bridgehead servers. Essentially, the KCC attempts to establish the minimum number of DCs necessary to replicate the three NCs between its site and any connected sites. If more than one DC is eligible for the role of bridgehead server, the KCC sorts the DCs by their globally unique identifiers (GUIDs) and elects the server that has the lowest GUID.
You can also designate certain DCs as preferred so that the KCC focuses on those servers when making its selection. However, be aware that such manual designation affects the KCC's failover capabilities. If you let the KCC automatically select the bridgehead server, the KCC is free to recover from a failure of that server and identify a replacement. If you designate preferred bridgehead servers, the KCC can use only the servers that you designated. Therefore, if you designate only one DC as preferred, and that server goes offline, the KCC can't come to your rescue. If you decide to manually identify preferred bridgehead servers, make sure you identify a minimum of two for each NC in each site.
You can use the Microsoft Management Console (MMC) Active Directory Sites and Services snap-in to designate preferred bridgehead servers. Open the snap-in and navigate to the DC for which you want to make this designation. Right-click the DC object and choose Properties. Select the transport protocol (either RPC over IP or SMTP) for which this DC will be preferred, then click Add. If you're using multiple transport protocols and you want to designate preferred bridgehead servers for a site, you must designate at least one server for each of the transports.