title: How to check if client can connect via port 843?
body: <p>Using socket.io, <strong>port 843</strong> seems to give the least issue with firewalls and such, since flash uses that port.</p>
  
  <p>However, many networks block <strong>port 843</strong>, so they can't connect at all.</p>
  
  <p>I have a load balancer set up that can redirect http traffic from <strong>port 80</strong> to <strong>843</strong> so those such people, but my issue is that I can't think of how to test whether someone has port <strong>843</strong> blocked or not.  </p>
  
  <p>Any ideas?</p>
  
  <p>Or if I could change socket.io's <strong>XHR</strong> method to always use an alternate connection url, that would probably be the most ideal. I'm more weary of doing any sort of test that has a timeout, because that delays the connection more. It'd be ideal to change something after the websocket connection attempt times out.</p>
  
  <p>What I'm thinking is..</p>
  
  <pre><code>var socket = io.connect('http://example.com:843', {'connect timeout':5000}); 
  
  socket.on('connect_failed', function(){
      // change socket to connect to port 80
  }
  </code></pre>
  
  <p>but I'm not sure how I'd change the connect url at that point.</p>