Initial commit: iroh-forward TCP-over-Iroh forwarder

TCP-Forwarding über das Iroh-Netz (QUIC), adressiert per Public Key statt IP
(Umsetzung von Option B aus recherche-vpn-vs-p2p-netzwerk.md).

- server: nimmt Iroh-Verbindungen an, leitet QUIC-Streams an lokalen Port weiter
- client: lauscht lokal auf TCP, öffnet pro Verbindung einen QUIC-Stream zum Peer
- keygen: erzeugt Key-Datei und gibt EndpointId aus (Vorab-Verteilung)
- Allowlist (--allow) erlaubter Client-EndpointIds
- QUIC-Multiplexing, Reconnect mit Backoff, n0-Default-Relays + DNS-Discovery

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
sko
2026-06-21 14:25:15 +00:00
co-authored by Claude Opus 4.8
commit ec7c96b092
10 changed files with 4942 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
[package]
name = "iroh-forward"
version = "0.1.0"
edition = "2021"
description = "TCP-over-Iroh forwarder: dial a serving host by public key, forward a local TCP port over QUIC"
[dependencies]
iroh = "1.0"
tokio = { version = "1", features = ["full"] }
clap = { version = "4", features = ["derive"] }
anyhow = "1"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
data-encoding = "2"
[profile.release]
opt-level = 3