Client won't start over a VPN connection

Hello,

We’ve been using Servoy for a number of years. INcluding over multiple VPNs. We’ve just recently changed out our firewall and have new VPN software. With this software the client won’t properly start. IT can’t complete the connection. I’ve included the error messages below. We’ve allowed ports 8081(our port 8080, as 8080 is used by something else on the server, that’s not the problem) and 1099 through the firewall.
Anybody have any idea what is misconfigured here???

We’re running Servoy server version 2.2.7

Relevant Servoy parameters (is there somewhere where all the parameters are defined?)

SocketFactory.SSLKeystorePassphrase=
SocketFactory.SSLKeystorePath=
SocketFactory.useSSL=true
SocketFactory.useTwoWaySocket=true
java.rmi.server.hostname=127.0.0.1
rmi.connection.timeout=10
localhost8080SocketFactory.useTwoWaySocket=true
servoy.rmiStartPort=1099
usedRMIRegistryPort=1100

Client error messages

Two windows pop up -
Der Client konnte nicht registriert werden (Translation: The client couldn’t be registered)
No licenses or trial licenses left. Exiting.

Server logs

java.rmi.ConnectIOException: Exception creating connection to: 192.168.100.4; nested exception is:
java.io.InterruptedIOException: The socket pool for a client 192.168.100.4:2185 did not recieve a callback socket from the client within 60004ms, pool still e
mpty
java.rmi.ConnectIOException: Exception creating connection to: 192.168.100.4; nested exception is:
java.io.InterruptedIOException: The socket pool for a client 192.168.100.4:2185 did not recieve a callback socket from the client within 60004ms, pool still e
mpty
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:587)
at sun.rmi.transport.tcp.TCPChannel.createConnection(TCPChannel.java:185)
at sun.rmi.transport.tcp.TCPChannel.newConnection(TCPChannel.java:171)
at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:94)
at com.servoy.j2db.UserClient_Stub.getClientInfo(Unknown Source)
at com.servoy.j2db.dataprocessing.j.a(Unknown Source)
at com.servoy.j2db.dataprocessing.SQLEngine.register(Unknown Source)
at sun.reflect.GeneratedMethodAccessor213.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:294)
at sun.rmi.transport.Transport$1.run(Transport.java:153)
at java.security.AccessController.doPrivileged(Native Method)
at sun.rmi.transport.Transport.serviceCall(Transport.java:149)
at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:466)
at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:707)
at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.InterruptedIOException: The socket pool for a client 192.168.100.4:2185 did not recieve a callback socket from the client within 60004ms, pool stil
l empty
at com.servoy.j2db.util.a.b.a(Unknown Source)
at com.servoy.j2db.util.a.d.createSocket(Unknown Source)
at sun.rmi.transport.tcp.TCPEndpoint.newSocket(TCPEndpoint.java:569)
… 16 more

Client logs

Remote Socket connection failed for the 1 time (trying 10times) for request port: 2174 sockets created to servoy.intern.efonds.ag:1099
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.(Unknown Source)
at java.net.Socket.(Unknown Source)
at com.servoy.j2db.util.a.c.run(Unknown Source)
Remote Socket connection failed for the 2 time (trying 10times) for request port: 2174 sockets created to servoy.intern.efonds.ag:1099
java.net.ConnectException: Connection timed out: connect
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.PlainSocketImpl.doConnect(Unknown Source)
at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
at java.net.PlainSocketImpl.connect(Unknown Source)
at java.net.SocksSocketImpl.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.connect(Unknown Source)
at java.net.Socket.(Unknown Source)
at java.net.Socket.(Unknown Source)
at com.servoy.j2db.util.a.c.run(Unknown Source)

Your log indicates port 1099 isn’t open, check VPN/firewall settings.

Hi, thanks for you response.

As far as I can see port 1099 is allowed through the VPN. I have verified this with a telnet on the port.

If port 1099 was not allowed would there even be any timeout messages in the server logs? The server wouldn’t even know that a connection is attempted.

Thanks again,
Frank Mattheus

so from that same client you can telnet to servoy.intern.efonds.ag:1099 ?

But what i also find strange is that you have rmi.hostname = localhost so it should also try to connect to that (and then tunnel it further)

Are you sure that 2 way client is setup in the Client settings? Not only in the server? Because maybe it was disabled once and then the Client doesn’t go back on to use it.