aMule is a free peer-to-peer file sharing utility that works with the eDonkey network and the Kad network, offering similar features to eMule and adding others such as GeoIP (country flags). On August 18, 2003 it was forked from the xMule source code, which itself is a fork of the lMule project, which was the first attempt to bring the eMule client to Linux. These projects were discontinued and aMule is the resulting project, though aMule has less and less[clarification needed] resemblance to the client that sired it.

aMule
Developer(s)aMule Team
Initial releaseSeptember 2003 (2003-09)
Stable release
2.3.3[1] Edit this on Wikidata / 7 February 2021
Repository
Written inC++[2]
Operating systemWindows, MacOS X, Linux, Solaris, *BSD[3]
TypePeer-to-peer file sharing
LicenseGNU General Public License
Websiteamule.org

aMule shares code with the eMule project. The credit and partials downloads of eMule can be used by aMule and vice versa, making program substitution simple.

aMule aims to be portable over multiple platforms and is doing this with the help of the wxWidgets library. Currently supported systems include Linux, macOS, various BSD-derived systems, Windows, Irix and Solaris. Beside the stable releases the project also offers SVN versions as an unstable release.

TCP and UDP ports

edit

According to the aMule official FAQ, these are the default ports. Server ports 4661 TCP and 4665 UDP are only used by the EDonkey network. Therefore, the Kad Network will only use 4662 TCP and 4672 UDP. The traffic direction is from client perspective:

  • 4661 TCP (outgoing): Port on which an eDonkey server listens for connection (port number may vary depending on eDonkey server used).
  • 4662 TCP (outgoing and incoming): Client to client transfers.
  • 4665 UDP (outgoing and incoming): Used for global eDonkey server searches and global source queries. This is always Client TCP port + 3.
  • 4672 UDP (outgoing and incoming): Extended aMule protocol, Queue Rating, File Reask Ping
  • 4711 TCP: WebServer listening port. Used if aMule is accessed through the web.
  • 4712 TCP: internal Connection port. Used to communicate aMule with other applications such as aMule WebServer or aMuleCMD.

Most of these ports are customizable.

Monolithic and modular build

edit

aMule can be compiled using -disable-monolithic parameter: this allows aMule to be run in a modular way. This means that the core functionalities of the program can be started using amuled, the aMule daemon while the software behavior can be controlled through three different interfaces:

aMuleCMD
The command-line aMule client.
aMuleGUI
The regular GUI of the software. Experimental, a lot of features missing in comparison with the monolithic version and is unstable. There are Linux and Windows version for this tool: users can connect an aMule instance running on Linux from a workstation running Windows and the Win32 version of aMuleGUI.
aMuleWEB
The web interface provided by the aMule core built-in Webserver. It can be retrieved via the LAN or from the Internet, provided any Internet router is properly configured using port forwarding.

See also

edit

References

edit
  1. ^ "Release 2.3.3". February 7, 2021. Retrieved March 9, 2021.
  2. ^ "aMule", Open Hub, retrieved May 2, 2010
  3. ^ "Compatible operating system". the Wiki of the aMule Project. Retrieved October 4, 2018.
edit