Jump to content
  • 0

Life of Packet (Connectivity)


Foob

Question


  • Group:  Members
  • Topic Count:  46
  • Topics Per Day:  0.02
  • Content Count:  267
  • Reputation:   40
  • Joined:  01/19/17
  • Last Seen:  

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
Link to comment
Share on other sites

7 answers to this question

Recommended Posts

  • 0

  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  351
  • Reputation:   263
  • Joined:  09/08/13
  • Last Seen:  

I have fixed patch "Enable Proxy Support". You should download and replace file "EnableProxySupport.qs" in "../Patches/" folder.

https://mega.nz/#!xEMmWSQb!rY1HkFXAU1zXLR1RDMPWPpHq-zf9PSPnbwOni_qszn8

  • Upvote 3
Link to comment
Share on other sites

  • 0

  • Group:  Developer
  • Topic Count:  7
  • Topics Per Day:  0.00
  • Content Count:  292
  • Reputation:   199
  • Joined:  05/03/13
  • Last Seen:  

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
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  46
  • Topics Per Day:  0.02
  • Content Count:  267
  • Reputation:   40
  • Joined:  01/19/17
  • Last Seen:  

@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.

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  351
  • Reputation:   263
  • Joined:  09/08/13
  • Last Seen:  

@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
Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  46
  • Topics Per Day:  0.02
  • Content Count:  267
  • Reputation:   40
  • Joined:  01/19/17
  • Last Seen:  

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?

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  3
  • Topics Per Day:  0.00
  • Content Count:  351
  • Reputation:   263
  • Joined:  09/08/13
  • Last Seen:  

Do you use the latest NEMO?

https://gitlab.com/4144/Nemo/-/archive/master/Nemo-master.zip

If yes - send me your EXE with applied patch "Enable Proxy Support".

Link to comment
Share on other sites

  • 0

  • Group:  Members
  • Topic Count:  46
  • Topics Per Day:  0.02
  • Content Count:  267
  • Reputation:   40
  • Joined:  01/19/17
  • Last Seen:  

@Functor: Yes I've used latest Nemo by 4144. Kindly see attached file for the EXE. it is still on a test patch though with read data folder first.Ragexe.exe

Ragexe.rar

@Functor: works perfect! thanks!

  • Upvote 1
Link to comment
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.

×
×
  • Create New...