🧅 Tutorial completo: I2P para torrents (seteando i2pd + qBittorrent)

Fecha: 2026-09-19 · Sistema: Arch Linux · Router: i2pd · Cliente: qbittorrent-nox Resultado: descargar torrents por I2P de forma anónima, buscando en indexers .i2p.


Índice

  1. Resumen de lo que se armó (mapa de puertos)
  2. Instalar y configurar i2pd
  3. Exponer i2pd en la LAN (opcional)
  4. Cómo se accede a una página .i2p (curl / lynx / w3m)
  5. Cómo encontré las páginas de torrents (addressbook)
  6. Dónde buscar torrents en I2P (indexers y trackers)
  7. Configurar qBittorrent para bajar por I2P
  8. Cómo bajar un torrent manualmente (paso a paso)
  9. Verificación + troubleshooting
  10. Privacidad

1) Mapa de lo que se armó

Todo vive en tu PC (192.168.0.143 en la LAN). Los puertos locales:

Puerto Servicio Uso
7656 i2pd SAM API lo usa qBittorrent (I2P)
4444 i2pd proxy HTTP curl / lynx / w3m / navegador
4447 i2pd proxy SOCKS5 otro cliente o apps socks
7070 i2pd webconsole estado del router
8080 qBittorrent WebUI panels de torrents

Flujo de datos: qBittorrent → SAM(7656) → red I2P → peers I2P. La IP real nunca se expone: todo el tráfico va dentro de la red I2P.


2) Instalar y configurar i2pd

sudo pacman -S i2pd
sudo systemctl enable --now i2pd

Config principal: /etc/i2pd/i2pd.conf.

Chequear que esté activo y escuchando:

systemctl is-active i2pd
ss -tlnp | grep -E '7656|4444|4447'

El warm-up: al instalar/reiniciar el router “calienta” (genera claves y busca peers fast/stable). Los primeros 1 a 5+ minutos las páginas .i2p dan timeout (000). Es esperable, no es un error.

Reiniciar (en frío otra vez):

sudo systemctl restart i2pd

3) Exponer i2pd en la LAN (opcional)

Por defecto i2pd solo escucha en 127.0.0.1. Para usarlo desde otra computadora editar /etc/i2pd/i2pd.conf:

[httpproxy]
enabled = true
address = 192.168.0.143   # ← tu IP LAN
port = 4444

[socksproxy]
enabled = true
address = 192.168.0.143
port = 4447

Luego sudo systemctl restart i2pd.

⚠️ Dejarlo en 0.0.0.0 lo expone a TODA la red. Si te importa, limitá con firewall (nftables/iptables) aceptando solo la IP de la compu que vayas a usar.


4) Cómo acceder a una página .i2p

Toda URL I2P se navega a través del proxy del router. Nunca directo.

curl

curl -x http://127.0.0.1:4444 -sL http://NOMBRE.i2p/
# desde otra PC:
curl -x http://192.168.0.143:4444 -sL http://NOMBRE.i2p/

lynx / w3m

http_proxy=http://127.0.0.1:4444 lynx http://NOMBRE.i2p/
ww3m -http_proxy http://127.0.0.1:4444 http://NOMBRE.i2p/

Variable de entorno (lo más cómodo)

export http_proxy=http://127.0.0.1:4444
export https_proxy=http://127.0.0.1:4444

Metelo en ~/.bashrc y no haces más.

Error común: lynx -socks5_proxy=http://127.0.0.1:4444 está MAL (4444 es HTTP, no SOCKS; el SOCKS va en 4447 y sin http://). Usá la variable de entorno.


5) Cómo encontré las páginas de torrents (addressbook)

i2pd mantiene automáticamente un addressbook (agenda) con los eepsites públicos conocidos: /var/lib/i2pd/addressbook/addresses.csv (formato nombre.i2p,b32).

Filtrar por torrents/trackers:

sudo grep -iE 'torrent|tracker' /var/lib/i2pd/addressbook/addresses.csv

Buscar otros intereses (música, libros, archivos):

sudo grep -iE 'music|book|files|share|manga|movie' /var/lib/i2pd/addressbook/addresses.csv

Es un CSV; se puede leer con -c para contar o cut -d, -f1 para solo nombres. Los sitios no listados igual se pueden abrir por su .b32.i2p si sabés el hash.


6) Dónde buscar torrents en I2P

Indexers (sitios WEB con listas de torrents/magnets)

Eepsite Qué es Cómo abrirlo
torrentthing.i2p indexer general (libros, pelis, anime, música, comics); “10m torrents / 116m files” curl -x 127.0.0.1:4444 http://torrentthing.i2p/
annas-torrents.i2p indexer estilo “Anna’s” idem
hentai-torrents.i2p torrents de anime/hentai idem
bytebackmusic.i2p música FLAC/transcodes idem
read-manga.i2p cómics/manga idem

