I2P+

Download Changelog Glossary API Github hosts.txt EN ZH

What is I2P+?

I2P+ is an enhanced version of the Java I2P anonymizing network platform that aims to deliver a superior user experience and improved network performance while retaining full compatibility with upstream I2P.

An enhanced user interface with updated themes, easier to understand configuration and diagnostics, and an augmented feature set make I2P+ a compelling alternative to the official I2P release.

Additionally, I2P+ implements improvements to the router's network performance and, for routers that are firewalled, significantly increases participating traffic and network responsiveness. Performance of the resident BitTorrent client I2PSnark is also improved in some contexts.

Is I2P+ compatible with I2P?

The changes relate to user interaction and enhanced presentation of the console and webapps, in addition to network performance improvements, leaving the underyling crypto untouched, so it remains 100% compatible with I2P.

On the network, an I2P+ router will identify as a normal I2P router.

I2P+ Screenshots

How do I get it and how do I install it?

For a full list of download options, see the downloads section below.

Note: If you installed I2P via the Easy Installer bundle you will need to uninstall it and remove or rename your %appdata%\i2p folder before installing I2P+. You may also need to manually download and install a Java JDK or JRE — Microsoft's latest build recommended.

If you're running a manually installed version of I2P from the Java installer (not a repo or .deb installed version or the Easy Install bundle version), updating is as simple as dropping the i2pupdate.zip file into your I2P application folder and restarting the router.

Note: Do not extract the zip file, simply copy it to the I2P application folder and restart I2P... I2P will extract the zip automatically and update.

Alternatively, if you haven't already installed I2P, you can download a universal (Win / Lin / BSD / Mac OS) installer

As of 0.9.46+, the full installation will enable https:// access to the console by default; you will need to allow the (self-signed) certificate before you can access the router console.
To disable automatic redirection of the http:// version of the router console on :7657 to https:// on :7667, add the following line to your router.config file located in your I2P+ settings directory: routerconsole.redirectToHTTPS=false

The default location of the (non-repo installed) I2P application folder varies by operating system:

  • Windows: Program Files\i2p\ or Program Files (x86)\i2p\
  • Apple: /Applications/i2p/
  • Linux: ~/i2p/

Note: On Windows, the Windows service to control I2P will be installed, for which you will require admininstrative privileges, and the service control shortcuts to stop and start the service may need to be run as an administrator to work.

An I2P-only torrent of the latest release update is also available.

How do I enable in-console updates?

To obtain release updates of I2P+, the recommended method is to add the I2P-only torrent url of the latest release to I2PSnark, and when downloaded, manually copy the i2pupdate.zip file to your application folder. Restarting the router will activate the update process.

Note: After you have installed an I2P+ update, you may need to refresh your browser cache to ensure any updated css files and resources are loaded for the console and web apps. In Firefox and Chrome, CTRL+SHIFT+R will force the resources to be reloaded for the page you are viewing. You may also need to repeat the process for the console webapps (torrents, susimail, susidns etc).

It's also recommended to enable the Update with Unsigned Development builds option on the router updates page, and optionally replace the default release version url http://skank.i2p/i2pupdate.zip with the development branch url http://skank.i2p/dev/i2pupdate.zip if you want to subscribe to the rolling release builds.

Note: To avoid updating to vanilla I2P releases, set the Update Policy on the page to Notify only (if not already configured), and then you'll be notified in the console sidebar when an I2P+ update is available, with the option to download manually.

