Vor wenigen Wochen hatten wir ein seltsames Problem im Mailverkehr unserer Exchange Hybrid Strecke. Viele Mails – nicht alle – wurden abgelehnt oder Anhänge kamen korrupt in den Postfächern der Empfänger an.
Da keine wissentlichen Änderungen im Rahmen von Changes in den Tagen zuvor durchgeführt wurden, war das Rätseln erstmal groß und wir mussten herausfinden in welchem Verlauf des leider relativ komplexen Mailverkehrs die Korrumpierung stattfindet.
Die eingehenden Mails werden erst durch ein SaaS-Lösung angenommen und auf Bedrohungen gescannt, im Anschluss an Postfix Server und je nach Empfänger dann an die Exchange 2013 Hybrid Systeme weitergeleitet, welche diese dann in den meisten Fällen über die Edge Servern zu Exchange Online schicken.
In den Mail Logs der Postfix Systeme fiel eine Meldung gehäuft auf:
451 4.7.0 Temporary server error. Please try again later. PRX5
mail.log – Exchange 2013 CU 23 Response
Wenn man nach dieser Meldung mal das Internet durchforstet landet man auch relativ schnell bei einem Thread im Microsoft Technet, die auf DNS-Probleme im Zusammenhang mit einem Bug in Exchange 2013/2016 verweisen.
Die Connectivity und Message Trace Logs vom Exchange sprachen da kein so deutliches Bild, verrieten aber ggf. ein paar Hintergründe:
2021-10-12T11:15:22.021Z,08D98CC1C16FD002,SMTP,internalproxy,>,"ExchangeHybrid02.domain.tld[xxx.xxx.xxx.xxx],ExchangeHybrid01.domain.tld[yyy.yyy.yyy.yyy]"
2021-10-12T11:15:22.036Z,08D98CC1C16FD002,SMTP,internalproxy,-,Using Cached Session 08D98CC1C16FCD25
2021-10-12T11:15:22.036Z,08D98CC1C16FCD25,SMTP,internalproxy,+,Undefined 00000000-0000-0000-0000-000000000000 CachedSession Replacing 08D98CC1C16FD002;<no priority counts>. Cache Hit. Current Cache Size 5
2021-10-12T11:15:22.193Z,08D98CC1C16FCD25,SMTP,internalproxy,-,Messages: 1 Bytes: 450997 ()
2021-10-12T11:15:22.771Z,08D98CC1C16FD003,SMTP,internalproxy,+,Undefined 00000000-0000-0000-0000-000000000000;QueueLength=<no priority counts>. Starting outbound connection for inbound session 08D98CC1C16FD000
2021-10-12T11:15:22.771Z,08D98CC1C16FD003,SMTP,internalproxy,>,"ExchangeHybrid02.domain.tld[xxx.xxx.xxx.xxx],ExchangeHybrid01.domain.tld[yyy.yyy.yyy.yyy]" 2021-10-12T11:15:22.771Z,08D98CC1C16FD003,SMTP,internalproxy,-,Using Cached Session 08D98CC1C16FCD25
2021-10-12T11:15:22.771Z,08D98CC1C16FCD25,SMTP,internalproxy,+,Undefined 00000000-0000-0000-0000-000000000000 CachedSession Replacing 08D98CC1C16FD003;<no priority counts>. Cache Hit. Current Cache Size 5
2021-10-12T11:15:22.958Z,08D98CC1C16FCD25,SMTP,internalproxy,-,Messages: 1 Bytes: 456078 ()
Dies gab dann aber den entscheidenden Hinweis, auch mit Bezug auf eine Störung unseren Domain Registrars, der wenige Tage Probleme mit unserer Reverse Zone der Domain hatte.
Wie im TechNet vorgeschlagen änderten wir also in der ECP unter den DNS-Settings der Server die Netzwerkkarte von „Alle verfügbaren“ zur expliziten und setzten im selben Menü die DNS-Server statisch. Dies half jedoch nichts und nach Prüfung der TransportServices und FrontEndTransportServices per PowerShell, wurden diese über die GUI auch nicht angerührt. Hier mussten also per PowerShell nachgeholfen werden.
Die Ausgabe vor der Änderung sah wie folgt aus – auch nach Änderung über die GUI:
Get-TransportService -Identity ExchangeHybrid01.domain.tld
ExternalDNSAdapterEnabled: True
ExternalDNSAdapterGuid: 00000000-0000-0000-0000-000000000000
ExternalDNSProtocolOption: Any
ExternalDNSServers: {}
ExternalIPAddress:
InternalDNSAdapterEnabled: True
InternalDNSAdapterGuid: 00000000-0000-0000-0000-000000000000
InternalDNSProtocolOption: Any
InternalDNSServers: {}
Get-TransportService -Identity ExchangeHybrid02.domain.tld
ExternalDNSAdapterEnabled: True
ExternalDNSAdapterGuid: 00000000-0000-0000-0000-000000000000
ExternalDNSProtocolOption: Any
ExternalDNSServers: {}
ExternalIPAddress:
InternalDNSAdapterEnabled: True
InternalDNSAdapterGuid: 00000000-0000-0000-0000-000000000000
InternalDNSProtocolOption: Any
InternalDNSServers: {}
Die PowerShell Befehle lauten wie folgt. Die notwendige Adapter GUID erfährt man mit Get-NetworkConnectionInfo.
Set-FrontendTransportService -Identity ExchangeHybrid01.domain.tld -ExternalDNSAdapterGuid "80ce6527-b083-4dea-b8c5-e33794c8083a" -ExternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSAdapterGuid "80ce6527-b083-4dea-b8c5-e33794c8083a"
Set-TransportService -Identity ExchangeHybrid01.domain.tld -ExternalDNSAdapterGuid "80ce6527-b083-4dea-b8c5-e33794c8083a" -ExternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSAdapterGuid "80ce6527-b083-4dea-b8c5-e33794c8083a"
Set-FrontendTransportService -Identity ExchangeHybrid02.domain.tld -ExternalDNSAdapterGuid "0e5ff5f4-9a88-4307-8ea3-d8538ccd6523" -ExternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSAdapterGuid "0e5ff5f4-9a88-4307-8ea3-d8538ccd6523"
Set-TransportService -Identity ExchangeHybrid02.domain.tld -ExternalDNSAdapterGuid "0e5ff5f4-9a88-4307-8ea3-d8538ccd6523" -ExternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSServers 172.xx.xx.xx,172.xx.xx.xx -InternalDNSAdapterGuid "0e5ff5f4-9a88-4307-8ea3-d8538ccd6523"
Warum der Fehler mit der Reverse DNS Störung Auftrat und im Anschluss nicht auch wieder genau so verschwand, kann ich leider nicht sagen. Nach der Änderungen funktionierte der Mailverkehr jedoch wieder reibungslos.