We have a WCF service that's self-hosted by a Windows Service inside our corporate network, which resides behind a HTTP web proxy (MacAfee Web Gateway).
The WCF service is called by a web application residing in Azure Websites. The web app calls the WCF by utilizing the NetTcpRelayBinding.
Since the WCF service is behind the HTTP proxy, I need to place the following in the app.config so that it can communicate through the HTTP proxy.
<defaultProxy useDefaultCredentials="true"> <proxy proxyaddress="http://inetproxy:80" usesystemdefault="True"/></defaultProxy>
This setup has been working well for several months. The WCF service is using the Windows Azure Service Bus2.2.7 SDK.
https://www.nuget.org/packages/WindowsAzure.ServiceBus/2.2.7
Today I attempted to upgrade to a newer SDK and the result was that the WCF service could no longer communicate through the HTTP proxy. I would receive the following error when the WCF service attempted to start up and connect to Azure.
System.IO.IOException: The handshake failed due to an unexpected packet format.
I tried several different Azure Service Bus SDK versions, including the most recent version... 2.5.2. All versions give me the same error. I can only make things work with version 2.2.7. All the more recent versions cause this error when communicating through the HTTP proxy.
Everything works fine with the newer versions of the SDK if I'm on my home network, since I don't have to go through the HTTP proxy.
It appears a change that was introduced in version 2.3.0 is causing the problems.
My question, can I get some information on what would have changed from version 2.2.7 of the SDK to version 2.3.0 that would cause our WCF service to no longer work through the HTTP web proxy while utilizing the NetTcpRelayBinding?
Thanks,
Chris.