Original Post
Hello,
Can you help me to demystify a particular point regarding TCP/IP:
Here is the situation:
We have written a client/server application that is running over a LAN and we are now trying to make it work over a WAN (internet).
To do that, we use the "simple" way, ( without TCP punch through or any fancy stuff ):
Port forwarding.
Let's say Client C is trying to establish a TCP connection with Server S on port 4444, and both C and S are behind two differents NAT (NAT_C and NAT_S )
At first we thought that it will be necessary to write port forwarding rules (for port 4444) for both NAT_C and NAT_S.
Because of a technical problem we were not able to setup the port forwarding rule for NAT_C. (But port forwarding for NAT_S was ok )
Despite this, we decided to run a test.
And we achieve to establish a valid TCP connection: Data were succesfully transmitted from C to S AND from S to C.
The point is that there was NO port forwarding on NAT_C .
Here are my questions:
How does the TCP/IP connection was correctly established between the two peers ?
How data can flow from S to C WITHOUT port forwarding on the NAT_C ?
From what we understood, it seams that port forwarding is only necessary on the server side. WHY ?
Thanks for your help
Can you help me to demystify a particular point regarding TCP/IP:
Here is the situation:
We have written a client/server application that is running over a LAN and we are now trying to make it work over a WAN (internet).
To do that, we use the "simple" way, ( without TCP punch through or any fancy stuff ):
Port forwarding.
Let's say Client C is trying to establish a TCP connection with Server S on port 4444, and both C and S are behind two differents NAT (NAT_C and NAT_S )
At first we thought that it will be necessary to write port forwarding rules (for port 4444) for both NAT_C and NAT_S.
Because of a technical problem we were not able to setup the port forwarding rule for NAT_C. (But port forwarding for NAT_S was ok )
Despite this, we decided to run a test.
And we achieve to establish a valid TCP connection: Data were succesfully transmitted from C to S AND from S to C.
The point is that there was NO port forwarding on NAT_C .
Here are my questions:
How does the TCP/IP connection was correctly established between the two peers ?
How data can flow from S to C WITHOUT port forwarding on the NAT_C ?
From what we understood, it seams that port forwarding is only necessary on the server side. WHY ?
Thanks for your help