The first thing I saw, the inbound request by IP was xxx.xxx.xxx.28 and the outbound answer by IP was xxx.xxx.xxx.29.
In this case, the appliance/software/whatever can identify as a man-in-the-middle. Your request was answered with a different IP. Some applications did not accept this kind of answer and can block it.
This is a common error in some deployments. The public IP that receive the request, must send the answer with the same public IP. If I receive the request in the IP 220.127.116.11(example) the server must send the answer with 18.104.22.168. To check if the public IP is the same that receive the request, you can go to a site that show your public IP.
I hope you enjoy this tip!