PDA

View Full Version : Running a server behind a router -multihome switch doesn't function



darksky
11-24-2007, 04:48 AM
I have my PC that I'd like to use as a server behind a router. My understanding is that one needs to use the -multihome=ipaddy switch where "ipaddy" is your external IP address. When I do this, I get the following error and ut3.exe promptly crashes:


...
Log: Failed to listen: WinSock: binding to port 7777 failed (10049)
...
Log: === Critical error: ===
General protection fault!

History: Address = 0x970340 (filename not found)

Exit: Executing UObject::StaticShutdownAfterError
Exit: Executing UWindowsClient::ShutdownAfterError
Log: Shutting down FaceFX...
Log: FaceFX shutdown.
Exit: Exiting.
Exit: Name subsystem shutting down
Uninitialized: Log file closed, 11/24/07 04:20:12

I can post the entire log file upon request, but that pretty much sums up the errors.

Here is my batch file used to launch the server (I replaced my l/p with XXX and as well, I blanked out my real IP addy
ut3.exe server vCTF-Suspense?Game=UTGameContent.UTVehicleCTFGame_Conte nt?GameMode=3?numplay=4?maxplayers=16?NumPublicCon nections=16?NumPrivateConnections=0?NumOpenPublicC onnections=16?NumOpenPrivateConnections=0?bShouldA dvertise=True?bIsDedicated=True?PureServer=1?timel imit=30?goalscore=5?botskill=3?AdminPassword=XXX? -log=server.log -Login=XXX -Password=XXX -multihome=xxx.xxx.xxx.xxx -nohomedir -unattended

If I keep everything the same except remove the -multihome=xxx.xxx.xxx.xxx line, the server works.

nomadicus
11-24-2007, 07:24 AM
I have had the same problem. I've given up trying to make it work. I keep reading these forums, but I don't see anything from Epic. Even their own stickies aren't being updated.

Sad. People like us form the technical core of the UT community yet the silence is deafening.

lolli11
11-24-2007, 09:53 AM
I have got the same problem...and I am still waiting for the patch to fix this.

darksky
11-24-2007, 10:06 AM
Man, probably because Epic outsourced their IT! Outsourcing partners are inept at best in my experience.

nomadicus
11-24-2007, 10:35 AM
I am passionate about UT and technical excellence. I have walked into mult-imillion dollar fusterclucks before and turned them around. Politics are harder to solve then technical problems so at this point, I have a theory that it more of an internal non-technical problem then anything else.
Sad. The silence is still deafening.

AZ-{OVGY}
11-25-2007, 07:57 PM
I have got the same problem...and I am still waiting for the patch to fix this.

I'm using the beta patch at the minute and that hasnt fixed it, I wouldn't hold your breath.

ANick
11-25-2007, 08:08 PM
You can try to add to the target in properties of your UT3.exe shortcut on the end of the target string in the .exe that you boot the server or game from.

example looks like:




"C:\Program Files\Unreal Tournament 3\Binaries\UT3.exe" -multihome=xxx.xxx.xxx.xxx

sWs»Fish
11-26-2007, 04:55 AM
Try this

-multihome=xxx.xxx.xxx.xxx -port 7777

AZ-{OVGY}
11-26-2007, 05:40 AM
Try this

-multihome=xxx.xxx.xxx.xxx -port 7777

Allready tried that, doesn't work for me.

Dubious
11-26-2007, 09:32 AM
Download and install the patch, dont use the multihome switch. Details are in this thread: http://gearsforums.epicgames.com/showthread.php?t=587587

AZ-{OVGY}
11-26-2007, 10:02 AM
Download and install the patch, dont use the multihome switch. Details are in this thread: http://gearsforums.epicgames.com/showthread.php?t=587587

Allready tried that, doesn't work.

Dubious
11-26-2007, 10:15 AM
Allready tried that, doesn't work.
I don't want to say that you are doing something wrong, but if you and I have the exact same model router, both are running windows, both are using the same default server and patch configurations, and both are using the same batch file then it should work for you just as it does for me.

You must be doing something differently. Either you aren't allowing the service through the Windows firewall correctly or you arent forwarding the ports correctly or something similar. Well, either that or your ISP is blocking ports but I would find that impossible since all of the ports in question are considered random high ports (> 1024) and thus blocking these ports could cause problems for general internet services as well.

The only way that I can compare your config to my config is if you post screenshots of the port forwarding config on your router, your Windows firewall exceptions, and your exact commandline (minus passwords, of course).

UT3sysop
11-26-2007, 10:51 AM
I have had the same problem. I've given up trying to make it work. I keep reading these forums, but I don't see anything from Epic. Even their own stickies aren't being updated.

Sad. People like us form the technical core of the UT community yet the silence is deafening.

Agreed... until Epic can get their act together and the get the server up and running like it supposed to run with routers, mutators and all I have put my server on the back burner. I tired of being their beta tester and not getting paid for it. ;)

AZ-{OVGY}
11-26-2007, 11:06 AM
I don't want to say that you are doing something wrong, but if you and I have the exact same model router, both are running windows, both are using the same default server and patch configurations, and both are using the same batch file then it should work for you just as it does for me.

You must be doing something differently. Either you aren't allowing the service through the Windows firewall correctly or you arent forwarding the ports correctly or something similar. Well, either that or your ISP is blocking ports but I would find that impossible since all of the ports in question are considered random high ports (> 1024) and thus blocking these ports could cause problems for general internet services as well.

The only way that I can compare your config to my config is if you post screenshots of the port forwarding config on your router, your Windows firewall exceptions, and your exact commandline (minus passwords, of course).

My router is a DLink DI-524 in DMZ Mode for my internal IP (until I get it working like that), windows firewall disabled, kaspersky disabled. I even added my computer name and external ip in windows hosts file to see if that would do anything. Tried both the retail and dedicated server versions both with Beta patch 101 installed.

UT3.exe Server DM-Arsenal?MaxPlayers=10?MinNetPlayers=0?NumPublicCon nections=10?NumPrivateConnections=0?NumOpenPublicC onnections=10?NumOpenPrivateConnections=0?bShouldA dvertise=True?bIsLanMatch=False?bUsesStats=True?bA llowJoinInProgress=True?bAllowInvites=True?bUsesPr esence=True?bAllowJoinViaPresence=True?bUsesArbitr ation=False?bIsDedicated=True?bIsListPlay=False?Ow ningPlayerName=?PingInMs=0?AverageSkillRating=0.00 0000?GameMode=0?Difficulty=2?PureServer=1?LockedSe rver=0?Campaign=0?ForceRespawn=1?CustomMapName=DM-Arsenal?CustomGameMode=UTGame.UTDeathmatch?GoalSco re=30?TimeLimit=30?ServerDescription=0850000750000 32000085000084000051000032000068000077000032000083 00010100011400011800010100011400003200004500003200 01190001190001190000460001110001180001030001210000 99000108000097000110000046000099000111000109000?Nu mPlay=6?game=UTGame.UTDeathmatch?name=xxxxx?alias= xxxxx -log=DedicatedServer.log -Login=xxxxx -Password=xxxxx -port 3333 -unattended

I've tried all kinds of variations to this command including adding -multihome=xx.xx.xx.xx which resulted in a could not bind error, another thread suggested I give a dns name in router and then edit the registry to correspond to that, didn't work though. I even opened kaspersky whilst server was running to see what ports it was using,

13000 UDP
1325 UDP
3333 UDP
1326 TCP
1327 TCP
1328 UDP
6500 UDP

I have forwarded all these in router.

The one thing that puzzles me is when I start a ut2k4 server on the same machine and check in kaspersky, the ports it uses are all using local ip 0.0.0.0. However when I check the same with the ut3 server all ports are like this except 6500 UDP which is using my internal ip address as the local ip. Difference between the two is the ut2k4 server accepts clients the UT3 doesn't.

{hLk}Havok
11-26-2007, 01:47 PM
One of the three servers I am hosting is on a nat'd private network (public ip on hardware firewall wan port). I made some simple rules for forwarding the following ports

7776 8000 UDP
27500 27900 UDP
6500 6600 UDP
27000 27000 UDP
13000 13000 UDP

my command line on server (internal ip of 192.168.168.200)

