Exchange Online にメールボックスを移行しようとすると “Target mailbox doesn't have an smtp proxy matching ‘.mail.onmicrosoft.com’” というエラー メッセージが表示される

適用対象: Exchange Online

現象


組織において、オンプレミスの Microsoft Exchange Server Office 365 Exchange Online 間でハイブリッド展開をしていると仮定します。自身のメールボックスをオンプレミス環境から Exchange Online へ移行しようとすると、以下のエラー メッセージが表示されます。

"The target mailbox doesn't have an smtp proxy matching '<domain>.mail.onmicrosoft.com'"
(移行先のメールボックスに ‘<domain>.mail.onmicrosoft.com’ に一致する SMTP プロキシがありません。)

原因


この問題は、以下のいずれかの条件に該当する場合に発生する可能性があります。

  • 移行元のメールボックスに <domain>.mail.onmicrosoft.com SMTP アドレスが設定されていない。
  • 対応するクラウド メールユーザー オブジェクトについてプロキシ アドレス <domain>.mail.onmicrosoft.com Office 365 が同期されていない。 

解決方法


問題の原因を究明し、どのメールボックスから <domain>.mail.onmicrosoft.com 電子メール アドレスが消失しているか特定するには、Exchange 管理シェルと Exchange Online PowerShell で以下のコマンドをそれぞれ実行します。

シナリオ 1: <domain>.mail.onmicrosoft.com 電子メール アドレスがオンプレミスの移行元メールボックスから消失している (Exchange 管理シェル)

この問題を解決するには、<domain>.mail.onmicrosoft.com 電子メール アドレスをオンプレミスの移行元メールボックスに追加します。

このオンプレミスのメールボックスに電子メール アドレス ポリシーが適用されている場合 (Exchange 管理センターまたは Exchange 管理コンソールで当該ユーザーの EmailAddressPolicyEnabled パラメーターの値が "True" である場合、または [この受信者に適用されるメール アドレス ポリシーに基づいてメール アドレスを自動更新する] チェックボックスがオンになっている場合)、この電子メール アドレス ポリシーの電子メール アドレス ポリシー テンプレートには、セカンダリ SMTP <domain>.mail.onmicrosoft.com ドメインが含まれていないということになります。Exchange 管理シェルで以下のコマンドを実行することにより、適用されているポリシーを再確認できます。 

Get-EmailAddressPolicy | FL Identity, EnabledEmailAddressTemplates


この場合、<domain>.mail.onmicrosoft.com を当該電子メールアドレス ポリシーに追加します。以下の手順に従って、これを実行してください。

  1. オンプレミスの Exchange サーバーで Exchange 管理センターを開きます。
  2. [メール フロー][電子メール アドレス ポリシー] の順にクリックします。
  3. 変更する電子メール アドレス ポリシーを選択し、編集アイコン () をクリックします。
  4. [電子メール アドレスの形式] で、追加アイコン () をクリックしてドメイン (<domain>.mail.onmicrosoft.com) をポリシーに追加し、[保存] をクリックします。[適用対象] で、対象の受信者を選択して [保存] をクリックします。
  5. 追加後、以下のコマンドを実行すると、オンプレミスのメールボックスに <domain>.mail.onmicrosoft.com SMTP アドレスが設定されていることを確認できます。
    Get-Mailbox <AffectedUser> | FL EmailAddresses, EmailAddressPolicyEnabled
  6. ディレクトリ同期が実行されるまで待機します。または、差分ディレクトリ同期を強制的に実行します。実施方法の詳細については、「スケジューラの開始」を参照してください。


