External Connections

From AMule Project FAQ
Revision as of 01:37, 1 March 2005 by GonoszTopi (Talk | contribs)

Jump to: navigation, search

External Connections is the bi-directional way aMule has to communicate with external utilities, like the aMuleWeb and aMuleCMD. So, when a user is controlling aMule remotely, it is sending the commands through the External Connections port and aMule is reading them there (when controlling through a web browser, what is really happening is that aMuleWeb is getting the actions, interpreting them and sending the commands to the External Connection ports).

If both aMule and their utilities run on the same machine, there's no need to redirect the External Connections port in a Firewalled environment (NAT network with a router, etc...). If you had to connect to the External Connections port from somewhere out of the network, it would be necessary to configure the router/Firewall/etc properly to accept connections through the External Connection port (this would happen, for example, connecting through aMuleCMD from somewhere outside the network).

As of aMule 2.0.0-rc8, External Connections reached version 2.0 (*cough*). This version is a complete rewrite of the protocol and is NOT backwards compatible, so it is heavily suggested to upgrade to both a server (that is, aMule) and client supporting it. Information about External Connections v2 can be reached here.

NOTE: There are alternate ways of communicating with aMule although External Connections is the only bi-directional way. Other ways of communication with aMule would be the Online Signature (outgoing direction) and ED2KLinks file (ingoing direction).

NOTE for CVS users: It is very important to use a server (i.e. aMule or aMuled) and a client (amuleweb, amulecmd) from the same CVS tarball. As development goes on, there are binary incompatibilities between versions, and - in the case of CVS versions - they might cause crashes, burn your house, feed your dog, donate to us all your hardware, etc. Before you'd despair, dear reader, I tell you that we take extreme care that this cannot happen between releases! If you're using a server and a client from different releases (not CVS tarballs, relases!), most likely you will only get a message "Invalid protocol version." And that's all.