edge-ddns-proxy

Automatically update modern DNS provider records using your router/ONT DDNS client

English 简体中文

📋 Overview

edge-ddns-proxy is a serverless middleware proxy that runs on edge computing platforms (Alibaba Cloud, Tencent Cloud, Cloudflare). It bridges traditional DDNS protocols used by routers/ONTs with modern DNS provider APIs, so legacy devices can update DNS records on modern DNS platforms without running any extra client software.

🔄 How It Works

       ┌─────────────────────┐
       │     Router / ONT    │
       │  Built-in DDNS      │
       └─────────────────────┘
                 │
        Traditional DDNS protocol
     (DynDNS/no-ip/EasyDNS/qdns, etc.)
                 │
                 ▼
       ┌─────────────────────┐
       │  edge-ddns-proxy    │
       │   (Edge Function)   │
       │ Protocol Translation │
       └─────────────────────┘
                 │
        Modern DNS provider API
                 │
                 ▼
       ┌─────────────────────┐
       │     DNS Providers   │
       │   - Cloudflare      │
       │   - Alibaba Cloud   │
       │   - Tencent Cloud   │
       └─────────────────────┘

🎯 Use Cases

This solution fits when:

  1. ✅ Your router/ONT only supports traditional DDNS protocols (DynDNS, no-ip, etc.)
  2. ✅ Your domain is managed by modern DNS providers (Cloudflare, Alibaba Cloud DNS, Tencent Cloud DNS, etc.)

If you want to run a client-side DDNS updater to update your IPv6 address, or you need more customization, see https://github.com/NewFuture/DDNS

📡 Supported DDNS Protocols

☁️ Supported DNS Providers

🚀 Quick Start

Configuration Example

Prerequisites

Basic Configuration

📝 Configuration Example

Router DDNS Settings:

Hostname: yourdomain.com
Service Provider: DynDNS family, or no-ip / EasyDNS / Oray
DDNS Server: edge-ddns-proxy.edge-platform.com
Username: your-key
Password: your-api-token

🔒 Security Notes

⚠️ Important Notes:

📚 Technical Details

Data Flow Process:

  1. 📡 Router detects a public IP change and sends a standard DDNS update request (HTTP GET/POST)
  2. 🔄 edge-ddns-proxy receives and parses the traditional DDNS request
  3. 🔍 The proxy extracts key information: IP address, hostname, authentication
  4. ✅ It validates the request and determines the target domain
  5. 🌐 It calls the corresponding DNS provider API to update the record
  6. ✔️ It converts the result into a standard DDNS response and returns it to the router

Supported Edge Computing Platforms:


📄 License

This project is open-sourced under the Apache License.

🤝 Contributing

Issues and pull requests are welcome!

📮 Support

If you have questions or need help, please submit an issue.