Files

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

Setup

  1. Clone the repository
  2. Install dependencies:
    go mod tidy
    
  3. Configure Environment: Create a .env file with:
    REDIS_ADDR=localhost:6379
    POSTGRES_URL=postgres://user:pass@localhost:5432/meshvpn
    STUN_PORT=3478
    COORD_PORT=50051
    
  4. Run the server:
    go run main.go
    

API Endpoints

  • STUN: UDP port 3478
  • gRPC Coordinator: TCP port 50051