Initial commit: Project structure, Coordinator Server v1.0.0, and Documentation

This commit is contained in:
Claude Code committed 2026-09-30 21:27:02 -04:00
commit 0ead98d0c4
18 files changed
+2073

No files matched your search

+39
View File
@@ -0,0 +1,39 @@
# 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](https://go.dev/dl/) (1.21+)
- [Redis](https://redis.io/download) (For real-time node state)
- [PostgreSQL](https://www.postgresql.org/download/) (For identity and ACLs)
### Setup
1. **Clone the repository**
2. **Install dependencies**:
```bash
go mod tidy
```
3. **Configure Environment**:
Create a `.env` file with:
```env
REDIS_ADDR=localhost:6379
POSTGRES_URL=postgres://user:pass@localhost:5432/meshvpn
STUN_PORT=3478
COORD_PORT=50051
```
4. **Run the server**:
```bash
go run main.go
```
## API Endpoints
- **STUN**: UDP port 3478
- **gRPC Coordinator**: TCP port 50051