Designing an IPv6-native P2P transport – lessons from building I6P

IPv6 dreams vs router reality: the P2P showdown

TLDR: I6P aims to simplify peer-to-peer connections by leaning on IPv6 and a modern QUIC-based transport. Commenters aren’t convinced: they argue routers still block inbound traffic, existing tools already do similar things, and debate whether SCTP would be better—making reachability the real battleground.

I6P promises to end the NAT nightmare—that annoying router situation where computers can’t talk directly and have to “punch holes” to connect. The author, TheusHen, says IPv6 (a newer address system where everything can get its own public address) lets peers connect cleanly, and I6P is a plug-in transport layer built on QUIC (a modern web transport) with strong defaults like encryption and forward secrecy. It’s not a torrent app, it’s the underlying pipe. GitHub

Cue the comments, where router reality crashes the party. Skeptics like lxgr warn that “globally routable” doesn’t equal “actually reachable,” because many routers still block inbound traffic—so yes, hole punching may still haunt us. Another hot take: egberts1 drops a protocol throwback, arguing that SCTP (an older, versatile transport) would beat QUIC if firewalls didn’t kneecap it, turning the thread into a QUIC vs SCTP cage match. Then api shrugs: “others already do this with UDP,” implying I6P isn’t inventing the wheel, just repainting it. TheusHen jumps in to clarify it’s not a torrent replacement, just a cleaner, IPv6-first foundation. Meanwhile, j4nek’s snark—“heavy much vibed”—becomes the meme of the day, with users posting “NAT is the final boss” gifs and joking that IPv6 is the promised land… guarded by your router’s firewall. Drama score: high; hole-punching fatigue: higher.

Key Points

  • I6P aims to provide an IPv6-native, QUIC-based P2P transport that avoids NAT-related complexity.
  • The design leverages IPv6 for globally routable addresses, simplifying signaling and reducing reliance on TURN relays.
  • Core cryptographic choices include AEAD for payloads, X25519 for key agreement, and a minimal identity-binding handshake.
  • Security features include per-session ratcheting with chain keys for forward secrecy.
  • The transfer pipeline uses chunking, Merkle trees, and supports erasure coding; I6P is a transport substrate, not a full torrent client, with optional transfer layer and integration guidance.

Hottest takes

“Global routeability doesn’t automatically mean global reachability” — lxgr
“If it weren’t for Internet infrastructure hobbling SCTP…” — egberts1
“A number of existing P2P things already do this” — api
Made with <3 by @siedrix and @shesho from CDMX. Powered by Forge&Hive.