Domino Routing Rules – Binary Tree Coexistence Solutions

Exchange to Domino Routing Rules specifically relating to Binary Tree Coexistence Solutions

Introduction

This document seeks to identify the potential pitfalls of Inbound SMTP routing to Domino in a Coexistence environment, particularly when using a static targetAddress that is built by a Directory Synchronisation solution.

 

Routing from Exchange/Office 365 to Domino

In a Binary Tree Coexistence scenario Microsoft Exchange will use the targetAddress value of an AD Contact or Mail-Enabled User.  The targetAddress is typically added by Binary Tree SMART DirSync software.

Typically this will look something like: firstname.lastname@domino.contoso.com

When Binary Tree SMART DirSync is set to use the scalar function dbo.ReplaceDomain (as opposed to dbo.UpdateInternetAddress) it will always statically be @domino.contoso.com

When Binary Tree SMART DirSync is set to use the scalar function dbo.UpdateInternetAddress (as opposed to dbo.ReplaceDomain) it will always dynamically be set to @domino.[user-smtpname-space.com]

 

This therefore requires the Domino Global Domain Document to list on the Alternate Internet domain aliases: section the entry domino.contoso.com (much like an Accepted Domain in Exchange)

 

SMTP Address Conversion

 

Local primary Internet domain:

contoso.com

Alternate Internet domain aliases:

tailspintoys.com

widgets.com

acme.com

domino.contoso.com

 

Routing processing order in Domino

When using full name matching, the Router searches the Domino Directory ($Users) view for an exact match of the entire SMTP address (for example, first.last@contoso.com)

If an exact match is not found, the Router performs a secondary search if the domain suffix of the incoming address is listed in the Global domain document as an Internet domain alias.

For this secondary search, the Router replaces the given domain suffix with the domain suffix designated in the Global domain document as the Primary domain name

Take an email to user Conrad Murray from Microsoft Exchange (or Office 365) it will route to the targetAddress of: conrad.murray@domino.contoso.com

 

Basics

 

Mail

 

First name:

Conrad

Mail system:

Notes

Middle name:

Domain:

NotesWorld

Last name:

Murray

Mail server:

MailServer1/NotesWorld

User name:

Conrad
Murray/London/IT/UK

Mail file:

mail\cmurray

Conrad Murray

Forwarding address:

Internet address:

conrad.murray@contoso.com

Alternate name:

 

 

 

 

Short name/UserID:

cmurray

First the router task will look for explicit entry of conrad.murray@domino.contoso.com in  any email field e.g. InternetAddress, Fullname Field, Shortname Field

Next, will look for localpart @ Local primary internet domain, conrad.murray@contoso.com in this case again explicit entries in on an explicit match on: InternetAddress, Fullname Field, Shortname Field

Success on conrad.murray@contoso.com

Localpart Look-up/Matching

If there is no match there, and assuming Domino is configured to do address look-up on Fullname then localpart on the Server Configuration Document,

 Server Config Setting

then it will lastly fall back to Local Part of internet address – but only when the Internet Address domain of the recipient’s inbound email is a match to aPrimary Domain of a Global Domain Document.

LocalPart matching is NOT used when the recipients Internet Address Domain is one of the alternates only. See example later. 

The Router searches the Domino  Directory for a match of the local part of the Internet address, that is, the part before the @ symbol.

Local part matching matches periods and underscores in the address with spaces in the directory.

 

The gotcha here is that the ($Users) view does NOT actually include the left part of Internet Addresses in the view.  It implies that it does, but actually it only (mainly) includes:

  • ListName
  • FullName
  • InternetAddress
  • @NAME ([CN] ;dn)
  • @NAME ([Abbrieviate] ;FullName)
  • FirstName + LastName
  • FirstName
  • LastName
  • Shortname
  • And, @Soundex variations plus AltFullName,NetUserName,LTPA_UsrNm,DB2_UserName

 

That’s great, but what about neil.langston@tailspintoys.com?

 

Basics

 

Mail

 

First name:

Neil

Mail system:

Notes

Middle name:

Domain:

NotesWorld

Last name:

Langston

Mail server:

MailServer1/NotesWorld

User name:

Neil
Langston/London/IT/UK

Mail file:

mail\nlangsto

