Author Topic: Any explanation for punch packet hell and how to fix it?  (Read 1868 times)

I have a VPS with a dedicated running on it. I occasionally have difficulty joining. I can tell the server is receiving my connection attempt as I can see the console and it sending punch packets back, but what I don't understand is why my connection attempt won't complete. Occasionally it will work, and the majority of the time it won't.

This is a more open-ended sort of question since I want to get an understanding of how networking is handled in BL and if there's any way to fix these sort of issues.
« Last Edit: September 30, 2016, 05:59:41 PM by Conan »

What is your ping on the server (CTRL + N) and what OS is it using?

What is your ping on the server (CTRL + N) and what OS is it using?
I have ping dependent on my internet connection when I am connected, which can range anywhere from 50-5000 (again, individual ranges depend on my internet connection). When I cant connect, the ping is ---. If I refresh the server list enough, I occasionally get a non-null ping.

If i disconnect from the server after connecting, I can immediately rejoin without any problem. I do not know how long this "effect" lasts

The server uses a Windows 2008 OS. I used to be able to connect to it even with --- ping, and a number of my friends have 0 issue connecting whatsoever. These friends locations can be anywhere from Cali to UK, and the server is based in the East Coast. I connect from Cali.

If i disconnect from the server after connecting, I can immediately rejoin without any problem. I do not know how long this "effect" lasts
Does this happen on other servers too? You're describing a similar issue I had before the newest revision. I fixed it by deleting my cache.db + new update. I don't know if it helps at all but you might as well delete cache.db and see if your problem persists.

I have ping dependent on my internet connection when I am connected, which can range anywhere from 50-5000 (again, individual ranges depend on my internet connection). When I cant connect, the ping is ---. If I refresh the server list enough, I occasionally get a non-null ping.

Useful note: A ping of "---" on the server browser specifically means that your game did not get a ping response within 1000 MS

Does this happen on other servers too? You're describing a similar issue I had before the newest revision. I fixed it by deleting my cache.db + new update. I don't know if it helps at all but you might as well delete cache.db and see if your problem persists.
Does not happen for most other servers - i cant think of any other server i had issues joining with. I already have the latest revision. I will try the cache.db "fix" later - however the intention of this post is to maybe see if anyone has any clue why the issue happens in the first place, since this server - hfest - will (hopefully) have a large playercount. Last year some people couldnt join because of punch packet hell.

Another note, i was hosting two servers on the same port on this vps. One was always joinable, the other has punch packet hell. Everyone on the team (5 people) was able to join the punch packet hell server anytime they wanted, other than me. the other server was empty every time i attempted to join either server.
« Last Edit: September 30, 2016, 08:39:23 PM by Conan »

Yeah, I'm not knowledgeable on what's happening past this point. It feels good to try and help but obviously this is beyond me.

Yeah, I'm experiencing this issue to. Is there any fix?

If you just want to understand what "punch packet" means that I think this is what you're looking for: https://en.wikipedia.org/wiki/Hole_punching_(networking)
That article also has links to articles for TCP and UDP punching

i was hosting two servers on the same port
uhh yeah pretty sure you don't want to do that
« Last Edit: October 01, 2016, 06:50:51 PM by Headcrab Zombie »

ya i closed one server but the issue persists. should fix your wikipedia link

so after reading that - could it be the punch packets from my dedicated to the master server are being lost? under what conditions would that happen?
« Last Edit: October 01, 2016, 02:55:59 PM by Conan »

You can't have two servers on the same port. The server that was launched last will automatically use a different port - and you might not have that one open in your firewall/router?

You can't have two servers on the same port. The server that was launched last will automatically use a different port - and you might not have that one open in your firewall/router?
I can still join it, and so can my friends, just that I can't reliably join it even if there are players on the server and the server is still getting the punch packets i send. I may be wrong about the same-port setup - the port number is way different than I remember setting the other one to.

One thing to note is that usually if I open my VPS through windows remote desktop, I usually can connect within the next 20 seconds.