EQMacEmu / Server

Other
28 stars 96 forks source link

LAN connected client does not transfer from server select to character select #57

Closed bullr closed 2 days ago

bullr commented 3 days ago

As of updating to latest source on 11/25/2024 LAN connected clients are prevented from making it past server select into the character select screen.

Prior update was 9/9/2024 and all was working fine then. Both local LAN clients and public (internet) clients could connect and play on the server without issue.

Symptoms:

  1. On startup of the login server the following NEW error is produced on the console:

Login | Info | Handle_NewLSInfo world_server.cpp:Handle_NewLSInfo:274 | Handle_NewLSInfo error, local address was null, defaulting to localhost

It seems this file (world_server.cpp) has not been touched previously since July 17th, 2024. Upon further inspection this error is produced here on line 274:

https://github.com/EQMacEmu/Server/blob/main/loginserver/world_server.cpp

https://github.com/EQMacEmu/Server/commits/main/loginserver/world_server.cpp

So is [ i->local_address] not being fed the proper data since the recent change?

  1. When logging into the server from a client connected on the same LAN as the server the server select menu shows with the server listed as UP. When Play EverQuest is clicked the client is transferred to a black screen, hangs for a moment, then kicks back to server select with a 1017 error message.

  2. When logging into the server from a publicly connected client (through internet, to public IP of router, NAT + port forward to server inside LAN) the client connects as expected and all works fine.

No changes have been made to clients or server configs since the last update when all was working as expected. The only change is the server-source update, recompiled server binaries, and database updates.

Expected results: both public and LAN clients should be able to connect to the same loginserver, and be processed to the world server as they could prior to the regression.

bullr commented 3 days ago

The LocalAddress changes in this update on Oct 14th may provide a few clues as well.

https://github.com/EQMacEmu/Server/compare/d331de3d9cc54468616227593480dcc305872426...cb4d2996637ea9df65b1352dcf6fed961c86a135

regneq commented 2 days ago

This is fixed with this commit: https://github.com/EQMacEmu/Server/commit/312f4ca504505cb7a210cabfd8f43b27c959422d