# Docker DDNS-Go: Bind IPv4/IPv6 to Domain for Synology 7.2
## 📋 Tutorial Overview
This comprehensive guide demonstrates how to deploy ddns-go via Docker on Synology NAS DSM 7.2 to automatically bind dynamic public IPv4 and IPv6 addresses to domain names. Compared to Synology's built-in DDNS, ddns-go supports IPv6 protocol and allows multiple domain bindings for the same DNS provider (e.g., DNSPod), offering superior flexibility and functionality.
---
## 🎯 Key Highlights
### Why DDNS-GO Over Built-in DDNS?
**Synology Native DDNS Limitations:**
- **No IPv6 Support**: Cannot bind IPv6 public addresses
- **Single Provider Restriction**: Only one domain binding per provider (e.g., DNSPod)
- **Limited Flexibility**: Insufficient for multi-domain management
**DDNS-GO Advantages:**
- Open-source dynamic DNS solution
- Supports 30+ DNS providers
- Dual-stack (IPv4/IPv6) simultaneous resolution
- Multi-domain configuration
---
## 🛠️ Prerequisites
### 1. Download Docker Image
- Visit `DPIT.lib00.com` and search for "DDNS"
- Choose format:
- `.tar`: Ready-to-use image
- `.tar.gz`: Compressed version (smaller size)
- Tutorial version: **v6.7.7** (Latest as of Jan 8, 2025)
### 2. Create Working Directory
In Synology File Station:
```
/docker/ddns_go_6.7.7
```
### 3. Obtain DNSPod Credentials
Prepare DNSPod ID and TOKEN (refer to tutorial video for generation steps)
### 4. Prepare Domain Names
Example configuration:
- IPv4 domain: `dpit-t2.lib00.com`
- IPv6 domain: `dpit-t2-v6.lib00.com`
---
## 📦 Installation Process
### Step 1: Import Docker Image
1. Upload image file to Synology (e.g., `/docker/ee_images`)
2. Open **Container Manager** → **Image**
3. Click **Add** → **Add from File**
4. Select uploaded `.tar` file and import
### Step 2: Create Container via SSH
```bash
docker run -d \
--restart=always \
--name=ddns-go \
--network=host \
-v /volume1/docker/ddns_go_6.7.7:/root \
jeessy/ddns-go:v6.7.7
```
**Critical Parameters:**
- `--network=host`: **REQUIRED** for IPv6 support (Docker's native IPv6 support is limited)
- `-v`: Mount persistent data directory
- `--restart=always`: Auto-start on boot
Verify container status:
```bash
docker ps -a
```
---
## ⚙️ DDNS-GO Configuration
### Access Web Interface
Browser URL: `http://[NAS-IP]:9876`
**First-Time Login:**
- Set administrator username and password
- Credentials are stored for future access
### Configuration Example
**1. DNS Provider Settings**
- Provider: Select `DNSPod`
- Enter DNSPod `ID` and `TOKEN`
- Refresh Interval: Select `Auto`
**2. IPv4 Configuration**
- ✅ Enable IPv4
- Acquisition Method: Select `API` (multiple APIs available)
- Domain List: `dpit-t2.lib00.com` (supports multiple lines)
**3. IPv6 Configuration**
- ✅ Enable IPv6
- Acquisition Method: Select `API`
- Domain List: `dpit-t2-v6.lib00.com`
**4. Security Settings**
- ✅ Check "Disable WAN Access"
- Webhook (Optional): Configure notification as needed
Click **Save** to apply configuration.
---
## 🔍 Verification & Logging
### Log Information Breakdown
System logs display:
1. **Listening Port Information**
2. **IPv4/IPv6 Address Retrieval Records**
3. **Domain Mapping Success Status**
After refreshing DNSPod dashboard, corresponding A records (IPv4) and AAAA records (IPv6) will appear automatically.
---
## ⚠️ Important Notes
### Network Mode Must Be Host
```
--network=host
```
**Rationale:**
- Synology's Docker Bridge mode doesn't support IPv6 by default
- Although interface shows IPv6 as "Disabled" under Host mode, it's **fully functional**
### Redundancy Best Practices
Maintain 2-3 DDNS implementation methods:
- Synology built-in DDNS
- Docker-based DDNS-GO
- Router-level DDNS
Ensures high availability and failover capability.
---
## 🎓 Use Cases
- Remote NAS access from anywhere
- Self-hosted server dynamic DNS
- IPv6 public service deployment
- Unified multi-domain management
- Synology Docker service penetration
---
## 🔗 Resources
- Official Repository: [jeessy2/ddns-go](https://github.com/jeessy2/ddns-go)
- Supported Providers: DNSPod, Aliyun, Cloudflare, 30+ more
- Technical Documentation: DPIT.lib00.com
---
## 📝 Summary
Deploying DDNS-GO via Docker enables:
✅ Dual-stack IPv4/IPv6 dynamic resolution
✅ Unified multi-domain management
✅ Flexible multi-provider switching
✅ Zero-touch automation
Ideal for NAS users with basic Docker knowledge—simple configuration with powerful functionality, serving as the perfect alternative to Synology's native DDNS.
---
## 🏷️ SEO Keywords
Synology DDNS, Docker DDNS tutorial, IPv6 dynamic DNS, DSM 7.2 guide, ddns-go installation, DNSPod domain binding, NAS remote access, dynamic public IP, Synology Docker container, dual-stack IPv4 IPv6 resolution