MeshVPN Coordinator Server
The Coordinator Server is the central brain of the MeshVPN network. It handles node registration, peer signaling, and provides STUN services for NAT traversal.
Features
- Integrated STUN Server: Helps clients discover their public endpoints.
- Node Coordination: Manages public keys and virtual IP assignments.
- Signaling: Facilitates UDP hole punching between peers.
- Web Dashboard: (Coming soon) Visualization of the mesh network.
Installation
Prerequisites
- Go (1.21+)
- Redis (For real-time node state)
- PostgreSQL (For identity and ACLs)
Setup
- Clone the repository
- Install dependencies:
go mod tidy - Configure Environment:
Create a
.envfile with:REDIS_ADDR=localhost:6379 POSTGRES_URL=postgres://user:pass@localhost:5432/meshvpn STUN_PORT=3478 COORD_PORT=50051 - Run the server:
go run main.go
API Endpoints
- STUN: UDP port 3478
- gRPC Coordinator: TCP port 50051