Master server advertising the wrong port
Posted: Sun Aug 26, 2012 5:42 pm
This issue has been driving me insane! I have an OpenBSD box acting as a gateway with portforwarding to a Debian box to host Zandronum on, and I can verify that the forward works by manually connecting from the outside, but when I set my server to update to the master, I see my IP in the master server's list with a random port number, and (of course) no server info.
Does the master server decide which port a server is running on based on the source port the update comes from? If so, OpenBSD port randomization is probably causing this problem, and the master server should receive port number info from the server instead of by which port it came from. If this is the case, I'll file a bug report, because OpenBSD probably isn't the only NAT that randomizes ports. Any ideas?
Yep, it seems my guess was right.
If anyone else is running into this issue and using a pf-based firewall, I got things working by adding a new rule to my set before my normal nat rule:
match out on $ext_if from $doomserver to any nat-to ($ext_if) static-port
This issue also applies to skulltag. I'll write up a bug report on it, but for now, at least I have a workaround.
I've submitted it in the bug tracker at http://zandronum.com/tracker/view.php?id=992
Does the master server decide which port a server is running on based on the source port the update comes from? If so, OpenBSD port randomization is probably causing this problem, and the master server should receive port number info from the server instead of by which port it came from. If this is the case, I'll file a bug report, because OpenBSD probably isn't the only NAT that randomizes ports. Any ideas?
Yep, it seems my guess was right.
If anyone else is running into this issue and using a pf-based firewall, I got things working by adding a new rule to my set before my normal nat rule:
match out on $ext_if from $doomserver to any nat-to ($ext_if) static-port
This issue also applies to skulltag. I'll write up a bug report on it, but for now, at least I have a workaround.
I've submitted it in the bug tracker at http://zandronum.com/tracker/view.php?id=992