Ok, I know there's a hundred threads on this same issue on these forums, but I swear I've tried everything I could think of or find and still cannot come up with the solution. It seems like it must be something simple I'm missing. Here's the situation:
Using sv_lan 1 and +ip <internal ip> the server runs fine. People can connect from other pcs on my lan using the internal ip.
Using sv_lan 1 and running hamachi, using +ip <hamachi ip> also works fine. People can connect from other pcs on the hamachi network using the hamachi ip (assuming we use hamachi ip masking to make the server think all our hamachi ips are on the same class c subnet).
Using sv_lan 0 and +ip <internal ip> the server looks like it runs fine. It starts up with no problems. People can connect from other pcs on the lan using the internal ip. No one can connect from outside the lan using the external ip. Server is not visible, not responding, or simply hangs upon manually connecting using the "connect" console command.
Using sv_lan 0 and +ip <external ip> throws ip binding errors (obviously).
The game in particular I'm trying to set up is L4D. But I tested this with HL2DM and am having the same problem. Ports are absolutely positively forwarded. I've forwarded 27000 - 28000 to the server's local ip. I even tried [briefly] putting the server machine on the DMZ with unchanged results, but I did not test this exhaustively.
Supposedly there has always been an issue with running internet source servers behind NATs where the server will report its internal ip to the master server instead of its external ip, thus making it invisible in the master list, and apparently unconnectable as well. See these threads for more info on this as a "confirmed" bug: http://forums.steampowered.com/forums/showthread.php?p=8800058#post8800058 and it's included on a list of L4D bugs here, towards the bottom of the "Game, connection, matchmaking and interface issues:" section of this post: http://forums.steampowered.com/forums/showpost.php?p=8463036&postcount=5
But I could swear I've successfully run source servers behind my NAT before with the proper port-forwarding set up. It would seem that running with +ip <internal ip> and using the proper port forwarding should be all you need, but either something is missing from my setup (like a strange necessary port I don't know about?), or this bug is real and the issue is because the master server knows my reported ip to be my internal. Also I've dug up suspicions that certain routers may be responsible for problems with the port forwarding not working as advertised, but this seems far fetched to me, at least as a possible cause for this problem.
If it matters I'm using a Linksys WRT54G v2.2 using dd-wrt v24-sp1 firmware. Running the server on a Server 2003 SP2 machine. I've also tried using both the console and GUI versions of the gameserver with equal results.
Startup line:
server.cfg:
Thanks for any new insights, and for taking the time to read this thoroughly,
== Matt
Using sv_lan 1 and +ip <internal ip> the server runs fine. People can connect from other pcs on my lan using the internal ip.
Using sv_lan 1 and running hamachi, using +ip <hamachi ip> also works fine. People can connect from other pcs on the hamachi network using the hamachi ip (assuming we use hamachi ip masking to make the server think all our hamachi ips are on the same class c subnet).
Using sv_lan 0 and +ip <internal ip> the server looks like it runs fine. It starts up with no problems. People can connect from other pcs on the lan using the internal ip. No one can connect from outside the lan using the external ip. Server is not visible, not responding, or simply hangs upon manually connecting using the "connect" console command.
Using sv_lan 0 and +ip <external ip> throws ip binding errors (obviously).
The game in particular I'm trying to set up is L4D. But I tested this with HL2DM and am having the same problem. Ports are absolutely positively forwarded. I've forwarded 27000 - 28000 to the server's local ip. I even tried [briefly] putting the server machine on the DMZ with unchanged results, but I did not test this exhaustively.
Supposedly there has always been an issue with running internet source servers behind NATs where the server will report its internal ip to the master server instead of its external ip, thus making it invisible in the master list, and apparently unconnectable as well. See these threads for more info on this as a "confirmed" bug: http://forums.steampowered.com/forums/showthread.php?p=8800058#post8800058 and it's included on a list of L4D bugs here, towards the bottom of the "Game, connection, matchmaking and interface issues:" section of this post: http://forums.steampowered.com/forums/showpost.php?p=8463036&postcount=5
But I could swear I've successfully run source servers behind my NAT before with the proper port-forwarding set up. It would seem that running with +ip <internal ip> and using the proper port forwarding should be all you need, but either something is missing from my setup (like a strange necessary port I don't know about?), or this bug is real and the issue is because the master server knows my reported ip to be my internal. Also I've dug up suspicions that certain routers may be responsible for problems with the port forwarding not working as advertised, but this seems far fetched to me, at least as a possible cause for this problem.
If it matters I'm using a Linksys WRT54G v2.2 using dd-wrt v24-sp1 firmware. Running the server on a Server 2003 SP2 machine. I've also tried using both the console and GUI versions of the gameserver with equal results.
Startup line:
Code:
"blah\blah\srcds.exe" -game left4dead +ip <internal ip> -port 27016 -tickrate 66 +exec server.cfg +map l4d_farm01_hilltop
server.cfg:
Code:
hostname "MyServer"
rcon_password "MyPass"
sv_password "ConnectPass"
sv_lan 1
sv_allow_lobby_connect_only 0
sv_steamgroup <steam group id>
sv_search_key <my search key>
z_difficulty impossible
Thanks for any new insights, and for taking the time to read this thoroughly,
== Matt