A quick chat with telexicon from the Last Epoch Discord, and the issue is the MTU negotation of the EHG servers. Which can temprarely be fixed by changing the MTU of your network card. That’s why certain tools like network optimisers or VPN clients work.
What is the real issue. It seems the EHG servers ( Google, Azure, no idea what else they use ) are first trying to ICMP before they negotiate further. If the ICMP fails, they disconnect. Now they seem to disconnect when the MTU is too large. Normally there is a protocol in place that would negotiate the MTU, and there would be no problem. But for some reason this seems to be disabled on the EHG servers ( for now ).
How did we get to this conclusion? I tracked the player.log for IP addresses. Everytime I got disconnected I looked up the last IP address it was trying to connect to and then did the following.
So for example one of the servers was 178.162.210.107 when trying to port to a certain map.
This command tries to connect with an “MTU” of 1350:
ping 178.162.210.107 -t -f -l 1350
If it replies with a ping succesful, and the normal latency report in ms, all is fine, you can use that MTU.
On the otherhand if it reports:
Packet needs to be fragmented but DF set.
That means the EHG server is refusing this packet because it’s set to refuse any fragmented packages. Now, normally, this is never enabled. And my wild guess is that the infrastructure team enabled this during the launch days to get things stable. Without thinking about consequences to clients.
And You’ll have to lower the number even further.
How to resolve this is simple, you have to change the MTU of the network card that goes to the internet. Most PC’s that is your only network card you have. In windows you do this with the following command.
netsh interface ipv4 set subinterface “[Interface Name]” mtu=900 store=persistent
I’ve had to go as low as 900 for some servers. And since you never know on what server you will connect to, I just set it to the lowest I’ve seen so far. The bandwidth will be higher due to more overhead, but for single connections it’s fine.
Be sure to change it back to 1400 / 1500 the moment you are going to play something else online.
For me, all connections stayed stable. I wasn’t able to play at all due to disconnects for several days. And now it’s all resolved.