Exchange 2013: Inbound mailflow suddenly stops.

I recently came across a problem with Exchange server 2013 which I thought I would like to share with you.

I installed an Exchange 2013 server with CU2 in a migration scenario migrating from Exchange 2007. The servers coexisted for a while when migrating all mailboxes, and I then verified that mailrouting was working as expected with the mailboxes residing on the new Exchange 2013 server. All good so far.

Proceeded with the migration and moved/recreated all connectors on the new server before disabling them on the old one. Everything seemed to be working fine for a while, but then suddenly the server stopped responding for incoming SMTP mail. There was nothing in the logs indicating anything wrong with the server, but every once in a while the server would stop accepting inbound SMTP and a reboot was the only way of getting it back on track(or a restart of the Exchange Transport Service/ Information Store service).

After spending quite some time troubleshooting this issue, a colleague of mine pointed me in the direction of the receive connectors. It turns out I had missed an important thing when I created the SMTP internal receive connector.

Exchange 2013 Receive Connectors
Exchange 2013 Receive Connectors correctly configured

As Paul Cunningham points out in this blog post regarding SMTP relaying, if the server is a multi-role server the connector has to be created using the FrontendTransport role, instead of the HubTransport which I had been using. My mistake… (but it doesn’t point out the fact that failing to create it with the correct properties makes everything else fail as well)

So, with this new info in mind, I proceeded to recreate the Internal SMTP routing connector as a FrontendTransport connector with all the same IP addresses that the old one had. Restarted the Transport service and the information store and watched as e-mail started flowing in.

Turns out that even if the connector in question was just meant for internal mail routing, the fact that it was made as a custom HubTransport caused a total failure for all the default connectors as well.

PS: This “bug” applies only to Exchange Server 2013 CU2. In CU1 this is not a problem as far as I know.