Neil Langston

Forwarding address:

Internet address:

neil.langston@tailspintoys.com

Alternate name:

 

 

 

 

Short name/UserID:

nlangsto

 

This email from Exchange will look like neil.langston@domino.contoso.com

  1. Look-up Explicit email address neil.langston@domino.contoso.com  = FAIL
  2. Look-Up localpart + primary GDD Domain neil.langston@contoso.com = FAIL
  3. Lookup Localpart only neil.langston  = FAIL

Part 3 fails, (even though neil.langston is a valid local part), because the router did NOT drop back to option 3 – Localpart look-up because tailspintoys.com is NOT a primary Domain on a Global Domain Document.

For Localpart look-ups to succeed the users’ SMTP Domain Name entry must be it’s own Global Domain Document Local primary internet domain. In our example @tailspintoys.com is ONLY listed in a Global Domain Document as an Alternate Internet Domain alias

What about this user: Twan van Beers

 

Basics

 

Mail

 

First name:

Twan

Mail system:

Notes

Middle name:

Domain:

NotesWorld

Last name:

Van Beers

Mail server:

MailServer1/NotesWorld

User name:

Twan van
Beers/London/IT/UK

Mail file:

mail\TvanBeer

Twan van
Beers

Forwarding address:

Internet address:

tvb@widgets.com

Alternate name:

 

 

 

 

Short name/UserID:

TvanBeer

 

This email from Exchange will look like tvb@domino.contoso.com

  1. Look-up Explicit email address tvb@domino.contoso.com = FAIL
  2. Look-Up localpart + primary GDD Domain tvb@contoso.com = FAIL
  3. Lookup Localpart only tvb = FAIL

Part 3 fails for two reasons:

widgets.com is NOT a primary Domain on a Global Domain Document and therefore localpart look-up is not initiated by the router, and
well, obviously TVB doesn’t exist as a localpart anyway!

 ($Users) view will only have

  • Twan van Beers/London/IT/UK
  • Twan van Beers
  • TvanBeer
  • tvb@widgets.com

but not just tvb

Localpart look-up successes

 

Basics

 

Mail

 

First name:

Guillaume

Mail
system:

Notes

Middle
name:

Domain:

NotesWorld

Last name:

Meister

Mail
server:

MailServer2/NotesWorld

User name:

Guillaume Meister/Paris/IT/FR

Mail file:

mail\cmurray

Guillaume Meister

Forwarding
address:

Internet
address:

guillaume.meister@contoso.com

Alternate
name:

 

 

 

 

Short name/UserID:

gmeister

 

This email from Exchange will look like gmeister@domino.contoso.com

  1. Look-up Explicit email address gmeister@domino.contoso.com  = FAIL
  2. Look-Up localpart + primary GDD Domain gmeister@contoso.com = FAIL
  3. Lookup Localpart only gmeister = SUCCESS!

 

Mail-In Databases and Rooms & Resources

Let’s just assume explicit routing and fall back explicit routing successes for such Mail-In Databases and Rooms like:

But what about these examples:

 

Basics

 

Mail-in name:

London Sales Office

Description:

 

Internet Address:

sales@tailspintoys.com

Internet message storage:

No Preference

Encrypt incoming mail:

No

 

This email from Exchange will look like sales@domino.contoso.com

  1. Look-up Explicit email address sales@domino.contoso.com = FAIL
  2. Look-Up localpart + primary GDD Domain sales@contoso.com = FAIL
  3. Lookup Localpart only sales = FAIL

In the ($Users) view only London Sales Office will be present (along with sales@tailspintoys.co.uk )

Rooms

 

Basics

 

Resource type:

Room

Resource name:

Ground Floor Presentation Room 1/More
London Place

Capacity:

20

Resource description:

Ground Floor Presentation Room 1

Internet Address:

GF1.Room@acme.com

Comments:

 

 This email from Exchange will look like GF1.Room@domino.contoso.com

  1. Look-up Explicit email address GF1.Room@domino.contoso.com = FAIL
  2. Look-Up localpart + primary GDD Domain GF1.Room@contoso.com = FAIL
  3. Lookup Localpart only sales = FAIL

