Official ApertoDNS DDNS provider integration for Synology NAS devices running DSM.
SSH into your Synology NAS as root and run:
curl -sSL https://raw.githubusercontent.com/apertodns/synology-ddns/main/install.sh | sudo bash-
Download the provider script:
sudo curl -sSL https://raw.githubusercontent.com/apertodns/synology-ddns/main/apertodns.php \ -o /usr/syno/bin/ddns/apertodns.php sudo chmod 755 /usr/syno/bin/ddns/apertodns.php -
Add provider configuration:
sudo cat >> /etc/ddns_provider.conf << 'EOF' [ApertoDNS - Token] modulepath=/usr/syno/bin/ddns/apertodns.php queryurl=https://api.apertodns.com/nic/update [ApertoDNS - Email] modulepath=/usr/syno/bin/ddns/apertodns.php queryurl=https://api.apertodns.com/nic/update EOF
-
Configure in DSM:
- Go to Control Panel > External Access > DDNS
- Click Add
- Select ApertoDNS - Token or ApertoDNS - Email
- Enter your credentials (see below)
- Click Test Connection
If you prefer using DSM's Task Scheduler:
-
Download the update script:
curl -sSL https://raw.githubusercontent.com/apertodns/synology-ddns/main/update-apertodns.sh \ -o /volume1/scripts/update-apertodns.sh chmod +x /volume1/scripts/update-apertodns.sh -
Edit the script and set your credentials:
DDNS_TOKEN="YOUR_DDNS_TOKEN_HERE" HOSTNAME="yourhost.apertodns.com"
-
Create a scheduled task:
- Go to Control Panel > Task Scheduler
- Create a new User-defined script task
- Set it to run every 5-10 minutes
- Command:
/volume1/scripts/update-apertodns.sh
- Username: Your DDNS Token (64 hex characters)
- Password: Your DDNS Token (same as username)
- Username: Your ApertoDNS account email
- Password: Your ApertoDNS account password
- Log in to ApertoDNS Dashboard
- Go to Domains section
- Select your domain
- Find the DDNS Token field (64 character hex string)
php /usr/syno/bin/ddns/apertodns.php yourhost.apertodns.com TOKEN TOKEN 1.2.3.4good- Update successfulnochg- IP unchanged (no update needed)badauth- Authentication failed (check credentials)notfqdn- Domain not found911- Server error
# For Task Scheduler method
cat /var/log/apertodns-ddns.logcurl -u "TOKEN:TOKEN" "https://api.apertodns.com/nic/update?hostname=yourhost.apertodns.com&myip=$(curl -s https://api.ipify.org)"| File | Description |
|---|---|
apertodns.php |
Main DDNS provider script for DSM |
ddns_provider.conf.add |
Provider configuration snippet |
update-apertodns.sh |
Alternative script for Task Scheduler |
install.sh |
Automatic installer script |
- Synology DSM 6.x or 7.x
- SSH access (for installation)
- ApertoDNS account with at least one domain
- Documentation: https://www.apertodns.com/docs#rn-synology
- Email: support@apertodns.com
- Website: https://www.apertodns.com
MIT License - Copyright (c) 2024 ApertoDNS
Andrea Ferro support@apertodns.com