A few weeks ago it happens very unusual error with the e-mails received by the Microsoft Exchange Server 2013. All e-mails received from one specific e-mail address, which belongs to one of our vendors, are completely garbled.
Every e-mail is composed of several parts and contains the XML code. One day, suddenly, all e-mails are converted to plain text and the attachments are missing. When this anomaly appears, it affected all users.
We started tests to trace those e-mails and to isolate the problem. The test e-mails were sent and we captured them on different points inside our network. Eventually, we discovered that all those e-mails were sent correctly from the remote system and received by our e-mail gateway. However, when the Exchange server received them, they are all delivered as the text messages.
What we can do?
Now we knew where the problem is. First, we need to check a version of the Exchange server. That can be done only from the PowerShell environment. Moreover, you will see some numbers and then you need to find what that means. Sorry, no human readable label like the Exchange Server 2013 Update pack 42.
This version numbers scheme is very common for most of the Microsoft products. Don’t worry. Microsoft published all those information on their TechNet web pages. We just need to find an appropriate page and everything is there.
The Web page that we need now is here. We can find information related to the all Exchange versions. We will focus on the Exchange 2013 in this case.
As you can see from this page, you should execute the command
Get-ExchangeServer | Format-List Name, Edition, AdminDisplayVersion
It will return the server name, edition and, what is important, the version number. In our case this server had the version
AdminDisplayVersion : Version 15.0 (Build 516.32)
We should focus on those numbers in the parenthesis. As we can see, the leading zero omitted. We can add them in front and then our number 516.32 becomes 0516.032.
Dude, where is my update?
We can find this version in the list and those number belongs to the very first version of the Exchange Server 2013. Although we update the Windows Server on regular basis, the WSUS server did not offer updates for the Exchange Server. That means that we must manually download appropriate update pack. Bear this in mind.
The update pack for the Exchange Server is named the Cumulative Update or the CU. This packet is not just the update. Moreover, this is a full installation of the Exchange Server. That means that you can update an existing installation or to install a brand new server from the same software packet. Very useful, isn’t it?
On the TechNet Web page you can find references to the links to download the last two versions of the CUs. You should download and install always the latest version. In my case that was CU12. At the time of writing this is CU13.
And after the upgrade
I will not wasting time on the upgrade process itself. In short, you need to download the CU self-extracting archive. The file size is about 1.6 GB. Unpack it to the disk and launch the setup process. This will take some time, so plan carefully the downtime.
When we finish with the upgrade, we will check again the software version. We should use again the same command from the PowerShell console.
As we can see, now is the version 1178.4 or 1178.004. Note that the leading zero omitted. We can visit again the TechNet page and we can see that version of the Exchange Server is now 2013 CU12.
We solve the problem from the beginning of this article. Moreover, we have a system with significantly more stable work and less consumption of the RAM. No matter how good the software is, if it is complex, there is always a room for an improvement. Therefore, you should always keep your software on the latest version.