Client/server communication is blocked by firewall - sockets

I am running an online game site in which the users login to the web site and open a game client (Java applet) that communicates with the game server (also written in Java) by opening a socket connection to port 3000 of the same host.
There is a problem with this model in that sometimes the client network has firewall rules that block all ports except for port 80. So in effect the particular user can browse and login to the web site, but he cannot play because the connection to port 3000 is blocked.
I am looking for a solution to this issue and hope to hear suggestions from anyone who has had a similar experience.
Many thanks,
Andy

Can you use somesubdomain.yourhost.com:80 instead of yourhost.com:3000?

Related

Jupyterhub multiple web applications port problem

at my firm we have a jupyterhub/lab installed and is used by roughly 70-100 people in a secure network that can only be accessed to from work. Recently the idea of hosting web-applications for short time use came up, but we are having port problems. User A is running a web application on port 5000, and User B can’t use the port because it is already in use. Port 5000 is default, it can be changed but this is not the behavior we want. Does anyone know of a way for web-applications to run on the same port in the same environment? Have looked into server-proxy but i do not really understand it. Is the way to achieve this really to be running a vm for each user securing that the port is not in use?
Any help is appreciated

gwan. Accessing site through external IP

I have a Gwan server set up at home on my Arch Linux box. I'm running "motion". I have a router that, of course, handles my external IP address.
I want to access the avi movie shorts generated by motion through port 1000 which is port forwarded through my router to the box on my internal network. I've written an event_end script that copies these motion videos to my Gwan "Document Root". I've set the particular directory up according to the Gwan docs and can see these videos using the external ip address:1000 just fine when I'm at home. But when I click on the very same link from the machine at my office, I get this error message in Firefox: "Firefox can't establish a connection to the server at 99.99.99.99:1000.".
So I don't understand why I can see that link when I'm at home but not from anyplace else. What setting have I missed?
Thanks.
Are you sure that your firewall at work allows traffic on port :1000 at all?
port 1000 which is port forwarded through my router to the box on my internal network [at home]... but I get an error "Firefox can't establish a connection to the server at 99.99.99.99:1000" [from my office].
As Pete noticed, this sounds like a routing error.
As the HTTP client, Firefox, cannot even establish a connection, the problem happens before G-WAN can do anything.
while I was using quickserve, I could view those videos just fine while using port:1000
...probably from your private network at home, and not from your office.
If quickserve was available from your office then, since then, you have messed with the router port mapping OR with the G-WAN listener (hence the connection failure).
Unfortunately, since G-WAN won't receive anything until you get this right, its log files won't help.
And as you do not provide any information about your port mapping and G-WAN listener, we can't help you to spot obvious errors.
Note that this issue is a system configuration problem and has little to do with the G-WAN application server itself (remember that Stackoverflow is a Q&A site for developers). The Serverfault site might be a better place to discuss your problem.

How to Listen for Socket on high numbered port

My chat server wasn't working on port 6667 (a common irc chat server port), so I switched it to port 844 and it works fine now. I had my firewall disabled, but something was still preventing remote connections to port 6667.... This is on Windows Server 2008, a virtual server with GoDaddy.
Does anyone know how to unblock the higher port numbers?
From what I can see at this link, GoDaddy blocks port 6667 to prevent abuse.
http://support.godaddy.com/groups/dedicated-linux/forum/topic/tcp-server-getting-started/
If that information is up-to-date, there's really nothing you can do without contacting GoDaddy support and ask to have it unblocked.
Edit: Better link and yes, it seems accurate that there are blocks.
http://support.godaddy.com/groups/web-hosting/forum/topic/centos-vps-irc/

Accessing Web Services from iPhone on PC through network

I asked a very similar question not too long ago and got some great responses. I've made it pretty far but still can't quite get things to talk. What I have is a PC running IIS and a web service inside of that. I'm trying to get the iPhone simulator on my Mac to be able to see this web service. I can ping my PCs local IP address from the Mac just fine, it's clearly alive and on the network. However, no matter what URL I enter into Safari the web service will not appear.
Any suggestions?
Thank you very much in advance.
Is this a web service or web application?
One fair possibility is that your Windows firewall could be blocking access to port 80. If it is, open your Windows firewall settings and add an exception for port 80 (Control Panel -> Windows Firewall -> Exceptions).
You might try using telnet on your Mac to test connecting to the web service/application.

How to stop routers blocking traffic within a network?

I have an iPhone app which relies on connecting via the local network to a server running on a user's mac/pc.
The server is running an http service on port 8080
I already add exceptions to the default windows firewall, or the default mac firewall to ensure traffic is allowed to reach my app.
However the most common customer issue is that the iPhone can't communicate with the server.
Normally this is the network router blocking traffic - though sometimes the user is running their own firewall which blocks the traffic.
Is there a protocol which will let me say something to the effect of
'will all the firewalls on this network, please allow communication to <an ip> on <a port> if the traffic originates within this network?'
I have looked into upnp - but that seems to concentrate on opening a port to the outside world which I don't want to do.
suggestions?
thanks in advance.
No, there is no such way or protocol aside from UPnP. And I wouldn't recommend it anyway because in company networks it would cause all sorts of problems and security issues if this were possible.
I'd suggest that you set up a FAQ entry or installation section for your software where you describe this common issue and give details to the customers how they can detect and solve this problem.
In general, higher ports (above 8000 or 16000) are not blocked or firewalled. I would seriously consider allocating a random port in that range.
Also, consider to advertise your service with Bonjour. Using Bonjour has the nice side-effect that your iPhone app does not have to know the port number. It can simply browse the network for available servers. If there is just one then connect to that, otherwise present the user with a list to choose.
Is there any way to run the server on port 80? You're likely to encounter fewer issues on a standard port.