aMule uses three ports to transfer data with other clients and servers:
- the standard client TCP port;
- the extended client UDP port; and
- the extended server requests UDP port.
Ideally, all three ports should be accessible for both ED2K and Kademlia networks; the minimum requirements differ for each network as follows.
You can still connect to this network even if none of these ports is accessible. For ED2K connection, if the standard client TCP port (No. 1) is not accessible, you will receive a Low ID and experience significantly lower transfer speeds. However, access to this port (No. 1) is all you need to attain High ID status; this will provide the highest transfer speeds possible on the ED2K network. Making the extended server requests UDP port (No. 3) accessible too is highly recommended, because this will provide you with valuable statistics and information about files on the ED2k network.
For this network, both standard client TCP and extended client UDP ports (Numbers 1 and 2) must be accessible. If they are not, you won't be able to connect to Kademlia at all. Accessing the extended client UDP port (No. 2) on the ED2K network is highly recommended, because this will provide you with valuable statistics and information about other clients and files.
How to do it
Identify which ports to forward
Making all three ports accessible is highly desirable, even if not all are, strictly speaking, required. Start aMule and open the Preferences --> Connection window. See the Standard client TCP Port box, the Extended client UDP Port box and the predetermined number for the UDP port for extended server requests (TCP+3). These three are the ports aMule uses. Ensure that "disable" is not ticked.
You can test whether a port is "accessible" (also known as "open") at aMule's Test Port page. A "not accessible" result means one of the following two scenarios:
- You're behind a router that is blocking incoming connections to one or more of the relevant ports.
- You're behind a firewall that is blocking one or more of the relevant ports (actually, when a router blocks ports, it's acting as a firewall). This firewall could be on your computer—for example, the iptables daemon—or it could be somewhere outside your computer, probably a gateway through which you connect to the internet.
Opening the ports
- Firewall issue: If you have a firewall, ask your administrator to open the ports, or read the manual to see whether you can access the firewall's configuration. (If you access aMule from home, you have no administrator, of course, and will need to do this yourself.) There are too many firewalls to describe here, so check the Firewall article.
- Router issue: If you're behind a router, ask your administrator to forward the ports to your computer (see above to know which ports to forward). If you have access to your router's configuration, you can do this yourself as follows:
- Disable DHCP in your computer (not in the router!) to get a static IP address in the LAN; this is done through the /etc/interfaces configuration file (see man interfaces)
- In the router's configuration, forward the ports aMule should use to your IP (using "static IP" in the LAN, as described above) and apply the changes in the router; you might have to restart the router.
Your ISP's help-desk should be able to advise you of the address of your router, which you can "speak to" via a browser such as Internet Explorer, Firefox or Safari. First see if http://192.168.1.1. works. The exact place where ports can be forwarded in your router's configuration system varies greatly from one router to another, and there are hundreds of different router models, so this can't be explained here. However, as a general rule, you should search for some section called "LAN configuration", "NAT configuration", "Firewall", "Ports" or "Security", but your router could be very different! See the Routers article to see how different routers are set up; maybe you'll be lucky and find your router listed there.
Also, if you think the router is what is blocking the ports, you may wish to consult http://portforward.com/, a site that offers a walkthrough guide for a lot of routers, and often allows you to succeed. Some router settings also are mentioned in Diesel´s router-database (rem.: german).
No, there's no easier way. That's how port forwarding goes :) Same for eMule, Shareaza, lphant, Napster, Morpheus, Kazaa, Apache, FTP Server, ...