How to set up manual port forwarding?
In most cases DC++ should be able to automatically detect the appropriate
connection method for the user, however, there can still be cases when there are no
ways to map the port automatically so a manual configuration required to achieve
active mode. This FAQ gives detailed information how to set up port forwarding
manually in case of the
automatic connectivity setup fails or you have gateway devices without
automatic port mapping support.
This FAQ assumes that
- You're familiar with DC++ connectivity concepts
- You already tried the automatic ways of port mapping
without success (or you are certain that you don't have supporting devices in your network)
- You have basic understanding of computer networking
- You have proper access to the configuration layout of your gateway (router) device
For DC++ to work properly in active mode, it requires access on
TCP and UDP listening ports, as well as outgoing access
on all ports for both TCP and UDP. If you are in a private network behind a NAT device the incoming information
to the listening ports should be forwarded to the proper computer.
For an in-depth, but still easy to understand explanation of port forwarding, read
What is Port Forwarding?
The following steps describe the configuration of port forwarding in general as the exact configuration method
and layout varies in the different type of gateway devices.
- First you need to set up the router to forward the connections to
the computer with DC++. This is could be called Port mapping, port
redirecting, port forwarding or something like that in your router configuration.
Find out how to do this with your router / NAT
in the user manual came with your device.
- You need to forward three ports: 2 ports for transfers and encrypted transfers (both use TCP protocol) and
one port for searches what uses the UDP protocol. You can use the same port number for transfers and searches,
but you need a different one for the encrypted transfers. Of course you can choose different port numbers
for each as well. So select two or three numbers between 1024 - 65535, they should mostly all be free.
Make sure you select the correct protocol types (TCP, UDP or Both) for each port number when you cerate the
port forwarding rules in the gateway's config interface.
- The IP that you are forwarding to should be the internal IP address of your computer running DC++.
It usually begins with "192.168",
"172.16." or "10.x.". To see your internal IP address go to the command prompt and type:
ipconfig (Start Menu -> Run
-> cmd /k ipconfig)
- When you have mapped the port(s) on the router, open up DC++ and
go to Manual configuration settings.
Select Active mode (I have no router / I have configured my router). In the port fields, enter the port
number(s) that you forwarded on the router.
- In the External / WAN IP field, you need to enter the external IP address of your router.
Your external IP can be checked on
DSLReport's
IP page or at WhatIsMyIP.com.
- Active mode should now be working. For checking or troubleshooting if you have properly
forwarded the port(s) to DC++, use www.canyouseeme.org. Make sure DC++ is open. Then, in the site, enter the port you're forwarded and click Check. If everything has been properly set up, the site should say Success. If you get an error message in red, then you need to double-check the port forwarding on the router, DC++ settings and possibly your built-in or 3rd party software firewall settings.
TIP:Before you fill out the required settings it may worth to check if DC++ is able to automatically detect
some of the required parameters. To do this, go to the Connectivity pane in the Settings, enable
automatic connectivity detection, click 'Detect Now' and when the detection is finished click 'Edit detected settings'.
Depending on the results this way you may speed up setting up manual port forwarding if DC++ is able to detect any subset of
the required settings.
Troubleshooting
If you have problems finding the correct port forwarding settings in your gateway setup you may get detailed help, how-to guide and screen shots for various router models at www.portforward.com. There is a huge list of models there, click on your model name,
then select DC++ from the list of applications. An interactive guide will appear to help you how
to access your router's configuration page and how to set up port forwarding for DC++.
You can find some more how-to's for popular router models at the DSLReport FAQ page as well.
If active mode is working for a while, but the next time when you use DC++, you only get Connection Timeouts or no
results when searching, your IP (either external or internal) is likely to have changed. Of course you can update your IP settings manually each time they changed, but there are better solutions to avoid constant IP address updates:
-
If you find the external IP is constantly changing, you can sign up to a free dynamic DNS service
such as No-IP or FreeDNS
and put your dynamic DNS address into the External / WAN IP field in DC++ Connection Settings. Each DDNS provider has a downloadable IP updater software what updates the dynamic name service with your latest IP. Make sure you download, configure and run this program while using DC++. Many router models have DDNS client software included for specific DDNS provider(s) so it worth a check in your router configurations before choosing a provider. After you setup the built-in DDNS client you won't need to run any IP updater software, your router will automatically take care of updating your DNS name.
- If you find that your internal IP changes when you restart your computer then your operating system is obtaining an IP address from your router at boot using DHCP protocol. If you want your computer to always have the same internal IP address you must setup Static DHCP in your router configuration. Static DHCP is a useful feature which makes your router always assign the same IP address to a specific computer on your network. You will have to find MAC address of your network card to set up Static DHCP.
Another option to ensure you'll always have the same internal IP address is to set up static IP address for your computer. Here's a FAQ how to do this for different versions of Windows.
Besides normal file transfers DC++ is capable of secure (SSL encrypted) way of receiving and transmitting files on ADC hubs. If you're able to download in NMDC hubs but not in ADC ones then most probably you have a problem with the secure transfer port. You should check if the secure transfer port is forwarded correctly to be able to download from ADC users who have secure transfers enabled.