In the ($Users) view only:

  • Ground Floor Presentation Room 1
  • Ground Floor Presentation Room 1/More London Place  and
  • GF1.Room@acme.com

will be present.

The solution is to either:

A) Use the use the scalar function dbo.UpdateInternetAddress but that then requires significantly more configuration for Coexistence including:

  • Multiple DNS entries for autodiscover A records
  • Multiple Exchange AvailabilityAddressSpace
  • Multiple Exchange Remote Domains
  • SAN Certificate on BT Free Busy IIS
  • Multiple MAPs in the Application Settings of IIS
  • Multiple Global Domain Documents – see APPENDIX A

B) Stamp the full targetAddress values on ALL Users, Mail-In Database and Rooms & Resources  in the Fullname field. 

Appendix A

 The Global Domain Document will not resolve an alternate to an alternate within itself i.e.

John.smith@domino.acme.com will not then look also to john.smith@acme.com

 

SMTP Address Conversion

 

Local primary Internet domain:

contoso.com

Alternate Internet domain aliases:

tailspintoys.com

widgets.com

acme.com

domino.contoso.com

domino.tailspintoys.com

domino.widgets.com

domino.acme.com

 

John.smith@domino.acme.com  will only ever try next John.smith@contoso.com and john.smith (John Smith / John_Smith)

To prevent the Router from using domain aliases when looking up addresses, do not include alternate Internet domain aliases in a Global
domain document. Instead, create multiple Global Domain documents, each specifying a different primary Internet domain.

e.g.

SMTP Address Conversion

 

Local primary Internet domain:

contoso.com

Alternate Internet domain aliases:

domino.contoso.com

 

SMTP Address Conversion

 

Local primary Internet domain:

acme.com

Alternate Internet domain aliases:

domino.acme.com

 

SMTP Address Conversion

 

Local primary Internet domain:

widgets.com

Alternate Internet domain aliases:

domino.widgets.com

 

SMTP Address Conversion

 

Local primary Internet domain:

tailspintoys.com

Alternate Internet domain aliases:

domino.tailspintoys.com

 NOTE:

Remember to only set ONE Global Domain Document to Use as default Global Domain (for use with all Internet protocols except HTTP):

 

Global domain role:

R5/R6/R7/R8 Internet Domains or R4.x
SMTP MTA

Use as default Global Domain (for use
with all Internet protocols except HTTP):

Yes

 

Conrad Murray

Conrad Murray has been working in IT for over 15 years specializing in the Messaging Arena and in particular IBM Domino and Microsoft Exchange and now of course Office 365. Working with like minded colleagues now specializing in very large scale complex migrations from Lotus Notes and On-Premise Microsoft Exchange to Office 365.

This Post Has 5 Comments

  1. Great post. One little question if you can help me. If i have the same smpt domain like abc.com in Domino and O365 sides, what should i configure in domino side to avoid forward to abc.onmicrosoft.com?

    1. Hi there

      Thanks for taking the time to read and reply!

      Are you saying that you do not want to use the “Forwarding address” field? I assume you don’t want that domain exposed to CC’d external recipients right? The Binary Tree Coesistence overcomes this problem by the method they have always used by masking the re-write address.

      You can try using the field “Local Internet domain smart host” on Server Configuration Documents on the Router/SMTP Basics tab. This will act like an Exchange/Office 365 Relay. It says:
      “If a recipient in any local Internet domain is not found in the Directory, relay the message to this host via SMTP. i.e. the user is using a non-Domino SMTP mail system within the local Internet domain”

      Great for acquisitions and mergers for Coex, but not for Migrations.

      Now, I’m not sure if this will work with Person Documents present or requires them NOT to be (like an external relay). You could try editing a Person Document making sure the home mail server and mailfile path are removed and setting the Mail System filed to “Other Internet mail”

      Let me know how you get on. If you would prefer to use the Binary Tree Coexistence Solution that we deploy, drop us an email.

      1. Hello,
        after some tests we know that changing from Notes to Other in Lotus Notes person document allow that all forward messages are correctly. If we are in copy or BCC forget, the destination recipients will see you with the forwarding address. Contacting some companies that have made Notes to O365 migration they suffer that and the good this is to migrate fast as they can to not have this kind of evidences.

Leave a Reply

Your email address will not be published. Required fields are marked *

Search