Port forwarding

From ZDoom Wiki
Jump to navigation Jump to search

Port Forwarding allows a user to host a multiplayer internet game from behind a NAT Router. To understand Port Forwarding, you must first understand a little about how NAT Routers work. The following is a brief and oversimplified description:
A NAT Router only allows information in from IPs to which you have already sent information (i.e. the data is "solicited").

For example, when you connect to zdoom.org, your browser sends information to zdoom.org and zdoom.org sends you the webpage (zdoom.org). Because you sent something to zdoom.org first, your router will allow traffic (the webpage) back from zdoom.org.

However, when you host a multiplayer game, you haven't sent any information to your friends yet, so your router does not know to allow them in. The result is a ZDoom game that never starts--this is a bummer.

The solution (or, at least, a solution): Port Forwarding
By default, ZDoom uses UDP port 5029 for multiplayer games (this can be changed using the -port command--see Command line parameters for more info).

In order to host, you must forward this port through your router. This is a six-step process:

1) Navigate to your router's configuration IP and enter the password. Often, this address is but it depends on your manufacturer. Check out PortForward.com or ask Google for your specific model.

2) Find your private IP address. This is something like or One way to find it is to consult the LAN table of your router, often located on the "administration" tab. You'll see your machine name followed by your private IP address. You can also find this information by accessing your network connection (in control panel, or in the taskbar) and then viewing the support tab.

3) Locate the tab which allows you to forward ports and forward UDP port 5029 to your private IP address. "Applications and Gaming" is a good place to look, if you can't find a more obvious "Forwarding" tab. Also note that some routers forward ports by range; in this case, simply forward from 5029 to 5029.

4) Enable the port forwarding and save your changes.

5) Play ZDoom!

6) When you're done playing, turn off the forwarding and (again) save changes to your router. This is very important for security reasons: leaving ports open is not recommended for extended periods of time when it can be easily avoided.

I've forwarded my port, but my friends still can't connect!

If you've forwarded your port correctly and you still can't connect, there are a number of things to check:
1) Is everyone's firewall allowing ZDoom to send information to the internet?

2) Is the host's firewall allowing ZDoom to accept connections from the internet (server privileges)?

3) Is everyone joining the right IP address? To join a ZDoom game, you must connect to the public IP address of the host--i.e. the address of their router (not the same one as in step 2 above!). If you are the host, you can find out your public IP address here,here,or here. Give this to your friends.

If you still can't connect, check your internet connection. Temporary outages do occur from time to time, so make sure you can access webpages and other web services.

Port forwarding is too hard and/or too time consuming

There are several alternatives to Port Forwarding; however, most of them involve additional software.
One alternative is to use a VPN client such as Hamachi to act as a LAN network across the internet. Hamachi is a VPN client that allows you to connect with others across the internet as if they were on your same LAN. Futhermore, Hamachi creates mediated peer to peer connections, so you and your friends are able to connect directly without forwarding any ports. Not only is this more convenient, it acts as another layer of security as well. Hamachi also helps in many situations where ISPs do strange things that block or degrade ZDoom's multiplayer experience.

Tips for connecting via Hamachi: The host shouldn't have to change anything. The clients, however, will have to replace the Hamachi IP address with the Public IP they were using before. For example: -join

I'm still having trouble!

If you're still having trouble, come on over to the Networking forum and ask for help. In most cases, you'll receive a reply within 5 hours and sometimes in as few as 5 minutes.