Tremulous Forum
General => Troubleshooting => Topic started by: Undeference on September 03, 2006, 05:45:59 am
-
Yes, this has definitely got to be one of the more popular problems: running a dedicated server.
On one of my Linux systems, I'm trying to run a dedicated server (http://tremulous.net/phpBB2/viewtopic.php?t=1912) (link to thread where I mention that), and I even thought I got it working. I have UDP port 30720 forwarded to the appropriate PC on my router, I have my [software] firewall accepting UDP port 30720, I even specify +set net_port 30720 on the command line, and it's not working.
To be more specific, I can't see the server in the server list from any computer except the computer running the server. (Yes, I do have +set dedicated 2 on the command line.) From that computer, it is listed and I can connect fine. Manually using /connect <WAN_IP_addr> (you'll only see "WAN" if I type it as "WAN IP addr") works fine from that computer, but from no others. If I use the LAN IP address from the other computers it works fine.
This is not a problem with the router: I know port forwarding works fine, and since the computer doesn't know my WAN IP address, it can't be doing anything magical. But it's not a problem with the set up either because I can connect using the LAN IP address, just not the WAN IP address (from any computer except the one running the server). Does anyone have any ideas what's going on?
-
i believe that there is another port that you have to forward to your box (and i'm too sleepy to search for it for you, but it's on the forums here somewhere)
-
The only incoming port I found was 30720, and that is the only port temded listens on. The other ports I found are outgoing which isn't the problem.
-
The only incoming port I found was 30720, and that is the only port temded listens on. The other ports I found are outgoing which isn't the problem.
... its sort of hard to know if outgoing is the problem or not really though isn't it?
Hows your heartbeat?
-
The server is listed from the master server from itself. Presumably, it is listed, but everything else filters it out due to packet loss.
It does send its heartbeat every so often.
-
Hmm, I guess it does work. I just saw this:
Client 0 connecting with 150 challenge ping
ClientConnect: 0 [...] (XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX) "^3[mDc]^6^4cAd^2^3MiUm"
broadcast: print "^3[mDc]^6^4cAd^2^3MiUm^7 connected\n"
Sending heartbeat to master.tremulous.net
clientDownload: 0 : "base/highrise3.pk3" download disabledbroadcast: print "^3[mDc]^6^4cAd^2^3MiUm^7 disconnected\n"
ClientDisconnect: 0 [...] (XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX) "^3[mDc]^6^4cAd^2^3MiUm"
So I guess the question then is why I can't connect to my server from my own LAN using my external IP address (with any system other than the server itself).
-
routing
-
looks like you are connecting, but do not have the highrise map locally, so you are being booted cause you don't have autodownload enabled.
Also, some firewall/routers think that if you try to connect to the external, internet routable IP with your internal, non-routable IP that it is a spoofing attempt, though that doesn't look like the issue here. If everything routes through the one IP, try not setting the IP in server.cfg or the command line so that it listens on all IPs. I think the master server looks at the source of data to determine your IP/port, so specifying it is unnecessary, but it will allow you to connect to your internal IP to play.
The double benefit of this is that you won't be using some of your external bandwidth (as your packets would go through your router, to your ISP's router, and back to your router, gobbling up alot,) allowing more people to join and lowering your ping. I often get a ping of 6 ;) edit: (over a crappy wireless!)
-
I always port forward a range of ports for my game servers. Try forwarding ports 30720-30730 using both TCP and UDP. This is what works well on my LAN so that the server can be seen externally.
BTW-
You cannot run a server on your LAN as an internet server and expect to play on it from your LAN without port shifting. The problem is that both the server and the client are using the same ports, but your router is forwarding everything on port 30720 to the server. Use the +set net_port command to shift your server to a different port when starting up and then forward that port range through your router to your server.
Diggs
-
BTW-
You cannot run a server on your LAN as an internet server and expect to play on it from your LAN without port shifting. The problem is that both the server and the client are using the same ports, but your router is forwarding everything on port 30720 to the server. Use the +set net_port command to shift your server to a different port when starting up and then forward that port range through your router to your server.
Port fowerding should only affect WAN -> LAN, and LAN -> WAN if you want, LAN -> LAN connection shouldnt go through the fowerding stuff.
-
I agree it should not and it appears it is not as his LAN connections are fine. He is having problems with his connections through the Internet. I have never gotten a Q2, Q3, UT or Far Cry Internet server to co-exist on a LAN with a client without shifting the server ports. It may be my hardware, software or settings, but as soon as I port shift the server, all my problems and crashes go away. Never had a problem with a listen server, just dedicated servers. Go figure?
Diggs
-
The server is running and named "Betaserv USA". It should be in your list. There were some problems with my map rotation and they have been fixed. If you don't have all the maps, just go to tremulous.info and download everything or look at this thread (http://tremulous.net/phpBB2/viewtopic.php?t=1669) to do it automatically (I'm using my Perl version on the server). sv_allowDownload is disabled because I'm only on a wussy 386kbps upstream connection (and do you really want to download a 13MB map at 20-40KB/s?).
I only forward the ports I need to. I'm not sure why exactly (I'll blame paranoia), but the router I'm using does a good job of discouraging port ranges, so that helps.
My set up should not be a problem. Since I moved tremded to a (real) dedicated server, none of my computers with Tremulous on see my server in the Internet list or can connect using my external IP address. This is not the case with any other servers. This tricked me into thinking that there were more serious problems than just this superfluous one.
So I just use the LAN IP address.
I have never gotten a Q2, Q3, UT or Far Cry Internet server to co-exist on a LAN with a client without shifting the server ports. It may be my hardware, software or settings, but as soon as I port shift the server, all my problems and crashes go away.
I think UPNP could account for that.
-
I'm glad you sorted out your problems. Forwarding 10 ports instead of 1 port to me is not really an issue since we're talking about 50,0000+ ports. What's another couple in the forward list. And, I just am saying what has worked for me in the past.
I only forward the ports I need to. I'm not sure why exactly (I'll blame paranoia), but the router I'm using does a good job of discouraging port ranges, so that helps.
My set up should not be a problem. Since I moved tremded to a (real) dedicated server, none of my computers with Tremulous on see my server in the Internet list or can connect using my external IP address.
This is my point, without shifting ports on the server, my clients on my LAN have never been able to see the server on the internet. They can connect with a local IP address connect command, but not through the internet. Again, just my experiences, others milage my vary.
Anyway, glad your server is up and running.
Diggs