0db3fda0c672541cfd594398953f2b7bf4d45dfa
All checks were successful
Build and Push Server Docker Image / build-server (push) Successful in 8m58s
VirtualDDNSRouter (VDR)
VirtualDDNSRouter (VDR) is a lightweight dynamic DNS router solution that consists of two components:
- Client: Updates the server with the current IP address of a service
- Server: Acts as a reverse proxy that redirects requests to the correct IP address
This solution is particularly useful for accessing services running on dynamic IP addresses through consistent URLs.
Quick Start (Recommended Method)
The easiest way to use VDR is by downloading the pre-built binaries:
- Download the latest release for your platform from https://git.mahdium.ir/mahdium/VDR/releases/latest
- Extract the archives for both client and server
- Configure each component using the provided examples
- Run the server and client applications
Components
- Client Documentation - For updating IP addresses
- Server Documentation - For routing requests
Architecture
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ VDR Client │ │ VDR Server │ │ Service │
│ │ │ │ │ │
│ • Periodically │◄──────►│ • Maintains IP │◄──────►│ • Running on │
│ updates IP │ │ mappings │ │ dynamic IP │
│ with server │ │ • Redirects to │ │ • Exposes port │
│ │ │ correct IP │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
┌─────────────────┐
│ User │
│ │
│ • Accesses │
│ service via │
│ consistent │
│ URL │
└─────────────────┘
│
▼
┌─────────────────┐
│ VDR Server │
│ │
│ • Redirects to │
│ current IP │
└─────────────────┘
Alternative Deployment Methods
Using Docker
You can also run VDR using Docker:
# Build the images
docker-compose build
# Run the services
docker-compose up
See the compose.yaml file for details.
Building from Source
If you prefer to build from source:
# For the server
cd VirtualDDNSRouter.Server
dotnet build
dotnet run
# For the client
cd VirtualDDNSRouter.Client
dotnet build
dotnet run
License
This project is licensed under the MIT License - see the LICENSE file for details.
Description
Languages
C#
85.4%
Dockerfile
14.6%