Hedef posta kutusunda SMTP proxy eşleşmesi yok


Posta kutularını şirket içi Exchange'den Microsoft 365'teki Exchange Online'a taşıyorsunuz. Bu sefer posta kutusu durumunun başarısız olduğunu belirten bir hata görünüyor. Hedef posta kutusunda '.mail.onmicrosoft.com' ile eşleşen bir SMTP proxy'si yok. Neden oluyor, çözümü nedir? Bu makalede, posta kutusunu Exchange Online'a taşırken başarısız olma durumunu nasıl çözeceğinizi öğreneceksiniz.

Hedef posta kutusuna yönelik çözümde SMTP proxy eşleşmesi yok

Aşağıdaki koşullardan biri doğruysa bu sorun oluşabilir:

  • Kaynak posta kutusu bir .mail.onmicrosoft.com SMTP adresine sahip olacak şekilde damgalanmamıştır.

  • .mail.onmicrosoft.com proxy adresi, ilgili bulut posta kullanıcısı nesnesinde Office 365 ile senkronize edilmedi.

Posta kutularına .mail.onmicrosoft.com proxy adresini eklemek önemlidir. Bunu yapmazsanız posta kutusu taşıma işlemi başarısız olur.

Not: Bunu çözmenin en hızlı yolu .mail.onmicrosoft.com adresini PowerShell ile tüm posta kutularına toplu olarak eklemektir.

Exchange yönetim merkezinde hata bu şekilde görünüyor.

.mail.onmicrosoft.com SMTP adresi olmayan posta kutularını alın

Exchange Management Shell'i yönetici olarak çalıştırın ve şirket içi Exchange Sunucusuna bağlanın. Eksik .mail.onmicrosoft.com SMTP adresine sahip tüm posta kutularını listeleyin.

Örneğimde .mail.onmicrosoft.com, exoip.mail.onmicrosoft.com adresidir. exoip'i Microsoft 365 kiracı adınızla değiştirin.

[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -notlike "*@exoip.mail.onmicrosoft.com"} | Select-Object UserPrincipalName,Alias

UserPrincipalName           Alias
-----------------           -----
Amanda.Morgan@exoip.com     Amanda.Morgan
Anna.Welch@exoip.com        Anna.Welch
Benetiz.Anees@exoip.com     Benetiz.Anees
Boris.Campbell@exoip.com    Boris.Campbell
Carl.Kelly@exoip.com        Carl.Kelly
Christopher.Payne@exoip.com Christopher.Payne

.mail.onmicrosoft.com SMTP adresine sahip posta kutularını alın

.mail.onmicrosoft SMTP adresine sahip tüm posta kutularını içeren bir listeye sahip olmak ister misiniz? Karşılaştırma operatörünü -beğenmiyorum olarak -beğen olarak değiştirin.

[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -like "*@exoip.mail.onmicrosoft.com"} | Select-Object UserPrincipalName,Alias

UserPrincipalName        Alias
-----------------        -----
Kyle.Peake@exoip.com     Kyle.Peake
Kylie.Davidson@exoip.com Kylie.Davidson
Larson.Tevin@exoip.com   Larson.Tevin
Madeleine.Ross@exoip.com Madeleine.Ross

Hata hedefi posta kutusunun neden bir SMTP proxy eşleşmesinin gösterilmediğini biliyoruz. SMTP adresinin eksik olduğu posta kutularını listeledik. Bir sonraki adımda eksik SMTP adresini posta kutularına toplu olarak ekleyeceğiz.

PowerShell ile .mail.onmicrosoft.com SMTP adresini toplu ekleme

.mail.onmicrosoft.com SMTP adresini tüm posta kutularına ayarlamak için iki seçeneğimiz var.

1. Seçenek: İki PowerShell cmdlet'i ile .mail.onmicrosoft.com SMTP'yi toplu olarak ekleyin

takma ad@alanadi.mail.onmicrosoft.com adresini ikincil SMTP adresi olarak ayarlamak için aşağıdaki iki cmdlet'i çalıştırın.

[PS] C:\>$NoSMTP = Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -notlike "*@exoip.mail.onmicrosoft.com"}

[PS] C:\>$NoSMTP | ForEach {Set-Mailbox -Identity $_.UserPrincipalName -EmailAddresses @{add=$_.Alias+"@exoip.mail.onmicrosoft.com"}}

2. Seçenek: PowerShell betiğiyle .mail.onmicrosoft.com SMTP'yi toplu ekleme

(C:) sürücüsünde iki klasör oluşturun:

  • Kodlar

  • Sıcaklık

PowerShell komut dosyası Add-onmicrosoft-SMTP.ps1'i indirin ve C:\scripts klasörüne yerleştirin.

Diğer bir seçenek de aşağıdaki kodu kopyalayıp Not Defteri'ne yapıştırmaktır. Dosyayı C:\scripts klasörüne Add-onmicrosoft-SMTP.ps1 olarak kaydedin.

