IMule

From I2P Wiki
Jump to navigation Jump to search

I. Introduction to iMule

iMule is a I2P aware version of aMule, a program for filesharing : to exchange files between other iMule clients. The list of available files as well as the nodes are distributed in a DHT tree[1], which is, like the files themselves, distributed via the I2P network. This allows the transfer and the users to remain anonymous and secure simultaneously. It is not possible to know who shares which file and who fetches which file.

Please run the latest version of iMule because, like other P2P software, it is very important to maintain compatibility with the other peers. Running a old version (ie: a release from years ago) harms the P2P network, and may cause connection problems with others peers. Read the section "Upgrading iMule to a new version".

Initial release: 2007 ?. This page may interest you too: IMule changelog.

II. Where to get iMule

Automatically (Linux)

If you can not find manually a compatible package for your GNU/Linux distribution, you may download it automatically from this repository (this will download it from the clearnet, this is not good for your privacy) :

sudo apt-add-repository ppa:i2p.packages/i2p
sudo apt-get update
sudo apt-get install imule

There is no iMule package for xenial 64bit (01/03/2017)

Manually (Linux, Windows)

Sources

Inside of I2P :

Compatibility table

OS OS version Minimum iMule version Maximum iMule version
Debian 7 "Wheezy" ? v2.3.3.0 ?
Debian 8 "Jessie" v2.3.2.4 ? (to check). v2.3.3.0+ is OK
Fedora 24 ? v2.3.3.3 ?[2]
Ubuntu 14.04 "Trusty Tahr" v2.3.2.3-1
Ubuntu 12.04 "Precise Pangolin" ? ?
Ubuntu 15.10 "Wily Werewolf" from iMule v2.3.2.4+ ? (v2.3.3.0 is compatible)
Ubuntu 16.04 "Xenial Xerus" v2.3.2.3-3 ? (v2.3.2.3 is compatible after recompilation. v2.3.3.0 seems compatible) v2.3.2.3 ?[3]
Windows XP ? v2.3.2.3
Windows 7 v1.4.5 ? ?
Windows 8 ? ?
Windows 10 ? ?

Note: if your OS is Windows, you may try Nachtblitz.

If downloading fail into the I2P network (interrupted)

