Technical Overview
Core Model
VX6 turns local services into network-reachable services without forcing applications to stop being local. Traffic enters and exits via localhost while VX6 handles discovery, naming, sessions, and routing.
| Service location | Localhost targets such as 127.0.0.1:22, 127.0.0.1:8080, 127.0.0.1:5432 |
| Client access | Local forwarded ports on the client machine |
| Naming model | username.service and hidden aliases |
| Network model | IPv6-first peer-to-peer sync and DHT-backed lookup |
Identity, First Contact, and Registry
- Each node has a persistent Ed25519 keypair and signed records.
- Any known live node can be used for first contact.
- Peer sync and DHT lookups spread records through reachable peers.
- Each node keeps a local registry for fast future lookups and route planning.
Service Flow Modes
Named direct mode
service owner publishes username.service client resolves name VX6 opens node-to-node session target node forwards to localhost target
Direct IPv6 mode
Discovery can be bypassed when the client already knows the service owner's IPv6 endpoint. VX6 still provides service forwarding while taking the direct path.
Relay proxy mode
VX6 can route through a multi-hop chain and currently supports five-hop relay paths for scenarios where direct routes are not preferred.
Hidden Services
Hidden services are reached by alias instead of public service endpoint.
| Component | Count | Role |
|---|---|---|
| Active intros | 3 | Primary entry points for hidden alias negotiation. |
| Standby intros | 2 | Fallback intros for resiliency. |
| Guard nodes | 2 | Owner-side signaling and path safety role. |
| Rendezvous candidates | 3 | Meeting points where streams are joined. |
Profiles: fast uses 3 + X + 3 routing, balanced uses 5 + X + 5 for deeper pathing.
Performance and Operations
- Dynamic IP updates are handled via fresh signed records and peer sync.
- Linux eBPF is used to classify VX6 traffic and keep relay handling lightweight.
- The model is optimized for direct service access rather than browser-first traffic.
Reference flow diagram
local app -> VX6 -> peer network -> VX6 -> local app