5
votes

I wrote a multi-tier application suite in Delphi XE, using DataSnap (VCL application).

This will be used internally, in my company, mostly to replace the outdated fax communication.

Everything works fine, but I came across an unpleasant situation: The server machine is behind a router, so it has an internal network IP. I forwarded (in the router) all incoming connections on port 211(DataSnap default) to the server's internal IP and about 8 times out of ten all the clients connect to the server without any problems.

The problem is that for the rest 2 times I get all sort of connection errors (mostly connection timed out). When it does this I have to close and reopen either the server application either (some of) the clients, and then it works.

Right now I'm still in the design phase, so it's only a bother, but when I do release it I don't want either to tell everyone NOT to EVER close the application (once it works, it works, no more problems), either close and reopen the applications each time there is a connection problem.

How can I eliminate this problem?

I had (only) a look at NetCat and SoCat, but (to me) it seems overkill for this situation. Is there another way to solve this?

1
When you have problems, have you checked the router logs to see what it might be?Some programmer dude
Didn't occur to me so far. I'll do it now and post the results. Thank you.cipnec
Thank you again Joachim. Pretty stupid of me not to check the router log. Anyway, the problem was there indeed, as the router's internal firewall was sometimes blocking my apps. Problem solved!cipnec
@JoachimPileborg - You should put your comment as an answer so the OP can accept it and not affect the balance of the universe :-)Leonardo Herrera

1 Answers

2
votes

The solution was switching off router's internal firewall.