System Overview
High-level architecture of the Exposr tunneling system.
Components
Exposr consists of three main components:
- Client (Agent) — Runs on the user's machine. Manages the control connection, creates data tunnels, and forwards traffic to local services.
- Server (Relay) — Runs on a public server. Accepts agent connections, manages public ports, and bridges public connections to agent data tunnels.
- Common — Shared utilities for logging and protocol message parsing.
Architecture diagram
Internet User
▼
SERVER_IP:PUBLIC_PORT
▼
Exposr Server
Control Port: 9000
Data Port: 9001
Public Ports: 25565, 20000–30000
Persistent outbound connection
▼
Exposr Client
▼
127.0.0.1:LOCAL_PORT
▼
Local Service
Communication
All communication is TCP-based. The agent initiates all connections outbound, meaning it works behind NAT and firewalls without requiring inbound ports on the client machine.
The system uses a text-based protocol over the control channel and raw TCP forwarding over data connections.