D:\Unreal~1\Binaries\UT3.exe server WAR-Avalanche?MaxPlayers=16?MinNetPlayers=0?NumPublicC onnections=16?NumPrivateConnections=0?NumOpenPubli cConnections=16?NumOpenPrivateConnections=0?bShoul dAdvertise=True?bIsLanMatch=False?bUsesStats=True? bAllowJoinInProgress=True?bAllowInvites=True?bUses Presence=True?bAllowJoinViaPresence=True?bUsesArbi tration=False?bIsDedicated=True?bIsListPlay=False? OwningPlayerName=?PingInMs=0?AverageSkillRating=0. 000000?GameMode=2?Difficulty=2?PureServer=1?Locked Server=0?Campaign=0?ForceRespawn=0?CustomMapName=W AR-Avalanche?CustomGameMode=UTGameContent.UTOnslaught Game_Content?GoalScore=5?TimeLimit=30?ServerDescri ption=12300010400007600010700012500003200011400010 10000990001140001170001050001160001050001100001030 00044000032000119000119000119000046000104000108000 10700009900010800009700011000004600011000010100011 6000047000102000111000114000117000109000115000?Num Play=1?game=UTGameContent.UTOnslaughtGame_Content? name=hlk_3?alias=hlk_3?AdminPassword=myadminpwd -log=DedicatedServer.log -Login=mygamespyid -Password=mygamespypwd -nohomedir -unattended


I am using the beta patch on server and my client (seperate pc on that same pvt lan).

the particular server above is my warfare server
you can see it under warfare as {hLk}'s recruiting, www.hlkclan.net

what got it working for me was creating the gamespyid for the server from my ut3 retail full game. Once i created it there i simply used the new id/pwd on the server and went back to my old one on the client. I wasnt getting errors prior to this however server could not be seen. Ran a packet sniffer (wireshark) and captured the message from gamespy back to server saying uniqueid invalid. Once I created the gamespyid from within the ut3 client it was then viewable in the browser. hope this helps.

edited - noticed when i copied and pasted this forum inserted spaces where there shouldnt be in some parts of the command line so backspace em out if u need to use mine as a template.

Dubious
11-26-2007, 02:55 PM
My router is a DLink DI-524 in DMZ Mode for my internal IP (until I get it working like that), windows firewall disabled, kaspersky disabled. I even added my computer name and external ip in windows hosts file to see if that would do anything. Tried both the retail and dedicated server versions both with Beta patch 101 installed.
First off, my apologies - I must have had you confused with someone else when I stated that I had the exact same router as you. I do have a DLink though so Im sure its basically the same config. Second, I can tell that you are more knowledgeable than the average Joe who is trying to run a server. Which is both good and bad. Its good because you understand what things mean but bad because its evident that you are trying to do more than just the simple things. :)

If I were you and I were trying to get this working, I'd do it EXACTLY the same way as someone else who has the same setup. I wouldnt change the default port, I wouldnt put my server into a DMZ, and I wouldnt modify the commandline to include many different other settings. I wouldnt add entries to my host file, or registry entries.

I would uninstall my dedicated server and start over with a new copy. I would copy-n-paste the commandline exactly as it was provided to me (other than username/password) even if it meant that my server would be a VCTF server for a few min while I test it out. I would port-forward ONLY the ports listed. And I would get someone who already has the 101 patch installed to test by connecting only through the in-game browser, not using the 'open xxx.xxx.xxx.xxx' command in the console.

And if you PROMISE that you tried that procedure EXACTLY and THAT doesnt work .... then Im stumped.

But thats just me. The problem is that I perform network troubleshooting for a living so I'm a stickler about this kinda stuff.

On a side note, the ports that you see bound to ut3.exe other than 13000, 6500, and (in your case) 3333 are all dynamically-created each time you restart the server so they will always change. They were not needed to be forwarded to my private IP address in order to get my server working.

