How to host races in VSK4
If you are able to sail in other people's races in VSK, but
nobody joins your races, or your friends tell you that they get a
"Cannot connect" error message, then you have a port
forwarding problem. Something on your network is either
blocking the port used by VSK, or something is not forwarding the
traffic on that port to the computer running VSK. The usual
culprits are software firewalls (ZoneAlarm, BlackIce, Windows
Firewall, etc.) or hardware firewalls (a router), or less
frequently, by your ISP.
The precise procedure for allowing you to host races in VSK will
vary depending on your particular setup. However the general steps
are the same for everyone:
- 1. Assign a static IP address to the computer you will be
playing VSK on.
- 2. Poke a hole in your firewall(s) to forward UDP and TCP
traffic on port 2350 to the machine running VSK.
The process below is for hosting VSK from behind a Linksys router
and a ZoneAlarm firewall. You may need to look around in your
hardware/software for equivalent settings. If your
hardware/software does not have equivalent settings then you
should consider getting better hardware/software... If you do not know how to configure your router www.portforward.com has an extensive list of guides.
I've also added sections for configuring the Windows Firewall and Windows Internet Connection Sharing. Since I don't actually
use either program these instructions should be considered
experimental. It is also assumed that you have Service Pack 2
installed. I don't know if all of these features are available in
earlier versions of ICS or the Windows Firewall.
1. Collect some information
Before we start you will need to go to the router's status page
and collect some information that we will need. For the purposes
of this document we will assume you are using the subnet
192.168.1.* and the router's local IP address is 192.168.1.1.
(Click on the image to see it full scale.)
- 1. This is the status page for the router. Depending on the
model of your Linksys router this information may be on a
different tab.
- 2. This is your router's LAN (local) IP address.
- 3. This is your router's WAN (Wide Area Network) address
assigned by your ISP. Make a note of this address.
- 4. These are the DNS servers provided by your ISP. Make a note
of these addresses. You will only need the first two
addresses.
2. Configure DHCP
If you are using DHCP on your network, that is, the router
automatically assigns IP addresses, you will need to configure it
so we can assign a static IP address to the computer(s) you will
be using to play VSK. It is a Bad Thing if the DHCP server assigns
the IP address we want to another computer.
(Click on the image to see it full scale.)
- 1. This is the router's DHCP configuration page. If you do not
have DHCP enabled you can skip this step.
- 2. This is the starting address the DHCP server will use. The
value you enter here isn't that important. Just make sure that
you leave some "room" for the static IP address you will assign
to your computer. We have several computers in our home with
static IP addresses and some that use DHCP, so a value of 100
here gives us lots of local addresses to use without having to
worry that the DHCP server will try to use the same ones.
- 3. This is the number maximum number of clients the DHCP
server will assign addresses to. Again, the value you use here
isn't that important, just make sure the number is larger than
the number of computers that you want the DHCP server to assign
address to. It's also likely a good idea if the sum of starting
address plus the maximum number clients is less than 255.
3. Assign a static IP address
Next you will need to assign a static IP address to your
computer. This is important, even if you only have a single
computer on your network, as it will prevent mysterious failures
in the future There is nothing in DHCP that guarantees that a
particular computer is going to get the same address, even if it
is the only computer on the network, or that the IP addresses will
be assigned in a particular order. Using a dynamic IP address may
work for now, but I can guarantee that at some point in the future
you'll be scratching your head wondering why you can't host races
anymore.
The first step is to open the Local Area Connection properties
dialog box. There are at least two ways to get to this dialog.
- 1. Right click on the "My Network Places" icon on your desktop
("My Network Neighborhood" for pre-XP versions of Windows).
- 2. Select properties.
- 3. Right click on the "Local Area Connection" icon. This might
also be named something like "Local Area Connection 2", "Local
Area Connection 3" etc.
- 4. Select Properties.
You can also get to the dialog via the Control Panel
- 1. Open the control panel
- 2. Double click the "Network Connections" icon.
- 3. Right click on the Local Area Connection and select
properties.
(Click on the image to see if full scale.)
- 1. Once you've found the dialog select "Internet Protocol
(TCP/IP)".
- 2. And click the properties button.
(Click on the image to see if full scale.)
- 1. Assign a static IP address to the computer. Here I've used
192.168.1.20 as the static IP address. It doesn't really matter
what address you use just don't use an address assigned to
another computer or device on your network. Also make sure
you assign a static IP address outside the range of addresses
used by your DHCP server.
- 2. Add the local IP address of your router as your computer's
default gateway.
- 3. Select "Use the following DNS servers" and enter the DNS
servers you recorded from your router's status page.
It's likely a good idea to reboot your computer at this point. If
your IP address has changed the router and other computers on the
network may be a little confused at this point.
4. Open Some Ports
Now we have to head back to the router to open the ports for VSK
to use.
(Click on the image to see if full scale.)
- 1. The is the port forwarding page on the router. On my router
I have to click the orange "Advanced" tab in the upper right
corner (which changes to Setup as shown in this screen shot).
- 2. The name under "Customized Applications" is ignored by the
router. It is just a label so you can remember what application
you opened the port for.
- 3. Enter the range of ports that you want to open. Since VSK
only used one port the from and to values are the
same. By default this is port 2350, but it can be changed in
VSK.
- 4. Enable both TCP and UDP traffic on that port.
- 5. Enter the static IP address you assigned to your
computer.
You should now be able to host races in VSK!
6. ZoneAlarm Pro
You should be able to host races, but if you are running later
versions of ZoneAlarm Pro you may have people telling you that
they're getting a warning message that VSK could not make a UDP
connection and is falling back to TCP. While the game will still
work, and you'll still be able to host, TCP is a bit laggier than
UDP, so you'll want to fix this. If you're not using ZAP but
people are still telling you about the UDP/TCP warning message the
problem is similar. You just need to figure out where in the
firewall you need to go to enable UDP ports.
Double click the ZoneAlarm icon in the task bar to open the
ZoneAlarm Pro window.
(Click on the image to see if full scale.)
- 1. Select "Firewall" from the menu on the left.
- 2. Click the "Customize" button.
(Click on the image to see if full scale.)
- 1. Scroll down to you see the option "Allow incoming UDP
ports".
- 2. For ports add 2350 (or whatever value you set in VSK
above).
Now you should really be ready to host races in VSK3.
Windows Firewall and ICS
The Windows Firewall
I do not use the Windows Firewall and haven't had a chance to
test these settings. However, this is what I suggest. If you are
also using ICS I suggest you read that section before performing
these steps as you will use different port numbers if you have
more than one computer.
- 1. Open the Control Panel and double click on the Windows
Firewall icon.
- 2. Go to the Exceptions Tab.
- 3. Click the Add Program... button and then the Browse button.
Locate the VSK3.exe file, select it, and click ok. Note:
you can't select VSK3 from the list of programs because that
gives VSK3Launcher.exe access to the internet, while it is
VSK3.exe that actually requires access.
- 4. Click the Add Port button, enter "VSK TCP" as the name,
2350 as the port number, (leave the TCP button selected) and
click OK.
- 5. Click the Add Port button, enter "VSK UDP" as the name,
2350 as the port number, select the UDP button, and click OK.
- 6. Go to the Advanced Tab and click the ICMP Settings button.
- 7. Add a checkmark to "Allow incoming echo requests" and click
ok.
- 8. Click Ok to close the Windows Firewall dialog.
You should be able to play VSK4 and host races.
Internet Connection Sharing
I do not use ICS and haven't had a chance to test these settings
(in fact I can't since I've only got one NIC in this computer...).
However, this is what I would do...
Each computer that you want to host races on will also need to
have a static IP address assigned to it.
The computer running ICS will have two network cards, only assign
a static IP address to the network card that is connected to the
other computers (the local card). The network card that is
connected to the internet should have an IP address assigned by
your ISP. The local card on computer running ICS should use your
ISP's address as the default gateway, and the other computers
should use the static IP address of the ICS computer as their
default gateway.
Once you have the IP addresses assigned try the following:
- 1. Open the Control Panel and click on the Windows Firewall
icon.
- 2. Go to the Advanced tab.
- 3. Select your Local Area Connection and click the Settings
button.
- 4. Click the Add button and enter the following information:
- Description of Service: VSK (computer name) TCP. For
example "VSK Kirk TCP" (Kirk is the name of my desktop
computer).
- Name or IP address: the static IP address of the machine
hosting races.
- External Port: 2350
- Internal Port : 2350
- Leave the TCP button selected
- Click Ok
- 5. Repeat step 4 with the description "VSK (computer name)
UDP" and check the UDP button. Use the same IP address and port
number as in step 4.
It is likely a good idea to start with the machine that is
running ICS and get it working first. Then add one machine at a
time. If you do get it working let me know so I can update this
section.