Komut dosyasını çalıştırdıktan sonra çıktı, Add-onmicrosoft-SMTP.log dosya adıyla geçici klasöre kaydedilecektir.

# Output will be added to C:\temp folder. Open the Add-onmicrosoft-SMTP.log with a text editor. For example, Notepad.
Start-Transcript -Path C:\temp\Add-onmicrosoft-SMTP.log -Append

# Get all mailboxes
$Mailboxes = Get-Mailbox -ResultSize Unlimited

# Loop through each mailbox
foreach ($Mailbox in $Mailboxes) {

    # Search for @mail.onmicrosoft.com SMTP in every mailbox
    $OnMicrosoftAddress = $Mailbox.EmailAddresses | Where-Object { $_ -like "*mail.onmicrosoft.com" }
      
    # Do nothing when there is already an @mail.onmicrosoft.com SMTP configured
    If (($OnMicrosoftAddress | Measure-Object).Count -eq 0) {

        # Change exoip with the domain name that you want to add as SMTP
        $OnMSAddress = "$($Mailbox.Alias)@exoip.mail.onmicrosoft.com"

        # Set onmicrosoft SMTP address
        Set-Mailbox $Mailbox.DistinguishedName -EmailAddresses @{add = $OnMSAddress }

        # Write output
        Write-Host "Adding $($OnMSAddress) to $($Mailbox.Name) Mailbox" -ForegroundColor Green
    }
}

Stop-Transcript
  • Satır 17: @exoip.mail.onmicrosoft.com değerini, posta kutularına eklemek istediğiniz etki alanıyla değiştirin.

PowerShell betiğini çalışırken görelim. Exchange Management Shell'i yönetici olarak çalıştırın. Dizini scripts klasörüne değiştirin ve betiği çalıştırın.

PowerShell betiği, Exchange şirket içi posta kutularından geçecek ve .mail.onmicrosoft.com adresini her posta kutusuna ikincil SMTP adresi olarak ekleyecektir.

[PS] C:\>cd \scripts
[PS] C:\scripts>.\Add-onmicrosoft-SMTP.ps1
Transcript started, output file is C:\temp\Add-onmicrosoft-SMTP.log
Adding Amanda.Morgan@exoip.mail.onmicrosoft.com to Amanda Morgan Mailbox
Adding Anna.Welch@exoip.mail.onmicrosoft.com to Anna Welch Mailbox
Adding Benetiz.Anees@exoip.mail.onmicrosoft.com to Benetiz Anees Mailbox
Adding Boris.Campbell@exoip.mail.onmicrosoft.com to Boris Campbell Mailbox
Adding Carl.Kelly@exoip.mail.onmicrosoft.com to Carl.Kelly Mailbox
Adding Christopher.Payne@exoip.mail.onmicrosoft.com to Christopher Payne Mailbox
Transcript stopped, output file is C:\temp\Add-onmicrosoft-SMTP.log

Son adım, sonuçları doğrulamak ve posta kutularını Exchange Online'a taşırken hata hedefi posta kutusunun SMTP proxy eşleşmesine sahip olmadığını görmeyeceğimizden emin olmaktır.

Sonuçları doğrulayın

.mail.onmicrosoft.com SMTP'sini PowerShell betiğiyle ayarlamak için 2. seçeneği kullandıysanız günlük dosyasını kontrol edebilirsiniz. C:\temp klasörüne gidin ve Add-onmicrosoft-SMTP.log dosyasını Not Defteri ile açın.

.mail.onmicrosoft.com SMTP adresi olmayan posta kutularının olup olmadığını kontrol etmek için cmdlet'i çalıştırın.

Tüm posta kutuları .mail.onmicrosoft.com ile yapılandırıldığından cmdlet çalıştırıldıktan sonra çıktı boştur.

[PS] C:\>Get-Mailbox -ResultSize Unlimited -Filter {EmailAddresses -notlike "*@exoip.mail.onmicrosoft.com"}

Hedef posta kutusunun SMTP proxy eşleşmesi yok hatasını çözmenize yardımcı oldu mu?

Devamını oku: PowerShell ile geçiş toplu işlemini tamamlayın »

Çözüm

Hata hedefi posta kutusunun neden bir SMTP proxy eşleşmesinin gösterilmediğini öğrendiniz. .mail.onmicrosoft.com SMTP'sini PowerShell cmdlet'leriyle posta kutularına ekleyin. SMTP adresini ayarladıktan sonra şirket içi AD nesnelerini bulutla eşitlemek için Azure AD Connect'i çalıştırın. Posta kutusunu Exchange Online'a taşıyın ve taşıma isteğine bakın. Bu sefer hata artık görünmüyor ve geçiş başarılı oluyor.

Bu makaleyi beğendiniz mi? Ayrıca Exchange Online'da taşıma isteği toplu alımını da beğenebilirsiniz. Bizi takip etmeyi ve bu yazımızı paylaşmayı unutmayın.

İlgili makaleler