- Home /
Issues with NAT facilitator
Okay :) So I have a windows server 2008 dedicated server. I have VisualCPP installed, so that I can compile from the server.
I compiled my master Server from my computer. I compiled my facilitator from my server, because that was easiest.
I have my master server port set to 23466, and my NAT facilitator port set to 23467. I am using the default unity networking examples, and I have the game name set to "test" (What used to be set to "YOU MUST CHANGE THIS") and I have the "port" set to 23467 as well.
When testing...
My tester starts the game up. In the server, the master server reports that it is sending data! My tester then starts a server on the game. The NAT facilitator reports that it is sending data to the user as well! I start the game. The master server begins sending data to me. I am able to see the server that my tester started. I try to join his server. And of course I get an error! Here is my console log:
We are connected :D //This is my own code, which sets the facilitator and master server ports and ips.
Connecting to connection tester at 67.225.180.24:10737
This machine has a private IP address
Starting NAT connection test
Connected to master server at 173.203.66.79:23466
//at this point I attempt to join the server started by my tester
Incoming host list query response from master server.
Sent connect request to facilitator at 173.203.66.79:23467
Connected to facilitator at 173.203.66.79:23467
Doing NAT punch through to 18446744073348514253 using 173.203.66.79:23467
LimitedNATPunchthroughSymmetric
ERROR: Receiving NAT punchthrough attempt from target 18446744073348514253 failed
After this error occurs, I can see my NAT facilitator IS sending data to the two of us.
So I am dumbfoudned at what is going wrong. Clearly my server's ports are not blocked... Clearly we are both able to connect to BOTH the NAT facilitator AND the master server. And yet! For whatever reason, we are unable to join eachother's servers, and I am completely confused as to what to do. The code for the project is completely unmodified. I added an extra scene, and put my code in it. My code does the following:
Network.natFacilitatorIP = MasterServer.ipAddress = "173.203.66.79";
MasterServer.port = 23466;
Network.natFacilitatorPort = 23467;
Application.LoadLevel(1);
(LoadLevel(1) taking it to the "assets/loader.unity" scene)
What in the name of god is going wrong? And how might I go about fixing it?
Answer by Blessedone · Jul 15, 2012 at 01:37 PM
if you havent you will need to open the port the game is running on if you dont share your ip with any other computers you are good to go ... but more than likely you are behind a router so you will need to add a port forwarding rule that forwards the port your game is on to your local ip with that same port (eg 192.168.1.10)
so if my game runs on port 25002 and my comps local ip is 192.168.1.10
i would forward incoming connections on port 25002 to 192.168.1.10:25002
to be clear not the port for the master server not the port for the facilitator the port that your game itself listens on