i2pd is an I2P router that gives local applications an HTTP proxy and a SOCKS proxy for I2P destinations. Install it from your distribution package source, start the service, then point a browser at the local HTTP proxy on 127.0.0.1 port 4444.
Choose the package source before installing i2pd
Use your distribution’s package repository when it contains i2pd, because it integrates with the distribution’s updates and service manager even when its version lags behind the upstream release.
| Distribution | Documented installation path | What to check |
|---|---|---|
| Debian | Debian package or the repository linked by i2pd documentation | Whether your enabled repository carries i2pd |
| Ubuntu | PurpleI2P PPA or an upstream release package | That you trust the additional package source |
| Fedora | supervillain/i2pd COPR | That the COPR supports your Fedora release |
| Arch Linux | Extra repository | Use the release package, not the nightly AUR package |
The i2pd project labels the Fedora COPR and Debian repository as community-maintained sources, so review a third-party repository before adding it to a machine that holds sensitive data.
Install i2pd on Debian
Debian 13 includes i2pd in its enabled main repository, so start with the normal APT update and install the package.
sudo apt-get update
sudo apt-get install i2pd
The i2pd documentation also lists an upstream-linked Debian repository for distributions that need a newer package. Add it only after reading its current instructions because it changes the software source APT will trust.
Install i2pd on Ubuntu
The project documents the PurpleI2P PPA for Ubuntu, and this command sequence adds the PPA, refreshes package metadata, and installs i2pd.
sudo add-apt-repository ppa:purplei2p/i2pd
sudo apt-get update
sudo apt-get install i2pd
A PPA is an additional software source, so use the package route approved by your repository policy instead of adding it when that policy applies.
Install i2pd on Fedora and Arch Linux
Fedora’s documented path uses the supervillain/i2pd COPR, and its service command starts i2pd immediately while enabling it for later boots.
sudo dnf copr enable supervillain/i2pd
sudo dnf install i2pd -y
sudo systemctl enable --now i2pd
Arch Linux publishes the release package in Extra, and the i2pd documentation lists the following command for it.
sudo pacman -S i2pd --noconfirm
Start i2pd and confirm that the service is running
Because a proxy setting cannot work until the router process is running, packages that provide the systemd unit can be started and enabled with systemctl. Check the status before configuring a browser.
sudo systemctl enable i2pd.service
sudo systemctl start i2pd.service
sudo systemctl status i2pd.service
An active service reports active (running), while a missing i2pd.service requires the package documentation for your distribution because service packaging differs between sources.
Use the local I2P HTTP proxy in Firefox
i2pd documents an HTTP proxy at 127.0.0.1 port 4444 for browsing I2P sites. In Firefox, open Settings, search for Network Settings, choose Settings, select Manual proxy configuration, and enter 127.0.0.1 with port 4444 for the HTTP proxy.
Keep the address on loopback, because binding a proxy to a public network interface changes who can use it and needs an explicit access-control decision.
Know the privacy boundary
i2pd routes I2P traffic and does not remove identifying information that you submit to a site or make ordinary internet destinations part of I2P.
Use the HTTP proxy for I2P destinations and keep separate browser profiles when you need to avoid mixing cookies, logins, or downloads with ordinary browsing. Read the project’s anonymous-websites documentation before using an application that handles sensitive material.
Check the package and source before relying on it
Run the package-manager command for your distribution first, then use systemctl status to confirm the daemon. The official i2pd installation and running documentation lists package sources and service commands, while the project’s release page shows upstream builds for version comparisons.
Use the local HTTP proxy only after you have confirmed that the service is active and that the browser setting still points to 127.0.0.1 port 4444.
