Applies to: Exchange Server 2007 SP3, Exchange Server 2007 SP2, Exchange Server 2007 SP1
Topic Last Modified: 2007-06-28

Use the Test-EdgeSynchronization cmdlet to diagnose whether the subscribed Edge Transport servers have a current and accurate synchronization status.


Test-EdgeSynchronization [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-ExcludeRecipientTest <SwitchParameter>] [-MaxReportSize <Unlimited>] [-MonitoringContext <$true | $false>] [-WhatIf [<SwitchParameter>]]
Test-EdgeSynchronization -VerifyRecipient <ProxyAddress> [-Confirm [<SwitchParameter>]] [-DomainController <Fqdn>] [-WhatIf [<SwitchParameter>]]


Parameter Required Type Description




Use the VerifyRecipient parameter to verify the synchronization status of a single recipient. You identify the recipient by specifying a proxy address that is assigned to the recipient. The proxy address is the recipient's e-mail address. The recipient verification test is mutually exclusive of the test that verifies synchronization of configuration data.




The Confirm parameter causes the command to pause processing and requires you to acknowledge what the command will do before processing continues. You don't have to specify a value with the Confirm parameter.




To specify the fully qualified domain name (FQDN) of the domain controller that retrieves data from Active Directory, include the DomainController parameter in the command.




Use the ExcludeRecipientTest parameter to exclude validation of recipient data synchronization. If you include this parameter, only the synchronization of configuration objects is validated. Validating that recipient data is synchronized will take longer than validating only configuration data.




Use the MaxReportSize parameter to specify the total number of objects and properties that will be listed in the results. The results output by this cmdlet include a list of all out-of-sync objects and properties in both ADAM and Active Directory. If the directory services are not synchronized, lots of data can result. If you don't specify a value for this parameter, the default value of 1,000 will be used. The minimum value for this parameter is 1. The maximum value for this parameter is unlimited.




The MonitoringContext parameter is used only when MOM is being used for server monitoring. If you set the value to $true, the cmdlet populates the MonitoringContext object with events and performance counters that are used by MOM. The default value of this parameter is $false.




The WhatIf parameter instructs the command to simulate the actions that it would take on the object. By using the WhatIf parameter, you can view what changes would occur without having to apply any of those changes. You don't have to specify a value with the WhatIf parameter.

Detailed Description

Test-EdgeSynchronization is a diagnostic cmdlet that provides a report of the synchronization status of subscribed Edge Transport servers. You can use the VerifyRecipient parameter with this cmdlet to verify that a single recipient has been synchronized to the Active Directory Application Mode (ADAM) directory service. This task provides useful information to the administrator when it is run manually. It can also be called by Microsoft Operations Manager (MOM). When the task is called by MOM, alerts are generated if an Edge Transport server is not synchronized.

The Edge Transport server role doesn't have access to the Active Directory directory service. All configuration and recipient information is stored in ADAM. To perform recipient lookup and message security tasks, the Edge Transport server requires data that resides in Active Directory. The Edge Subscription process establishes one-way replication of recipient and configuration information from Active Directory to ADAM. Edge Subscription copies only the information that is required for the Edge Transport server to perform anti-spam and message security configuration tasks, and information about the connector configuration that is required to enable end-to-end mail flow. Edge Subscription performs scheduled updates so that the information in ADAM remains current. 

The Test-EdgeSynchronization cmdlet provides proactive alerting when an Edge Transport server is no longer synchronized. The output of this cmdlet enables an administrator to view which objects have not been synchronized to the Edge Transport server. The task compares the data that is stored in Active Directory and the data that is stored in ADAM. Any inconsistencies in data are reported in the results output by this command.

To run the Test-EdgeSynchronization cmdlet, you must log on to a computer that has the Hub Transport server role installed and that is located in the Active Directory site to which the Edge Transport server is subscribed. The account you use must be delegated the following:

  • Exchange Organization Administrator role

For more information about permissions, delegating roles, and the rights that are required to administer Microsoft Exchange Server 2007, see Permission Considerations.

Input Types

Return Types


Error Description



Exceptions Description




The Test-EdgeSynchronization cmdlet must be run from a Hub Transport server that is located in the Active Directory site to which the Edge Transport server is subscribed. The first code example diagnoses the synchronization status of subscribed Edge Transport servers, outputs only the first 500 data inconsistencies, and generates events and performance counters for use by MOM.

The second code example verifies the synchronization status of a single recipient.

Copy Code
Test-EdgeSynchronization -MaxReportSize 500 -MonitoringContext $true
Test-EdgeSynchronization -VerifyRecipient