Privacy Tools #I2P#anonymity#network privacy

How to Use the I2P Network: Setup and Use Cases

I2P network guide: how it differs from Tor, how to install and configure I2P, access eepsites, and understand real-world use cases and limitations.

7 min read

I2P (the Invisible Internet Project) is an anonymous network layer designed for internal, network-within-a-network communication. While Tor is built to anonymize access to the regular internet, I2P is primarily designed for services that live entirely within the network itself — called eepsites. Understanding this distinction is key to knowing when I2P is the right tool and when Tor is better suited to the task.

I2P vs Tor: Core Differences

Both Tor and I2P provide anonymity through layered encryption and routing through volunteer-operated nodes, but their architectures and intended use cases differ substantially.

FeatureTorI2P
Primary use caseClearnet access + hidden servicesInternal network services (eepsites)
Routing modelCentralized directory serversFully distributed DHT (Kademlia-based)
Traffic typeMostly TCPUDP-based, multiple transports
Hidden services.onion addresses.i2p addresses (eepsites)
Clearnet accessVia exit nodesVia outproxies (limited, optional)
Network size~7,000 relays~50,000 nodes (smaller active community)
SpeedSlowFaster within the network
MaturityMore mature, widely testedSmaller, more specialized

Tor routes your traffic through three hops to exit nodes that connect to the regular internet. This is ideal for anonymous browsing of clearnet sites.

I2P routes your traffic through a series of tunnels — two unidirectional tunnels per connection — entirely within the I2P network. There is no “exit” in the traditional sense. Accessing regular websites requires an outproxy, which are rare and often throttled. I2P’s strength is hosting and accessing services that live exclusively within the network.

How I2P Tunnels Work

I2P uses garlic routing, a variant of onion routing where multiple encrypted messages are bundled together (“cloves” of garlic) and routed through the network. Each tunnel hop decrypts one layer; no single node knows both the source and destination of a message.

Two types of tunnels exist:

  • Outbound tunnels from your router push traffic into the network
  • Inbound tunnels at your destination receive traffic

This bidirectional design means an eavesdropper watching your internet connection sees I2P traffic, but cannot determine which I2P service you’re communicating with.

Installing I2P

I2P has two main implementations: the original Java I2P and the newer i2pd (C++ implementation).

  1. Download the installer from geti2p.net. Java 8 or higher is required.
  2. On Linux:
java -jar i2pinstall_*.jar
  1. On Windows and macOS, run the graphical installer.
  2. After installation, start I2P. A browser window should open to http://127.0.0.1:7657 — the I2P Router Console.

i2pd (C++ Router)

i2pd is lighter on resources and preferred for servers and embedded use:

# Debian/Ubuntu
sudo apt-get install i2pd

# Start the service
sudo systemctl enable --now i2pd

The i2pd web console runs on http://127.0.0.1:7070 by default.

First-Time Setup and Integration

Allow Time to Integrate

When you first start I2P, your router is unknown to the network. It takes 5–10 minutes for your router to bootstrap, find peers, and build tunnels. During this time, connections will be slow or fail. The Router Console shows your network status and active tunnels — wait until you see “OK” status and multiple active tunnels before expecting anything to work.

Configure Your Browser for I2P

I2P exposes an HTTP proxy on 127.0.0.1:4444. Configure a browser (Firefox is recommended) to use this proxy:

  1. Open Firefox’s Settings → Network Settings → Manual proxy configuration
  2. Set HTTP Proxy to 127.0.0.1, port 4444
  3. Set No proxy for to localhost, 127.0.0.1
  4. Leave HTTPS proxy empty (I2P handles HTTP; use the I2P HTTPS proxy on port 4445 if needed)

With this proxy active, typing a .i2p address in Firefox will route through I2P. Typing a regular URL will route through an outproxy (if configured) — but be aware that outproxies are not end-to-end secure to the clearnet.

Do not use this browser profile for regular internet browsing while the I2P proxy is active. Use a separate browser or profile.

Access the I2P Internal Search and Directory

The Java I2P installation includes several default services:

  • http://stats.i2p — network statistics
  • http://i2p-projekt.i2p — the I2P project’s eepsite
  • http://forum.i2p — community forums
  • http://notbob.i2p — a directory of active eepsites

These are good starting points to verify your setup is working. If they load (albeit slowly), your I2P integration is functional.

Real-World Use Cases for I2P

Anonymous File Sharing with I2PSnark

I2PSnark is a BitTorrent client built into the Java I2P installation. It routes all torrent traffic through I2P tunnels, meaning neither the tracker nor other peers can see your real IP. Access it at http://127.0.0.1:7657/i2psnark. This is one of I2P’s strongest use cases — anonymous peer-to-peer file sharing without an exit node.

Hosting an Eepsite

I2P makes it straightforward to host a website accessible only within the network:

  1. In the Router Console, go to Hidden Services Manager (or I2PTunnel in Java I2P)
  2. Create a new HTTP Server tunnel pointing to a local web server (e.g., nginx on port 80)
  3. I2P generates a unique Base32 address for your service (e.g., yoursite.b32.i2p)
  4. Optionally register a short hostname at an I2P name registry

Your eepsite is now accessible to anyone running I2P. The server IP is never exposed to visitors.

Anonymous Email and Messaging

I2P-Bote is a serverless, encrypted email plugin for I2P. Messages are stored in a distributed hash table across the network, with no central mail server. It’s not designed for sending email to external addresses — it’s entirely within I2P.

I2P-Messenger provides instant messaging over I2P tunnels.

Running a Private Git or File Server

Developers use I2P to host private Gitea or file server instances accessible only to trusted peers. Because I2P handles the network layer, you don’t need to open firewall ports or use a VPN.

Limitations and Practical Considerations

Speed is I2P’s biggest weakness. Tunnel building takes time, and the available bandwidth is limited by the volunteer network. Downloading large files or streaming media is impractical. I2P is best for text-heavy applications.

Clearnet access is limited. Outproxies exist but are few, often throttled, and not cryptographically trustworthy for clearnet traffic. For anonymous clearnet browsing, Tor remains the better choice.

The network is smaller. I2P’s user base is smaller than Tor’s, which provides less anonymity through crowd-size (fewer people to blend into). On the other hand, this means fewer attempts to run malicious exit nodes.

I2P is not a VPN. It does not tunnel all system traffic — only traffic explicitly routed through the I2P proxy or configured to use I2P tunnels.

When to Use I2P vs Tor

Use I2P when:

  • You want to host a service anonymously within a network
  • You’re doing P2P file sharing and want full anonymity
  • You’re communicating with services that exist only within I2P

Use Tor when:

  • You need to browse the regular internet anonymously
  • You need to access .onion sites (Tor hidden services)
  • You want the larger anonymity set that Tor’s scale provides

For many privacy use cases, the right answer is to understand both and use each where it fits. I2P is not a Tor replacement — it’s a complementary tool with a different design focus. For hosting anonymous services or P2P communication entirely within an anonymous network, I2P has no peer.

#eepsites #Tor #network privacy #anonymity #I2P