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?

If you're running a manually installed version of I2P from the Java installer (not a repo or .deb installed 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 full Windows or Linux installer from i2pplus.com

Windows   Linux

Or from the Tor .onion mirror

Windows   Linux

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:

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.

A torrent of the latest build is always available from: http://skank.i2p/i2pupdate.zip.torrent

Alternatively, you can download the update via skank.i2p or i2pplus.com (eepget recommended if using skank.i2p), or configure I2P to allow unsigned updates and configure with the url: http://skank.i2p/i2pupdate.zip (0.9.49+)
[sha256: 2b65ba8480db908c133da97273099f39dbebb78c3c249592ba6e2386f07f5b79].

This will automatically update your router when a new version becomes available. If updating via the console fails repeatedly, set the I2P update policy to Notify only to be informed of new updates, and then grab the torrent. For help with enabling unsigned updates, see below.

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).

How do I enable in-console updates?

The recommended (and most reliable) method to update I2P+ is to download the torrent file of the latest release and manually copy the i2pupdate.zip file to your application folder. However, if you wish to be notified of new updates, you can configure I2P+ to permit unsigned updates. To do so, add either router.updateUnsigned=true or routerconsole.advanced=true to your router.config file located in your settings folder (see below).

Where is my I2P settings folder (for a non-repo installed 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 Linux I2P+ Java I2P installer from: https://i2pplus.com or the Tor .onion site
  2. Run the Java GUI installer by typing from a command prompt: java -jar i2pinstall_0.9.49-0+_linux-only.jar (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_0.9.49-0+_linux-only.jar -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
  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).

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 Gitlab. 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.

This site is available via the following:

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