The Ur-Quan Masters network configuring tutorial

This instruction was created by Gekko, one of our most active NetMelee players.


Short answer to all problems in Windows

Firewalls need uqm.exe and possibly uqm-balance.exe in their exception list. The router port is 21837 by default and uses TCP.


Long answer

I'm not a network technician nor do I understand most of the stuff that is happening in networks, but someone needs to write this tutorial. I also don't have a clue regarding linux, but I expect linux users to know these things already.

I take no responsibility if this tutorial makes you mess the router settings, or somehow makes you end up in trouble due to tampering with stuff which you aren't allowed to tamper with. If you don't own the devices or the computers make sure that you are permitted to configure the stuff below.

Sometimes UQM net melee players are unable to connect to each other. This is usually caused by either

1. Firewall
2. Router


Firewall

If the cause is your firewall (such as Kerio Personal Firewall or ZoneAlarm) all you have to do is open your firewall configuration and add an exception to the settings. I'll be showing how to do it with Kerio:

Double click on the Kerio icon at your task bar to open up the configuration.



Switch to the 'Network Security' tab.



There locate your UQM exe. Click on the icons so that they are all green. If you want to play the balance mod, then check the icons for that file as well. If the files are not visible, start your game and tell someone to connect to you. Kerio should show a pop up window where you can select if you want to give access for the file. After this the file should be visible in your application list.



That's all you need to do in Kerio. If you experience problems with connections and the router is also configured, try shutting down your firewall.

If you are using Linux and have a Firestarter tool installed (for Ubuntu, it may be done via a terminal command "sudo apt-get install firestarter" without quotes), you can enable the port usage through this utility. The screenshot describes how it could be done. While setting it up, you must remember that your outbound traffic policy must allow all the traffic that comes through that port as well: in most cases, you won't have any problems with this since all the outgoing traffic is allowed by default.



Router

Now the more challenging part. If you don't know what a router is, then lift your arse from your chair, find the network cable which is plugged in to your computer and start following it. If you find the other end of the cable, then you are most likely looking at your router.

The main cause of most of the problems related to UQM net play is a feature called NAT (Network address translation). Generally NAT means that the router uses one IP address and shares it to multiple machines. As there are 6 billion people currently living on the Earth and we only have a limited amount of IP addresses (4 294 967 296 to be precise, 2^32), we are facing a problem. This issue was addressed partiarly in the early 90s by implementing a feature to routers that makes it possible to have many machines inside one local network that use one public IP address. Think of this as the post number of your city, and the city containing additional numbers for all the homes inside it.

Even though this seems like a good solution, there are some major flaws. The example in wikipedia is quite clear:

My computer uses FTP in order to contact a server. I then decide to download a file from that server using the very same FTP connection. there are multiple computers inside my network and my router uses NAT. I navigate in the server happily without any worries (actually I don't think I'd get this far with NAT), opening folders and checking what to download. My computer is sending data to the router which then sends the data to the server. However, once I decide to download a file the router requires a connection to my computer. All that has happened so far is me sending data to server. Now what happens is that the server sends the data to the router, but due to NAT the data doesn't know to which computer it is heading.

I need to fix this. I go to my router configuration and select the port that the FTP uses, then tell the router that all the data arriving to that port must be FORWARDED to my computer. This is the idea of port forwarding.

Let's forward the ports for Ur-Quan Masters.

Below you can see the router I use. It's made by Telewell and the model is TW-EA501. Most good routers have a very easy software which allows the user to configure some settings inside the router. The first step is to figure out what sort of router you have and find the manual you got with the router. If you can't find your manual, then google for technical details.



The easiest way for configuration is using your web browser. In my case I open my Opera, go to the address bar and type:

http://192.168.0.254



This address depends on your router. Some of the possible, common addresses are:

192.168.0.1
192.168.0.100
192.168.1.1
192.168.1.100
192.168.0.254
192.168.1.254

You can find this from two places: Your router manual, and your network settings. The address stands for "default gateway", or the address to which packets leaving from your computer are transmitted by default if no other rules are specified. If you can't find your manual or don't know your router model, open your command promt on Windows (Windows key + R, type cmd, hit enter) or terminal on Linux, type ipconfig (ifconfig on Linux) and find the default gateway for your Ethernet connection. That is the address to which the packets leave, and thus must be the address of your router.

Here's how the output should look like, with default gateway written in bold text.

Ethernet adapter Local Area Connection:

Connection-specific DNS Suffix . : home.gateway
Link-local IPv6 Address . . . . . : fe80::39eb:4a20:36e4:896e%11
IPv4 Address. . . . . . . . . . . : 192.168.0.101
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 192.168.0.254

In order to find yours open that router manual, and find something such as 'Router's administration tool' or 'Configuring'. Once you have inputted the address, hit enter.

Most routers require a password. You can find the default passwords in the manual, though most likely they are:

login: admin
password: admin

You should see some sort of web based configuration utility.



This is where the routers are very different. Some routers don't have much configuration options while some let you manage almost everything inside the router. I bought the TW-EA501 due to it's configuration utility. There is a really good web page made solely for helping people in port forwarding at http://portforward.com/. Their "ultimate goal is to have a write up for every hardware router and firewall available and instructions for every application that Internet users have difficulty getting to work through their router or firewall so that you can do simple port forwarding."

In TW-EA501 I open the 'Configuration' tab. There I go to 'Virtual server', and from there to 'Port Mapping'.



I'm faced with my port forwarding table.



I have already forwarded the port(s) which UQM needs, but let's do it again. In the 'Parameters' box, type in the following settings:

Application: ur-quan masters (this is only a name which will be shown in the forwarding table)
Protocol: TCP
External Port: 21837 (If there are two boxes (From, to) you can type 21837 to both)
Internal IP Address: The address of your computer in the local network, as in "where your computer is behind the router". Find this from ipconfig, the IPv4 address for the Ethernet adapter. Usually this is one of the first addresses in the network, such as 192.168.0.101, 192.168.1.101 or 192.168.1.102
Internal port: You can usually leave this blank. If you need to put something to this, put the same port as to external: 21837

Click 'Add'.



All done. If it doesn't work, ask for help. Some of this is different if you are using a wireless network, and most likely it will involve slamming your router to the wall. Remember that if you are connecting to multiple routers or through switches, then there might issues. I will help with this stuff if you come to #uqm-arena on Freenode and I have the time. So far most people have managed to forward the ports with my help.


If you messed up:

In case you did something wrong and your internet is horribly dead, there is one simple way to reverse the problem. Find your router, press the the RESET button for 1 minute, and wham, it's memory is restored to the factory settings.


Further reading:

Wikipedia: Port forwarding
Wikipedia: NAT

Star Control I

Star Control II

Star Control 3

StarCon (SC 4)

Next Star Control (SC5?)