Exchange Updates und .NET Service Pack
Exchange nutzt Funktionen des .NET Framework und je nach Version von Exchange sind bestimmte NET-Versionen eine Mindestvoraussetzungen erforderlich. Das führt manchmal zur der Situation, dass man das aktuelle CU erst installieren kann, wenn das richtige NET-Framework installiert ist. Das geht aber nicht, solange die bestehende Exchange Version noch nicht mit dem geplanten NET-Framework harmoniert. Auf der Seite versuche ich die Zusammenhänge und Updatewege zu beschreiben.
.NET und Betriebssystem
Die erste Information, die sich im Hinterkopf haben müssen ist, dass Exchange Versionen oft mit Windows-Versionen verbunden waren. Damit ist auch eine Version des .NET Framework mit dem Betriebssystem mitgegeben.
Exchange Release | Betriebssystem | Basis NET Framework |
---|---|---|
2007 |
Windows 2008 |
2.0 |
2010 |
Windows 2012 |
2.0 |
2013 |
Windows 2012 |
4.5 |
2016 |
Windows 2016 |
4.5 |
Beachten Sie aber, dass NET Frameworks parallel installiert sein können. So können Sie NET 3.5 problemlos zu 2.0 parallel installieren. Das stört kein Programm, welches 2.0 nutzt. Dies gilt aber nicht für alle Framework-Versionen. Wenn eine Software 4.7.1 vorschreibt, dann kann 4.7.0 oder 4.6 eben nicht parallel installiert sein. Erschwerend kommt hinzu, dass für gewisse Frameworks noch Updates und Hotfixes erforderlich sein können:
Für der Ermittlung der installierten Frameworks können sie folgendes PowerShell-Script nutzen.
- How to: Determine Which .NET Framework
Versions Are Installed
https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-versions-are-installed - How to: Determine which .NET Framework
security updates and hotfixes are installed
https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/how-to-determine-which-net-framework-updates-are-installed - .NET Framework Versions and Dependencies
https://docs.microsoft.com/en-us/dotnet/framework/migration-guide/versions-and-dependencies - .NET Framework Releases
https://GitHub.com/Microsoft/dotnet/blob/master/releases/README.md - Support Ending for the .NET Framework 4,
4.5 and 4.5.1
https://blogs.msdn.microsoft.com/dotnet/2015/12/09/support-ending-for-the-net-framework-4-4-5-and-4-5-1/
Matrix
Ich habe daher versucht aus den verschiedenen Quelle die Matrix zu erstellen, welche Versionen harmoniere und welche nicht möglich sind.
- nr = Nicht relevant
Das alte NET-Framework kann installiert sein aber wird nicht genutzt und ist daher nicht weiter relevant - Ja = Framework wird genutzt und unterstützt
Dieses Framework ist für den Betrieb der angegebenen Exchange Version erforderlich - Nein = Version des Framework wird nicht unterstützt
Die Version wird von Exchange nicht genutzt aber darf aufgrund von Änderungen an bestehenden Frameworks auch nicht installiert werden - ka = Keine Aussage
Microsoft sagt nicht, ob es stört oder nicht. Exchange nutzt eine ältere Version und es sollte nicht stören.
Bei Exchange 2010 ist Net 3.5 erforderlich aber 4.61 darf zusätzlich auch installiert sein.
https://blogs.technet.microsoft.com/exchange/2016/02/10/on-net-framework-4-6-1-and-exchange-compatibility/
Produkt | 2.0 SP1 | 3.0 | 3.5 | 3.5SP1 | 4.0 | 4.5 | 4.5.1 | 4.5.2 | 4.6.1 + Hotfix |
4.6.2 | 4.7.0 | 4.7.1 | 4.7.2 | 4.7.3 | 4.8 |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
2007SP3 |
Ja |
Ja |
Ja |
Ja |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
Ex2010SP3 |
nr |
nr |
NET 3.5 |
Ja |
NET 3.5 muss installiert |
NET 3.5 muss installiert |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
ka |
Ex2013RTM-CU3 |
nr |
nr |
nr |
nr |
nr |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2013SP1-CU12 |
nr |
nr |
nr |
nr |
nr |
Ja |
Ja |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2013CU13 |
nr |
nr |
nr |
nr |
nr |
Ja |
Ja |
Ja |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2013CU15 |
nr |
nr |
nr |
nr |
nr |
Nein |
Ja |
Ja |
Ja |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2013CU16 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2013CU19 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Ja |
Nein |
Nein |
Nein |
Ex2013CU21 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ja |
Ja |
Nein |
Nein |
Ex2013CU23 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ja |
Ja |
Nein |
Ja |
Ex2016RTM |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2016CU2 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Ja |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2016CU3 | nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Ja |
Ja |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2016 CU5 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Nein |
Nein |
Nein |
Nein |
Ex2016 CU8 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Ja |
Nein |
Nein |
Nein |
Ex2016 CU10 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Nein |
Nein |
Ex2016 CU11/12 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ja |
Ja |
Nein |
Nein |
Ex2016 CU13/14 |
nr |
nr |
nr |
nr |
nr |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Nein |
Ja |
Nein |
Ja |
Ex2019 |
|
|
|
|
|
|
|
|
|
|
|
Nein |
Ja |
Nein |
Nein |
Sie können schön sehen, dass frühere Versionen von Exchange und NET etwas entspannter zu handhaben waren während mit Exchange 2013/2016 mit NET 4.5 schon sehr enge Korridore vorgegeben sind.
Aber auch beim .NET Framework gibt es weniger gute Versionen. So sind für 4.6.1 noch Hotfixes je nach Betriebssystem (Windows 2012R2=KB3146715, Windows 2012 0=kb3146714, Windows 2008R2 = KB3146716) erforderlich. Allerdings betrifft das nur Exchange 2013 mit sehr alten Versionen
Microsoft .NET Framework
https://docs.microsoft.com/en-us/exchange/plan-and-deploy/supportability-matrix?view=exchserver-2019#microsoft-net-framework
Direktes Updates auf die aktuelle Version
Beachten Sie dazu die eigene Seite Exchange direktes Update zum Update einer sehr alten Exchange Version auf den aktuellsten Patchstand.
Weitere Links
- Exchange und Windows Service Packs
- Exchange 2007 Servicepacks und Rollups
- Updates für Exchange 2010
- Updates für Exchange 2013
- Updates für Exchange 2016
- “We have validated .NET Framework 4.7.2 on the previously released Exchange Server 2013 Cumulative Update 21 and are announcing .NET Framework support with Exchange Server 2013 Cumulative Update 21 as well.”
Quelle: https://blogs.technet.microsoft.com/exchange/2018/10/16/released-october-2018-quarterly-exchange-updates/ - Advisory on July 2018 .NET Framework Updates
https://blogs.msdn.microsoft.com/dotnet/2018/07/20/advisory-on-july-2018-net-framework-updates/ - Mailboxes are quarantined and databases fail over
unexpectedly in Exchange Server 2013
https://support.microsoft.com/en-us/kb/3095369
https://support.microsoft.com/en-us/help/3095369/mailboxes-are-quarantined-and-databases-fail-over-unexpectedly-in-exch - .NET Framework 4.7 and Exchange Server
https://blogs.technet.microsoft.com/exchange/2017/06/13/net-framework-4-7-and-exchange-server - On .NET Framework 4.6.1 and Exchange compatibility
http://blogs.technet.com/b/exchange/archive/2016/02/10/on-net-framework-4-6-1-and-exchange-compatibility.aspx - .NET Framework 4.6.1 nicht auf Exchange Servern installieren
https://www.frankysweb.de/net-framework-4-6-1-nicht-auf-exchange-servern-installieren - Upgrade Paths for CU’s & .NET
https://eightwone.com/2017/12/21/upgrade-paths-for-cus-net/ -
.NET Framework bei Exchange Updates
berücksichtigen
https://www.frankysweb.de/net-framework-bei-exchange-updates-beruecksichtigen/ -
Upgrade Paths for CU’s & .NET
https://eightwone.com/2017/12/21/upgrade-paths-for-cus-net/ -
Microsoft Updates Guidance for Customers
Running Outdated Exchange Server Cumulative
Updates and .NET Framework Version
https://practical365.com/fixing-outdate-cumulative-updates-net-framework/