Exchange Mail Flow Problem – 4.7.0 Temporary server error.

Overview

After upgrading to the latest update pack for Microsoft Exchange 2016, you may encounter issues where the mail flow stops processing. This manifests as an inability to send mail between on-premises and Exchange Online, and emails getting stuck in the Outbox on on-premises clients. The following article outlines the steps to diagnose and resolve these issues.

Symptoms

  • Emails stuck in the Outbox on on-premises clients.
  • Failure to send mail between on-premises and Exchange Online.
  • The following SMTP error messages are received:
    • 4.7.0 Temporary server error. Please try again later. PRX1
    • 4.7.0 Temporary server error. Please try again later. PRX4
    • 4.3.2 Service not available
    • Service not available, closing transmission channel. The server response was: 4.3.2 Service not available
  • Event log errors:
    • Error ID: 1049
      • Description: SMTP could not find any destinations to proxy to.
    • Error ID: 5039
      • Description: Routing failed to select any Mailbox servers to proxy a mail item to in routing tables.

Steps to Resolve

There are a number of different reasons that could cause this issues. Most articles I found led to an issue with DNS or TLS. None of these worked for me.

The following was my problem:

Verify Component State

Ensure that all necessary Exchange Server Components are Active:

  1. Open Exchange Shell
  2. Check the Component State
    Get-ServerComponentState -Identity <ServerName>

In my case, the HubTransport role was stuck in Draining. This needs to be active.

3. Set the state to Active:
Set-ServerComponentState -Component "HubTransport" -Identity "<ServerName>" -State "Active" - Requestor "Functional"

4. Check the state and the remote states are now Active
Get-ServerComponentState -Identity <ServerName> | FT Component,State,RemoteStates