WSUS synchronization fails with SoapException after July, 8th 2019

Home / WSUS synchronization fails with SoapException after July, 8th 2019

Microsoft is decommissioning a Windows Update endpoint, which might prevent your WSUS from synchronizing with Microsoft servers.
Your WSUS comes with the predefined URL from which it downloads updates. This endpoint for most of our WSUS server is fe2.update.microsoft.com. Microsoft will decommission it on July, 8th 2019.
Normally this is not an issue as your WSUS will automatically move to the new endpoint. If your WSUS does not update correctly, you will see synchronization errors in your WSUS console and log.
The error message is:
SoapException: Fault occurred
at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
at Microsoft.UpdateServices.ServerSyncWebServices.ServerSync.ServerSyncProxy.GetUpdateData(Cookie cookie, UpdateIdentity[] updateIds)
at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.WebserviceGetUpdateData(UpdateIdentity[] updateIds, List`1 allMetadata, List`1 allFileUrls, Boolean isForConfig)
at Microsoft.UpdateServices.ServerSync.CatalogSyncAgentCore.GetUpdateDataInChunksAndImport(List`1 neededUpdates, List`1 allMetadata, List`1 allFileUrls, Boolean isConfigData)
at Microsoft.UpdateServices.ServerSync.Cat

If you look into your WSUS log file (%ProgramFiles%\Update Services\LogFiles\SoftwareDistribution.log), you should see the following errors:

How to change the URL?

You just need a few Powershell commands to check the URL and update it.

For WSUS 3.x

First let us check the settings of your WSUS:

[void][reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$server = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer()
$config = $server.GetConfiguration()
# Check current settings before you change them
$config.MUUrl
$config.RedirectorChangeNumber

Server 2008R2: The result should be https://sws.update.microsoft.com, if your server updated correctly.
Server 2008 or earlier: The result should be https://sws1.update.microsoft.com, if your server updated correctly. If the URL is https://fe2.update.microsoft.com/v6, https://update.microsoft.com/v6 or https://www.update.microsoft.com, you have to update it.

If you need to update your Server 2008R2:

[void][reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$server = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer()
$config = $server.GetConfiguration()
$config.MUUrl = "https://sws.update.microsoft.com"
$config.RedirectorChangeNumber = 4002
$config.Save();
iisreset
Restart-Service *Wsus* -v

For Server 2008 or earlier:

[void][reflection.assembly]::LoadWithPartialName("Microsoft.UpdateServices.Administration")
$server = [Microsoft.UpdateServices.Administration.AdminProxy]::GetUpdateServer()
$config = $server.GetConfiguration()
$config.MUUrl = " https://sws1.update.microsoft.com"
$config.RedirectorChangeNumber = 3011
$config.Save();
iisreset
Restart-Service *Wsus* -v

Check if your WSUS synchronizes successfully.

For Server 2012 or later

Open a Powershell prompt and check your current settings:

$server = Get-WsusServer
$config = $server.GetConfiguration()
# Check current settings before you change them 
$config.MUUrl
$config.RedirectorChangeNumber

If your URL is still https://fe2.update.microsoft.com, you need to update it:

$server = Get-WsusServer
$config = $server.GetConfiguration()
$config.MUUrl = "https://sws.update.microsoft.com"
$config.RedirectorChangeNumber = 4002
$config.Save()
iisreset
Restart-Service *Wsus* -v

Check if your WSUS synchronizes successfully.

Leave a Reply

Your email address will not be published.