SRCDS Steam group

Questions regarding a L4D server, lobby connect, and NAT loopback
I have several distinct questions. My setup is that I'm running srcds on one computer and running steam on another, both behind a Verizon Westell modem/router. Both computers have static IP addresses, and ports 27000 through 27030 are directed towards the server. The server is running on port 27016.

I can connect to my server through the "steam group servers" option that pops up on my main menu whenever it's running. Friends of mine can also connect to my server from outside the LAN by connecting directly to my external IP. Joining my server after someone else has connected does not boot them from it, we can play together.

1. I have not yet, after connecting to my server, seen random players connect. sv_lan is set to 0. If I host a game from my client as a local server, I often get random players joining. Why aren't they joining my dedicated server? Is it because of the port I'm using, or is there some reason my dedicated server isn't being broadcast to the rest of the world?

2. I can connect to my server through a lobby connection, but only if mm_dedicated_force_servers is set to use my internal IP. However, if I connect this way, anyone else in my lobby cannot connect. If I set mm_dedicated_force_servers to use my external IP, I cannot connect. Likewise, I cannot directly connect to my external IP. I have been told that this is because my router lacks something called NAT loopback. Is there a workaround for this?

3. A question about campaigns and map rotation. If I start my server on l4d_hospital01_apartment, will the server automatically progress to the next campaign after the finale? If not, is there a way I can set it up so it does?
Well, I solved my first two questions. The answer was so incredibly simple that I almost would never have thought of it: I set the static internal IP of my server to be exactly the same as my external, WAN IP.

Now when I use mm_dedicated_force_servers, it tells machines on the lan to connect to that IP internally, and it tells clients on the internet to connect to it externally. We're all forced to connect to the same address, but it's being resolved in different ways. So incredibly simple.

Not only that, but using the +ip parameter in my srcds not only reports my WAN to the Steam servers (allowing random players to connect to my game in progress), since the internal IP of my server is the same, I don't get the strange console errors that I would get when the internal IP was different.

Now this means I have to change the IP address of my server whenever my WAN IP changes (since I don't have a static IP), but this works for me as a workaround because I don't leave my server up 24/7, I only start it up when I want to play on it. What's more, if I was willing to pay for a static IP, I would never have to change the internal IP of my server.

So, for anyone looking for a solution to this problem, there you go.
Note: I apparently also have to have DMZ Host enabled for my server machine for this to work. I disabled it and the whole thing stopped working.

Forum Jump:

Users browsing this thread: 1 Guest(s)