オンプレミスのメールボックスに電子メール アドレス ポリシーが適用されていない場合 (Exchange 管理センターまたは Exchange 管理コンソールで当該ユーザーの EmailAddressPolicyEnabled パラメーターの値が Falseである場合、または [この受信者に適用されるメール アドレス ポリシーに基づいてメール アドレスを自動更新する] チェックボックスがオフになっている場合)、何らかの理由で当該電子メール アドレス ポリシーが設定されていない場合、あるいは user@domain.mail.onmicrosoft.com SMTP アドレスを受信者に適用していない場合などは、<domain>.mail.onmicrosoft.com 電子メール アドレスを当該受信者に手動で追加し、その変更内容を Azure AD に同期させる必要があります。以下の手順に従って、これを実行してください。

  1. オンプレミスの Exchange サーバーで Exchange 管理センターを開きます。
  2. [受信者][メールボックス] の順にクリックします。
  3. 変更するオンプレミスのメールボックスをダブルクリックします。
  4. [メール アドレス] で追加アイコン  () をクリックし、user@domain.mail.onmicrosoft.com 電子メール アドレスを当該ユーザーの電子メール アドレスに追加します。
  5. [OK][保存] の順にクリックします。
  6. 追加後、以下のコマンドを実行すると、オンプレミスのメールボックスに <domain>.mail.onmicrosoft.com が設定されていることを確認できます。
    Get-Mailbox <AffectedUser> | FL EmailAddresses
  7. ディレクトリ同期が実行されるまで待機します。または、差分ディレクトリ同期を強制的に実行します。実施方法の詳細については、「スケジューラの開始」を参照してください。


シナリオ 2: <domain>.mail.onmicrosoft.com 電子メール アドレスはオンプレミスの移行元メールボックスで設定されているが、クラウド メールユーザー オブジェクトから消失している (Exchange Online PowerShell)

この場合は、同期の問題であることが考えられます。Azure Active Directory (Azure AD) Connect ツールまたは Office 365 管理センターで、ディレクトリ同期が機能しているかどうか、および同期に関するエラーが報告されていないかどうかを確認します。確認方法の詳細については、「Office 365 のディレクトリ同期のエラーを表示します」を参照してください。 

また、クラウドユーザーのオブジェクトに user@domain.mail.onmicrosoft.com 電子メール アドレスを既に設定している場合は、ユーザー認証のエラーが発生している可能性もあります。

このエラーを確認するには、Office 365 PowerShell に接続し、MSOnline (MSOL) サービスまたは Azure AD for Window PowerShell のどちらに接続しているかに応じて、以下のいずれかのコマンドを実行します。

 MSOL の場合:

(Get-MsolUser -UserPrincipalName <AffectedUserUPN>).Errors.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription

 Azure AD for Window PowerShell の場合:

(Get-AzureADUser -ObjectId <AffectedUserUPN>).Errors.ErrorDetail.ObjectErrors.ErrorRecord.ErrorDescription


詳細については、「Office 365 ポータルまたは Windows PowerShell Microsoft Online Services モジュールでユーザーの確認エラーが表示される」を参照してください。 

次に、Office 365 PowerShell で、Azure AD のプロキシ アドレスに当該電子メール アドレス user@domain.mail.onmicrosoft.com が含まれているか確認します。これを確認するには、以下のいずれかのコマンドを実行します。 

 MSOL の場合:

(Get-MsolUser -UserPrincipalName <AffectedUserUPN>).ProxyAddresses

 Azure AD for Window PowerShell の場合:

(Get-AzureADUser -ObjectId <AffectedUserUPN>).ProxyAddresses


コマンドの結果に、当該ユーザーの user@domain.mail.onmicrosoft.com SMTP アドレスが表示されたものの、Exchange Online PowerShell Get-MailUser コマンドを実行してもこの電子メール アドレスを取得できない場合は、ディレクトリ同期ツールで当該アドレスは Azure AD に正しく追加されているが、Azure AD Exchange Online 間で同期の問題が発生している可能性が考えられます。

また、別の原因として、オンプレミスのユーザーに設定されている domain.mail.onmicrosoft.com SMTP ドメインが誤っている可能性があります (: 当該ドメインが自身の Office 365 テナントまたは Exchange Online の承認済みドメインに存在しない)。承認済みドメインの詳細については、「承認済みドメインを表示する」を参照してください。 

問題の原因を特定できない場合は、Microsoft サポート チームにサポート ケースを作成し、詳細な調査を依頼してください。

追加情報


電子メール アドレス ポリシーおよび Exchange ハイブリッド展開の詳細については、ブログ投稿「状況に応じたクラウドの利用 (パート 1): ハイブリッド展開をする (英語) “Email Address Policy” (電子メール アドレス ポリシー) セクションを参照してください。

電子メール アドレス ポリシーの編集方法に関する詳細については、「電子メール アドレス ポリシーの編集」を参照してください。

ハイブリッド構成ウィザードによって追加された共存ドメインの詳細については、「ハイブリッド構成ウィザード」の ドメイン項目を参照してください。
その他トピックは、Microsoft コミュニティ Web サイトまたは Exchange TechNet フォーラムを参照してください。