How to Install and Use I2P for Secure and Anonymous Communication on Windows 11
- Last updated: Jun 1, 2025
I2P (Invisible Internet Project) is a long-standing open-source initiative—active for over two decades—designed to provide a secure and anonymous communication layer over the Internet. Its main goal is to resist censorship and protect user privacy by encrypting traffic and routing it through a decentralized network of I2P routers.
This robust network layer supports a range of anonymous services, including web browsing, P2P file sharing, and BitTorrent clients, among others.
In this guide, I’ll walk you through the step-by-step installation and configuration of I2P on a Windows 11 system.
Install
The prerequisites for I2P are the Mozilla Firefox browser and the Java Runtime Environment (JRE).
Java
I2P requires the Java Runtime Environment to function. While the I2P website recently introduced an all-in-one bundle that includes Java, it's still in beta and, based on my experience with bugs, not yet recommended. Instead, we will install the recommended version that requires Java to be installed beforehand.
Since Oracle changed its Java licensing terms, I recommend using an alternative. Personally, I use Adoptium (https://adoptium.net/) which is free, open-source, license-free, and maintained by the Eclipse Foundation (https://wikipedia.org/).
- Visit the official page: https://adoptium.net/ and download Java for Windows:

- Run the installer and click on Next:

- Accept the license:

- Choose installation scope:

- Keep default settings:

- And click Install:

- When the installation is complete, click Finish:

I2P
- Go to the official I2P download page: https://geti2p.net/ and download the i2pinstall.exe file:

- Run the downloaded file. If Windows displays a warning, click Run anyway:

- Choose your language and proceed with the installation steps:

- Click on Next:

- Read the humorous information note if you wish, then click on Next:

- Select the installation path:

- Check the option to install I2P as a Windows Service:

- Once the installation process is finished, click on Next:

- Complete the setup and let the installer create desktop shortcuts:

- Click on Done:

Post-Installation
After installation, you'll need to adjust a few settings such as the Windows Firewall and port forwarding. Below are the post-installation steps.
Service Check
- Open the Windows Services Management Console to confirm that the I2P Service is running:

- Alternatively, use PowerShell:
PS C:\> Get-Service -Name I2P
Status Name DisplayName
------ ---- -----------
Running I2P I2P Service
- If not running, start it with:
PS C:\> Start-Service -Name I2P
Primary Settings
- Click the I2P router console shortcut or visit http://127.0.0.1:7657 in Firefox:

- Follow the setup wizard and select preferred language:

- Choose theme:

- Run the bandwidth test:

- Click on Next at the end of the bandwidth test:

- Adjust bandwidth settings if needed, then proceed until you reach the I2P console dashboard:

- We’ll configure Firefox later — for now, just click Next:

- Click Finish at the end of the bandwidth test:

- Finally, the main I2P Router Console interface should appear:

Ports Configuration
Here, we will check or configure the ports (TCP and UDP) used by I2P. This information will be used to properly configure the Windows Firewall below.
- Navigate to Configuration > Network or open http://127.0.0.1:7657/confignet. Take note of the UDP and TCP ports (e.g., 22648):

- Once your UDP and TCP ports have been identified (or modified), you should configure your Internet Gateway to perform NAT and forward these ports to the internal IP address of the workstation running your I2P router. For example, here I forward UDP and TCP port 22648 to the IP address 192.168.1.10:

Windows Firewall
Almost done — just one final step. We now need to allow inbound connections in the Windows Firewall.
- We need to allow the following through the firewall:
- UDP port previously set (22648 in my case)
- TCP port previously set (22648 in my case)
- The javaw.exe executable
Depending on your preferences, we can create the rule either from the GUI or using PowerShell. I will show you both methods so you can choose! 😉
Configure Windows Firewall (GUI)
We need to create three different rules: one for javaw.exe, one for TCP port 22648, and one for UDP port 22648.
- Open the Windows Firewall Console and create a new inbound rule:

- Select Custom Rule as the rule type:

- For the java rule, click Browse and specify the path to javaw.exe:

- For the TCP rule, select the TCP protocol and specify the port number:

- For the UDP rule, select the UDP protocol and specify the port number:

Configure Windows Firewall (PowerShell)
- Open a PowerShell prompt with administrative privileges and enter the following commands: (⚠️ Make sure to check the JDK path, as the version may differ. ⚠️)
PS C:\> New-NetFirewallRule -DisplayName "I2P_UDP" -Direction Inbound -Protocol UDP -LocalPort 22648 -Action Allow
PS C:\> New-NetFirewallRule -DisplayName "I2P_TCP" -Direction Inbound -Protocol TCP -LocalPort 22648 -Action Allow
PS C:\> New-NetFirewallRule -DisplayName "JAVA" -Direction Inbound -Program "%ProgramFiles%\Eclipse Adoptium\jdk-21.0.7.6-hotspot\bin\javaw.exe" -Action Allow
Network Check
Once everything is set up, we need to make sure that the I2P network is reachable.
- From the I2P Console, restart the router:

- After a few minutes, once the I2P router has restarted, the network status should show as OK:

Configure Firefox
Now let's see how to configure the Firefox browser to use the I2P network.
Firefox Profile (Optional)
It's not required, but I recommend creating a new Firefox profile. This will allow you to easily switch between your regular configuration and the I2P network.
- Open the Firefox Profile Manager:

- Click on Create Profile… to start the profile creation wizard:

- In the Welcome window, click Next:

- Enter a name for the new profile:

- Select the newly created profile and click Start Firefox to launch the browser:

Configure Firefox Proxy
- Open the Settings menu(1)(2), search for proxy(3), then click on Settings(4) under the Network section:

- Set the Connection Settings with the following parameters:

- Once the proxy settings have been configured, use any IP address checker (such as this beautiful Firefox add-on: https://addons.mozilla.org/ 😇) to confirm that your real IP address is hidden:
