RESOLUTION
To resolve this problem, obtain the latest service pack for Microsoft Exchange 2000 Server. For additional information, click the following article number to view the article in the
Microsoft Knowledge Base:
301378 XGEN: How to Obtain the Latest Exchange 2000 Server Service Pack
The English version of this fix has the following file attributes or later:
Component: Routing
|
Mtaroute.dll | 6.0.4720.41 |
Phatq.dll | 6.0.4720.41 |
Reapi.dll | 6.0.4720.41 |
Resvc.dll | 6.0.4720.41 |
Tranmsg.dll | 6.0.4720.41 |
NOTE: Because of file dependencies, this update requires Microsoft Exchange Server 2000 Service Pack 1.
MORE INFORMATION
Connector, Routing Group, and Address Space Information
In Exchange 2000, you can create a connector that is available only to a routing group, instead of the entire organization. You may also want several downstream routing groups to have access to this connector. You can do this by creating connectors from the downstream routing groups to the routing group that houses the original connector, using the same address type and space.
Consider an example in which RoutingGroupA houses ConnectorA with an address space of
X400:C=US,A=ADMD,P=PRMD,O=Org, scoped to a routing group. For RoutingGroupB to use ConnectorA, a connector must exist from RoutingGroupB to RoutingGroupA with an address space of X400:C=US,A=ADMD,P=PRMD,O=Org. This connector must also be scoped to a routing group (instead of the organization) to prevent mail loops.
Because RoutingGroupC is downstream from RoutingGroupB, a connector must exist from RoutingGroupC to RoutingGroupB with an address space of X400:C=US,A=ADMD,P=PRMD,O=Org, which must be scoped to a routing group.
When the routing engine sends a message from RoutingGroupC to an address that is similar to X400:C=US,A=ADMD,P=PRMD,O=Org,s=Justin, the routing engine searches for a "best match" route and finds all three routes (the RoutingGroupC --> RoutingGroupB connector, the RoutingGroupB --> RoutingGroupA connector, and the RoutingGroupA connector to the ultimate destination).
The routing engine determines that it should send the message over the local connector (the RoutingGroupC --> RoutingGroupB connector) because the other routes are scoped to another routing group, and those routes are therefore unavailable to this routing group.
This behavior does not change after you apply the fix that is described in the "Resolution" section of this article.
Aggregate Address Space
You may also want to have multiple connectors to various address spaces and use an aggregate address space from other routing groups to a destination routing group.
Consider an example in which RoutingGroupA houses the following connectors with the following address spaces:
- ConnectorA - X400:C=US,A=ADMD,P=PRMD,O=Org1, scoped to a routing group.
- ConnectorB - X400:C=US,A=ADMD,P=PRMD,O=Org2, scoped to a routing group.
- ConnectorC - X400:C=US,A=ADMD,P=PRMD,O=Org3, scoped to a routing group.
To permit RoutingGroupB to use these connectors, you can create an aggregate address space of X400:C=US,A=ADMD,P=PRMD on a connector from RoutingGroupB to RoutingGroupA. As in the example in the "Connector Information" section of this article, this connector must also be scoped to a routing group (instead of an organization) to prevent mail loops.
Because RoutingGroupC is downstream from RoutingGroupB, a connector must exist from RoutingGroupC to RoutingGroupB. That connector can also use an aggregate address space of X400:C=US,A=ADMD,P=PRMD, and must be scoped to a routing group.
If you send a message from RoutingGroupC to an address such as X400:C=US,A=ADMD,P=PRMD,O=Org1,s=Justin, the routing engine searches for a "best match" route, and finds all three routes (the RoutingGroupC --> RoutingGroupB connector, the RoutingGroupB --> RoutingGroupA connector, and the connector in RoutingGroupA to the ultimate destination).
The routing engine determines that it should send the message over the connector in RoutingGroupA because the other connectors are less specific, and therefore are not the best match. routing engine does not consider the fact that the connector is only available to RoutingGroupA, and the message generates a non-delivery report (NDR) that is similar to:
The following recipient(s) could not be reached:
C=US,A=ADMD,P=PRMD,O=Org1,S=Justin on 8/8/2001 12:00 AM
You do not have permission to send to this recipient. For assistance, contact your system administrator.
<cpandl.adatum.com.com #5.7.1>
This behavior is not intuitive and is not consistent with the behavior in Microsoft Exchange Server version 5.5.
After you apply the fix in the "Resolution" section of this article, the routing engine discards the following routes as possible routes:
- Connectors that are not local and are scoped to a routing group.
-and-
- Routes that are learned from Exchange Server 5.5 and are scoped to a site or to local.
If you are going to configure aggregate address spaces this way, make sure that you do not cause potential mail loops. In each routing group, make sure that any connectors that you add with these address spaces are scoped to a routing group.