AZ-{OVGY}
11-26-2007, 04:03 PM
I have been trying to do more than the simple things because the simple things didn't work on a pc that I have used to run ut2004 servers for a while. The command line and ports are the final set that I used after building up from the basic of commands which didn't work. I ended up with the bulk of this command because I decided to host the server from in the game and use the log file from that to get a commandline as I was in the hope that if the game generated me one with the basic settings I require then it should work. The port is different because I did use 7777 to start with which didn't work and have been using different ones since to see if that had any affect. I am going to uninstall the game/server and start from scratch to see if I have any better luck although I am not very optimistic. I did create the gamespy id for it in the retail game. The entries in my hosts file and registry have since been removed as I was only testing them as a last resort. I have been trying to get a server going since the beta came out and have hosted many servers before with no where near as much trouble. I also have used some of the claimed working command lines that can be found in this forum and not one of them works, all of this is why I have come to the conclusion that this game clearly isn't capable of communicating properly with all routers, hence my router thread that you posted in. That was another last resort to see if I could gather any more useful info. But anyways like I said, I am going to start everything from scratch and will post back once I have done this. I may even create another game spy id to see if that works.

Dubious
11-26-2007, 04:15 PM
I'll keep my fingers crossed for you.

Haunting
11-26-2007, 06:24 PM
Man, probably because Epic outsourced their IT! Outsourcing partners are inept at best in my experience.

Just Look at their Job Openings!

AZ-{OVGY}
11-27-2007, 07:40 AM
DUBIOUS I have done what I said I would and guess what, still no luck. I am now 99% sure this is because UT3 even with the beta patch isn't fully capable of utilising all routers. I am also sure that it is because of port 6500 UDP which is reporting the local ip in kaspersky as my internal ip rather than 0.0.0.0 which pretty much every application I have installed that uses the internet uses. I also updated my router firmware to the latest release and didn't help. I decided to reset my router completely and start one of my ut2k4 servers, as you would expect it didn't work as the ports weren't forwarded so I made one change to the router which was to use DMZ (I wouldn't use DMZ usually, but for the purpose of testing this and proving my point I will). I never bothered forwarding the right ports as what I am trying to prove is that UT3 will not work even if I did. For those who don't allready know what DMZ is i'll tell you, DMZ basically tells the router to treat the computer as though it is on the other side of the router, all ports are open so portforwarding is not needed for this test I have performed (do not use DMZ permanently as it is a security risk but if you cannot get ut3 working it might be an idea to test with this to see if it makes a difference, if it does then you will know you have a port forward problem, if not then your in the same boat as me). Anyways like I said I enabled DMZ and guess what, the server worked, kaspersky showed that the ports used were reporting internal ip 0.0.0.0 which is what is needed for it to work. Then I reset router again and started the UT3 server, again as you would expect it didn't work because of the ports not being forwarded. As I did before I made one change to the router and that was the DMZ, guess what server still didn't work. Kaspersky showed that the ports used for the server were reporting local ip as 0.0.0.0 apart from 6500 UDP which was reporting my internal ip. I am very sure that if this port reported 0.0.0.0 then my setup would work. I am currently hoping that the full beta patch will fix this but for now I am sure that UT3 is incapable of working on my system. Also my command line is working too, I tried using the server without the router to test this and to test wether or not my ISP was blocking any ports as some have suggested, it worked fine.

(This test was performed with windows firewall disabled and kaspersky disabled, kaspersky was only use to check ports)

Dubious
11-27-2007, 07:52 AM
Sigh. Ok, thanks for the update, and good troubleshooting there.

{hLk}Havok
11-28-2007, 08:20 AM
AZ-{OVGY},
While not quite the same model I do have a Dlink DI-624 (I think i read somewhere u were using a DI-524) in my office, so I will test with that and try to run a server behind it. Although if it works, being a diff model not sure what it proves, but what the hell, ill give it a go anyway!

AZ-{OVGY}
11-28-2007, 08:52 AM
Couldn't login to game spy profile this morning, neither my profile nor the server. It allowed me about 10 mins l8er. When I started server after this I got all kinds of new things in it. Devonline was one of them which included things like login ticket, player status.I never had these before, I couldn't see the server in browser so I just connected to ip, and it worked. Since the map changed it keeps saying DevOnline: Failed to register server with error 0x00000005 (No challenge value was received from the master server.)
DevOnline: Treating server as private (invite, follow only). Not sure if it worked because there were changes happening with master server but for me to be able to connect just once without making a change to my setup makes me feel that maybe something is actually being done about this.