I'm hosting a TCP based server that Flash clients connect to over an XMLSocket. This requires a policy server to run on the same server on port 843. Flash clients have no problem connecting when running from inside the firewall and connecting to localhost. Running the following command from a remote linux box shows that the flash policy server does respond with a valid response (at least when it's not actually a flash client):
python -c 'print "<policy-file-request/>%c" % 0' | nc 178.xxx.xxx.xxx 843 <?xml version="1.0" encoding="UTF-8"?> <cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFileSocket.xsd"> <allow-access-from domain="*" to-ports="*" secure="false" />
Running this with wireshark on, everything looks normal. However, attempting to connect with a flash client on the same machine wireshark shows the TCP SYN packet going to the server, but no SYN ACK is ever returned.
The server that is hosting the policy server is a Windows Server 2008 RC2 SP1. Is there some setting that I'm overlooking? Everything works fine on our old server, we're only experiencing this on the new server we're trying to migrate to.
Here is what Wireshark shows for the flash client request:
Here is the output for fetching the policy request with nc:
The one difference seems to be in window size for the initial SYN packet.