Where is my I2P settings folder (for a non-repo installed I2P)?

  • Windows: %APPDATA%\I2P\
  • Apple OS X: /Users/username/Library/Application Support/i2p
  • Linux/*BSD: ~/.i2p/

I've installed I2P from a Linux repo or .deb file, how do I install I2P+?

If you have installed I2P from a software repository, you will need to disable the I2P service and download the I2P+ Linux Java installer in order to run I2P+. You will benefit from access to official updates more speedily than those available in the repository, and you'll be able to install custom builds such as I2P+.

  1. Download the universal I2P+ Java I2P installer
  2. Run the Java GUI installer by typing from a command prompt: java -jar ./i2pinstall.exe (replace the i2pinstall filename with the file you downloaded, and change to the download directory before running the command). To run the installer headless (console install with no GUI): java -jar ./i2pinstall.exe -console
  3. If you see Exception in thread "main" java.awt.AWTError: Assistive Technology not found: org.GNOME. when attempting to install, try running the following command: sudo sed -i -e '/^assistive_technologies=/s/^/#/' /etc/java-*-openjdk/accessibility.properties
  4. Install I2P to the default directory location which is: $HOME/i2p
    Note that you will need to manually specify the install directory when running the installer headlessly (via -console) or it will install all the files into the directory from which the installer was run.
  5. Check if you have a $HOME/.i2p directory, and if so change the ownership of the directory recursively to your normal logged in user: sudo chown -R yourusername:yourusername ~/.i2p/
  6. If you're running I2P as a service (installed from repo), stop the service and disable it from running: sudo service i2p stop && sudo systemctl disable i2p
  7. Now it's time to run the version you've just manually installed: ~/i2p/i2prouter start
  8. Check that I2P+ is running as expected on http://127.0.0.1:7657
  9. If you want I2P+ to run at startup, similar to how the service starts, there are several options:
    • Add /bin/su yourusername -c "/home/yourusername/i2p/i2prouter start" to your /etc/rc.local file
    • Add an entry for ~/i2p/i2prouter start to your session startup configuration tool
    • Run the command ~/i2p/i2prouter install (note: you will need to uncomment the line #RUN_AS_USER= in the file ~/i2p/i2prouter and add your login username to enable this feature).

Note: When installing I2P+ headlessly via the -console argument, the installer will default to installing to the current working directory, so either create the desired installation directory first (usually ~/i2p/) and move the install.jar file into that directory before starting the installation, or manually specify the installation path when prompted.

Does installing I2P+ prevent official updates, and can I restore the official version easily?

I2P+ does not interfere in any way with the normal I2P update process. When a new official release is made available, you can easily restore your installation to vanilla I2P by installing the update.

If you'd like to try out I2P+ with the option to change back to your existing I2P installation, the easiest way is to make a copy of your I2P application folder, and then copy the update to the working I2P application folder and restart the router.

In the event that you wish to restore normal I2P, shutdown I2P+ and then restore the backup after renaming/deleting the working I2P app folder. This will ensure that your official I2P installation will be exactly as you left it!

I'm a developer, how can I access the source code?

I2P+ is now available on Github. If you have modifications to the codebase you'd like to see included in I2P+, fork the code and modify the files you wish to submit, and then create a merge request.

Addressbook Subscription

If you wish to avoid having to manually resolve the new I2P domains linked in I2P+ with jump links, you can add http://skank.i2p/hosts.txt to your Subscriptions list in your I2P Addressbook. This is a small, curated list of links that have been added to the Router Console in I2P+. You can alternatively import the hosts.txt file into SusiDNS via the Import function.

If you wish to promote I2P+ to other users who may not have the skank.i2p domain in their addressbook, you can share the helper link.

For online support, please visit #saltR on the I2P IRC network or #i2p+ on the libera irc network (irc.libera.chat).

Download I2P+

Note: Occasionally I2P+ development builds will be uploaded to the release channel prior to an official release when significant bugs are fixed or mitigated. Unless otherwise stated, downloads are compatible with Java8 or later. Also note that the .i2p or .onion links to the development i2pupdate.zip will soon require a pre-exisiting I2P+ installation with pack200 support, or Java13 or less; this will result in development updates approximately 50% smaller. You can check for the presence of pack200.jar on the console /jars page.

Direct Download I2P BitTorrent
2.8.5+ Installer*
Win / Lin / BSD / MacOS
Universal Universal Universal
Universal n/a
*For non-Windows installations, the following command will work from the command line (the .exe is a windows-specific wrapper to the .jar file):
java -jar ./i2pinstall.exe
2.8.5+ Update i2pupdate.zip
i2pupdate.zip
i2pupdate.zip
Torrent n/a
Development Update i2pupdate.zip i2pupdate.zip n/a n/a
I2PSnark Standalone I2PSnark I2PSnark I2PSnark Torrent n/a

This site is available via the following:

  • skank.i2p
  • i2pplus.github.io
  • Tor .onion site

Quote of the week

"You're definitely continuing to move in the right direction - I don't think I would enjoy reverting to stock I2P."

A satisfied I2P+ user