• 0
Sign in to follow this  
iAmGnome

Life of Packet (Connectivity)

Question

Posted (edited)

Hello,

Note: Not sure where to put this thread so I just added it here. Kindly transfer if needed.

So, I have a question with regards to connectivity from client (ragexe) to server (rAthena). The question is, how does rAthena communicates with the client? Let say I have this scenario described(shown) below.

Login Connection Direction
Ingress: Client PUBLIC IP -> Proxy (X.X.X.A) -> Server IP (rAthena) where -> = connects to
However, the reply of server (rAthena)
Egress: Server -> Client PUBLIC IP where the proxy is already bypassed.

Char Connection Direction
Ingress: Client PUBLIC IP  -> Server IP (rAthena) where 
Egress: Server -> Client PUBLIC IP

Clearly, in the char connectivity proxy is bypassed.

Is it possible for the server to communicate only where the login originated?

Edited by iAmGnome

Share this post


Link to post
Share on other sites

7 answers to this question

Recommended Posts

  • 0
Posted (edited)

If you have control over the proxy you can tell the server to share the ip of the proxy instead of it‘s own.

for your login scenario: I don’t think the proxy is bypassed, the server only knows the Ip of the proxy, how should he send an answer to the client ip directly? (That’s wrong if there is a client packet which contains the client ip but I doubt) 

for the char scenario: Same as above. If you have control over the proxy you can share it’s ip instead of the servers public ip.

in both scenarios: if you don’t have control over the proxy (eg user uses the proxy) then non of the connections will be bypassed.

You can imagine a proxy as something you hide behind, your communication partner does not know that you are not the proxy but sit somewhere behind it. This works as long as all your traffic (related to the communication with your partner) is „tunneled“ through the proxy. 

Edited by Normynator

Share this post


Link to post
Share on other sites
  • 0

@Normynator a good insight! Thanks for the clarification. I think I missed this part wherein the proxy should share its own IP instead of the client. Hoping that there's no packet that encapsulates the real IP of the user.

Share this post


Link to post
Share on other sites
  • 0
Posted (edited)

@iAmGnome

If I get this right, you have the problem that EXE connects to char server directly without using IP of proxy server from "clientinfo.xml/sclientinfo.xml".

By default:

- EXE uses IP from "clientinfo.xml/sclientinfo.xml" for connection to login server
- EXE uses IP from login server's network packet for connection to char server
- EXE uses IP from char server's network packet for connection to map server

If you want to force EXE using IP from "clientinfo.xml/sclientinfo.xml" for all servers - you need to apply EXE patch - "Enable Proxy Support". In this case EXE will ignore server-provided IPs from network packets.

Edited by Functor
  • MVP 2

Share this post


Link to post
Share on other sites
  • 0

Thanks for the great answer @Functor

It seems like the enable proxy support patch is not working as it is intended to work since after applying it to the client, it still communicate with the IP provided by the map/char server. Hence, exe is not ignoring it instead still using it.

By chance, do you have an updated patch for it sir?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
Sign in to follow this