Trackers (infraestructura que junta peers)

tracker2.postman.i2p, opentracker.bt.i2p, opentracker.dg2.i2p, opentracker.skank.i2p, tracker.insulaocculta.i2p. Los magnets de estos indexers suelen venir sin announce: los peers se encuentran vía DHT dentro de I2P.


7) Configurar qBittorrent para bajar por I2P

En el conf de tu usuario (~/.config/qBittorrent/qBittorrent.conf) se agregó, bajo la sección [BitTorrent]:

[BitTorrent]
Session\I2P\Enabled=true
Session\I2P\Address=127.0.0.1
Session\I2P\MixedMode=false

Explicación:

  • Enabled=true → activa I2P en libtorrent.
  • Address=127.0.0.1 → host del SAM API de i2pd (puerto default 7656).
  • MixedMode=falseSOLO I2P (no mezcla clearnet + I2P; lo seguro).

Pasos para que tome el cambio:

sudo systemctl stop qbittorrent-nox@esotericwarfare.service
# editar qBittorrent.conf ...
sudo systemctl start qbittorrent-nox@esotericwarfare.service

Si tenés GUI: Opciones → BitTorrent → sección I2P → habilitar “Use the I2P proxy for torrent connections” y modo “I2P only”.

Verificación rápida de que el servicio corre con la config:

systemctl is-active qbittorrent-nox@esotericwarfare
ss -tlnp | grep 8080
grep -n 'I2P' ~/.config/qBittorrent/qBittorrent.conf

8) Cómo bajar un torrent por I2P (manual, paso a paso)

  1. Abrí el indexer (esperá el warm-up del router si recién arrancó):

    curl -x http://127.0.0.1:4444 -sL http://torrentthing.i2p/ | grep -oE 'href="[^"]+"' | head
    # o mejor navegá con lynx:
    http_proxy=http://127.0.0.1:4444 lynx http://torrentthing.i2p/
    
  2. Elegí un torrent → en cada fila hay un botón “Open magnet link”. Copiá el magnet (empieza con magnet:?xt=urn:btih:...).

  3. Agregalo a qBittorrent by API (qBittorrent-nox no tiene GUI; WebUI en http://127.0.0.1:8080 desde tu PC, o http://192.168.0.143:8080 desde otra):

    # primero hacé login y guardá la cookie (usuario/pass = los del WebUI):
    curl -s -c /tmp/qcookies -b /tmp/qcookies \
      --data-urlencode 'username=TU_USUARIO' --data-urlencode 'password=TU_PASS' \
      'http://127.0.0.1:8080/api/v2/auth/login'
    # después, agregar el magnet:
    MAGNET='magnet:?xt=urn:btih:...'
    curl -s -b /tmp/qcookies \
      --data-urlencode "urls=$MAGNET" --data-urlencode 'savepath=/home/esotericwarfare/Descargas' \
      'http://127.0.0.1:8080/api/v2/torrents/add'
    # o con el WebUI: pegás el magnet en "Agregar torrent" directo.
    
  4. Mirá que arranque (estado metadata/descarga):

    curl -s -b /tmp/qcookies 'http://127.0.0.1:8080/api/v2/torrents/info'
    
  5. Los peers TARDAN: es una red chica y anónima. Cero peers durante varios minutos es normal, sobre todo en torrents viejos.


9) Verificación + troubleshooting

Problema Diagnóstico Solución
Todo da 000 al inicio router en warm-up tras install/restart esperá 1-5 min, reintentá
500 al navegar hostname no resuelve con la config chequeá el addressbook o usá .b32.i2p
lynx -socks5_proxy cuelga puerto/palabra mal usá http_proxy=...:4444
qBittorrent “no peers” I2P es lenta / MixedMode esperá; el modo solo-I2P es más seguro
Repetí todo después de restart cada restart = warm-up da igual, las claves persisten

Estado:

systemctl status i2pd qbittorrent-nox@esotericwarfare
curl -s http://127.0.0.1:7070/ | grep -oE '(fast|stable)[^,]{0,10}' | head

10) Privacidad (importante)

  • No mezcles: si vas a bajar por I2P, no bajes a la vez por clearnet con el mismo qBittorrent. MixedMode=false lo garantiza.
  • Los torrents de I2P solo bajan de peers I2P. Nadie ve tu IP real.
  • No uses tu navegador normal para I2P sin cuidar el proxy: configuralo con http_proxy=:4444 SOLO para esa sesión (o un perfil separado).
  • El indexer puede contener material ilegal. Verificá lo que bajás; es tu responsabilidad.
  • Si el router queda expuesto en la LAN (0.0.0.0), cualquiera de la red puede usarlo. Preferí 192.168.0.143 (IP específica) o firewall.

Tutorial verificado contra la config real del nodo del usuario (2026-09-19): puertos 4444/4447 en la LAN, SAM 7656 local, qBittorrent I2P-only.