http://www.imule.i2p eepsite is often down and the clearnet website is very slow. It also can happen that the download is interrupted before the end (because of the I2P network).

  • You may use the "hacker way" : command line. The software "EepGet" (provided with I2P) is able to download and resume interrupted downloads inside I2P. Example of command line to enter: "eepget http://echelon.i2p/imule/2.3.2.3/imule_2.3.2.3-precise-amd64.deb". Under Windows : you must run "COMMAND", then go inside the I2P folder to get eepget to work (usually: "cd C:\Program Files (x86)\I2P\", then enter the above eepget command).
  • You may download iMule by using a torrent program (I2PSnark, for example) to get it a little faster. Search iMule on tracker2.postman.i2p.
  • You may download Nachtblitz then use it to download iMule (!) : you may be interrested to know that, while iMule size file is 5 MB, Nachtblitz size is 2 MB (2014). This mean that if the download of iMule is interrupted before the end, it may be successful with a smaller file : Nachtblitz. Nachtblitz is compatible with iMule network (Kademlia), it may be possible to download the iMule package file from Nachtblitz (if someone share this file). Kademlia network handle better the file transfer interruptions than a web browser.

About all the download tricks above : it's recommended you compare the md5sum checksum of the file you downloaded with the one listed on the official http://www.imule.i2p site to ensure you a genuine uncorrupted file.

Linux: details

  • To know the requirements, read the text file (ie. "INSTALL") located into the source directory. Users of 32bit Linux can use the .deb file or compile, users of 64bit Linux should compile.

Known issues :

  • Ubuntu 14.04 based distributions and iMule up to v2.3.2.3 (but not from v2.3.3.0) : if you are trying a manual installation (without the repository) and get the error message "Error: Dependency is not satisfiable: libcrypto++9v5 ", this is because the latest version working on this distribution is v2.3.2.3-1 (v2.3.2.3-3 does not work). The installation is a bit harder because you have to download and install "imule-common_2.3.2.3-1+deb7u1_all.deb" and "imule_2.3.2.3-1+deb7u1_amd64.deb" (even if you get the warning message "Package libcrypto++9 is not installed.").

Linux: compiling from source code files

If iMule packages does not install, you may compile iMule by yourself.

The official instructions are into the source code archive (/iMule-src/wiki/CompilationTips is a text file). Currently (v2.3.2.3) the string seems outdated ("../configure --disable-debug --enable-optimize --enable-irouter"), it should be replace by " ../configure --disable-debug --enable-optimize --with-wxversion=2.8 --disable-maintainer-mode" (Hummingbird 2015-12-20).

... TODO (improve)

III. Quick start guide

Setup I2P

If you want to use iMule, you have to :

  1. If not installed, do install I2P (download it from https://geti2p.net/), then run it.
  2. Check that you can browse some eepsites (to be sure I2P work).
  3. Enable SAM connections in I2P: on the "I2P router console" screen, click "I2P INTERNALS", click the tab "Clients" (this lead to http://127.0.0.1:7657/configclients), in front of the line "SAM application bridge" click to set the checkmark, then click at lower right on "Save Client Configuration".
  4. Restart I2P with the "restart" button in leftern part of the router console.

Install iMule

  1. For Windows : unzip the iMule file in the folder where you want to install iMule (example C:\I2P\iMule\ or C:\Program Files\iMule\ )
  2. For Linux : see previous section

Run and setup iMule

  1. Run iMule - it should connect on its own to the running I2P router. Inside the area "iMule Log" you can view the text "Connection to the underlying I2P network successful", else you might view the error message "UDP server cannot connect to the I2P network (Unknown error)" (redo the section "setup I2P").
  2. The first time iMule is run you need to populate the nodes.dat file, this mean iMule will get a list of I2P nodes running iMule. On the "Kad network" tab there is a text box that says "Nodes(0): http://www.imule.i2p/nodes.dat". Click the blue arrow button imule_blue_button.png to download a nodes list, then iMule will automatically try to connect to the peers listed into that nodes list. In "iMule Log" area you should view the text "Autoconnect to the Kad indexing network".
    Note: if iMule crash every time that you load the nodes.dat file, check if "SAM application bridge" is enabled (read "Setup I2P").
  3. Wait 5 minutes, then if iMule does not connect to some other iMule clients (still see "Nodes(0)"), in the "Kad network" tab replace "http://www.imule.i2p/nodes2.dat" by "http://echelon.i2p/imule/nodes.dat". Click the blue arrow button imule_blue_button.png , wait at least 5 minutes, then you should see "Nodes(187)" (187 as example). Note: The nodes.dat files are very old (from 2016 or before). Files at www.imule.i2p no longer work; few contacts from echelon.i2p still work (03-2018). A current (03-2018) nodes.dat can be found at I2P Bittorrent DHT (magnet:?xt=urn:btih:7dd258d4485f1d28f2d8e5a74c1f517def48d40a).
  4. Now iMule is connected to its network. You can search for files from other users and download these.

How to share your files

You should share some files for other users : go into Preferences > Directories, you can select folders of your hard drive which will be shared for all other iMule users ( {OK} thank you ! :-) ). With the mouse: right click on the name of a folder, when it is bold it is shared. Close with 'OK'. You will have to wait some minutes or hours, while iMule hash the files and spread their names and hashes into its network.

<!> Be careful : DO NOT SHARE your private folders or files or things that do not belong to you!

Recommendation to organize your shared folders

(!) A good practice would be to create on your hard disk a folder where you put all the files shareable. Then you can share this main folder without fear to do a mistake (like sharing the wrong folder or sub folder), and without forget to share others folders.

Example for Windows :

  • C:\Shared_P2P\
  • C:\Shared_P2P\eBooks\
  • C:\Shared_P2P\Incoming\
  • C:\Shared_P2P\Movies\
  • C:\Shared_P2P\Musics\
  • C:\Shared_P2P\Softwares\
  • C:\Shared_P2P\Torrents\

IV. Misc

Tips

  • Help iMule (< v2.3.3.1) to find sources files faster: In order to let your iMule download more often between your I2P's sessions (and the I2P's sessions of the others users), help it to find sources faster (sources mean the peers having the files you started to download): menu "Preferences" > "Files" > "[X] Save 10 sources on rare files (<20 sources)". Unfortunately this setting is not enabled by default in iMule v2.3.2.3. Fixed from v2.3.3.1[4].
  • How to clear iMule's download history: There is no feature for that. A trick is to delete files "known.met" and "known2_64.met", however deleting these files will cause your iMule to loose all hashes and will require iMule to rehash all your shared files (ref). This just takes time.

Forums in Syndie about new files releases (shared files) in the iMule network

In the year 2013 somebody used Syndie to create forums where you can read the new released files shared that other people may want to announce, and where you can announce the new files you share. The idea may have be inspired by the bittorrent trackers web sites.

How to open a URN link into Syndie: menu "File" > "Open Syndie URI" > copy/paste the link.

Forum name Address in Syndie Comment
iMule - eBooks urn:syndie:channel:d7:channel44:~wOJ5qpaxwHAjJKilD49xma6x49Dc8cp1Kg11JFlODw=e
iMule - Games urn:syndie:channel:d7:channel44:RNulTiOCk2WbVq-SttH07JXw-HYAplT5ZWkTaVPizY8=e
iMule - Help & Support urn:syndie:channel:d7:channel44:dAa2WpPn19Xw2mwo2hxMfJ1dc~8yy2DsHlxiqd9VOdg=e
iMule - Movies urn:syndie:channel:d7:channel44:LlLjsK3flC1tfmxAGjk2L~Tllc318WTgNAvqTPxBYYw=e
iMule - music (audio) urn:syndie:channel:d7:channel44:1daqcl4PsbQg1shdWWA6rYTzneSTVSijAQCcNK3KSAo=e
iMule - music (video) urn:syndie:channel:d7:channel44:1xGQ4S~t~uRckgbzTv0CZ4BmH8vYMy-0whiOYsq7BFI=e
iMule - Pictures urn:syndie:channel:d7:channel44:LSobKMRrkC1uClxUAgI9aQYr~2RSIJ1Z4zY8A2gwDWQ=e
iMule - Requests & Reshares urn:syndie:channel:d7:channel44:EUoTPOtVjP07BLGMoWI2242FOuq7U7wT25yefAcTKl8=e
iMule - Software urn:syndie:channel:d7:channel44:UioTul9ySi3gJdFxXAyFoD8JvgDlyGXAxbs0oR~74DA=e
iMule - TV Shows urn:syndie:channel:d7:channel44:PwfRNWwygQ-TV9eEzu-g3Z2sNlXegUc2cSNXzEElBX0=e
iMule - XXX urn:syndie:channel:d7:channel44:ppbu7NwI-aSxlAyGmkScdHP0PbaMFR5VlD7sZucHPnU=e

How to download a file from its eD2K link

If you have the eD2k link (from a website, forum) of the file shared in the iMule network, here is how to download it:


  1. copy the eD2k link (example: ed2k://|file|iMule-2.3.3.1.zip|21911140|4AEE341BC48DED4C6A68F7F56DC0DBC3|/ )
  2. in iMule > tab 'Shared files' > at the bottom of this window you will see a box named 'eD2k Link:' > paste the link into > click the button 'Commit' > iMule show the file name in the tab 'Downloads' > now you have to wait

"Copy eD2k link to clipboard": prefer "AICH info"

When copying a link of a file that you share with your iMule, when you right click the file name, prefer the option "Copy eD2k link to clipboard (AICH info)", because it will copy the same infos as "Copy eD2k link to clipboard" and add the "AICH info", that is more secure than the default hash function used by iMule (v2.3.2.3. Default hash function is MD4).

For fore informations about MD4 and AICH, see the english Wikipedia.

Is iMule too much complicated for you ?

If the things described in this page are too much complicated for you <:( , you may prefer I2Phex, it has a lot less users than iMule, but work with the same principles (sharing whole folders, searching files by keywords, ...).

Upgrading iMule to a new version

Here is how to upgrade iMule without losing your settings nor your downloads in progress:

  • Linux: the data files of your iMule are located into "~/.iMule/". You can uninstall the iMule software with the standard process of your distribution, then download and install the new one.
  • Windows: because iMule on Windows has no installation software, the data files are located into the same folder as the application, no matter where it is. You should backup this folder, then unzip the new iMule software in your current iMule folder.
  • Mac OS X: ?.

<!> More details welcome.

  • Windows: there is a talk (2009) about a file named "thisIsImuleConfigDir" that should be deleted after a upgrade. If you have extract it and run iMule, you can still recover your old settings by deselecting the "nomad" option (or "per user configuration" option) in the Preferences, and restarting iMule.

Are magnet links supported by iMule ?

Only some magnet links are supported, if they are write the following way (ref):

magnet:?dn=NAME&xt=urn:[http://i2pwiki.i2p/ed2k:HASH&xt=urn:ed2khash:HASHAGAIN&xl=FILESIZE ed2k:HASH&xt=urn:ed2khash:HASHAGAIN&xl=FILESIZE]

Example:

magnet:?dn=iMule-2.3.2.3.zip&xt=urn:[http://i2pwiki.i2p/ed2k:c03193fe8599918ef1b3b0e16ec85f713&xt=urn:ed2khash:03193fe8599918ef1b3b0e16ec85f713&xl=5166713 ed2k:c03193fe8599918ef1b3b0e16ec85f713&xt=urn:ed2khash:03193fe8599918ef1b3b0e16ec85f713&xl=5166713]

V. Advanced subjects

If you need to improve your iMule privacy

Disable the 'Everybody can read your shared files list' setting

As of 2015 (v2.3.2.3), by default iMule allow other users to list the files you share AND the folders names.
You can disable it from icon 'Settings' > 'Security' > 'Who can read your shared files list' > '[x] Nobody' (by default it is: '[x] Everybody').

Increase the number of hops

The number of hops used by iMule is 2 by default. Even if you change your iMule's hop settings, it will not affect how many hops other clients are set to use. Note that increasing the number of hops will slow down your iMule traffic.
You can change it from icon 'Settings' > 'I2P Connection'. About the number of hops, KillyourTV write (nov 2013) : "There are no correct, one-size-fits-all settings that will work for everyone, so you'll need to pick settings that will work within your threat model."

About running iMule Headless (CLI)

Is it possible to run iMule Headless (command line interface) ?: Unknown, to write.

Things to read:

Read text file "INSTALL" in the iMule directory:

 ADVANCED OPTIONS
------------------
  This are some of the available configure options:

    <!--T:137-->
--enable-imulecmd         compile iMule command line client
    --enable-imule-gui        compile iMule remote GUI (EXPERIMENTAL)
    --enable-imule-daemon     compile iMule daemon version
    --enable-webserver        compile iMule WebServer

About the content of the file "key_index.dat"

"I opened key_index.dat and I do not liked what I saw. Is there an way to stop flowing pedophile content in my computer?": You don't store any content on your computer, it's not Freenet network, you only index that content. Note: the Nachtblitz client contains word-based content filter.[5]

"How can I stop imule remembering my downloads ?" (v2.3.2.3) : when a download is launched then cancelled before it download any bytes, then the word searched is saved into iMule folder, in the file named "key_index.dat". It seems recommended to erase this file, and/or imule folder from time to time, then reinstall it.[6]

VI. References

VII. See also

VIII. External links

P2P knowledge: