---
title: "Dynamic DNS"
type: "page"
post_id: "33"
slug: "dynamic-dns"
canonical: "https://www.zoneedit.com/dynamic-dns/"
markdown_url: "https://www.zoneedit.com/dynamic-dns.md"
json_url: "https://www.zoneedit.com/dynamic-dns.json"
txt_url: "https://www.zoneedit.com/dynamic-dns.txt"
published: "2026-06-26T12:59:07+00:00"
modified: "2026-08-06T17:05:08+00:00"
author: "markjr"
categories:
tags:
site_name: "ZoneEdit"
publisher: "Zoneedit.com"
language: "en-US"
generator: "easyPress AI Discoverability"
generator_version: "2.0.12"
---
Dynamic DNS

Dynamic DNS on a domain you own.
================================

Keep a memorable hostname pointed at home, office, or lab infrastructure even when your IP changes. **No Static IP? No Problem™**

[Set up Dynamic DNS](https://www.zoneedit.com/signup/) [Find your device](https://www.zoneedit.com/integrations/)



What Dynamic DNS does
---------------------

Most home and small-office connections get a residential IP that changes without warning. Dynamic DNS (DDNS) keeps a hostname on your own domain updated to your current IP — so your NAS, camera system, VPN, game server, or PBX stays reachable by name.



Three steps to set it up
------------------------

### 1. Create a DYN record

Mark the hostname you want to keep updated as a Dynamic DNS record in your zone.



### 2. Generate a token

Create a per-domain Dynamic DNS token. Use it for updates instead of your account password.



### 3. Configure an updater

Point your router, NAS, or a DDNS client at ZoneEdit so it sends updates automatically.







**Security**Use the per-domain Dynamic DNS **token**, never your account password, in device configuration. Prefer HTTPS for updates so credentials are not sent in the clear.





Works with your gear
--------------------

### Routers &amp; firewalls

OpenWrt, pfSense, OPNsense, DD-WRT, FreshTomato.



### NAS &amp; servers

Synology, TrueNAS, Docker DDNS-Updater, Linux / Raspberry Pi.



### DDNS clients

ddclient (native `zoneedit1` protocol), In-a-dyn.



### Custom HTTP

Any device that can call a custom update URL.





[Browse all integration guides →](https://www.zoneedit.com/integrations/)



Update endpoint reference
-------------------------

**cURL:**

```
curl --get \
  --user 'ZONEEDIT_USERNAME:DYN_AUTH_TOKEN' \
  --data-urlencode 'hostname=home.example.com' \
  --data-urlencode 'myip=203.0.113.10' \
  'https://api.cp.zoneedit.com/dyn/generic.php'
```

**IPv4 / IPv6:** see the [Dynamic DNS guide in our knowledgebase](https://support.zoneedit.com/en/knowledgebase/article/dynamic-dns).



Troubleshooting
---------------

Updates rejected (authentication)Confirm you are using the Dynamic DNS token for the correct hostname, not the account password.

Hostname not updating / stale IPCheck the updater is running and that only one updater is responsible for the hostname. Duplicate updaters can fight each other.

Private or CGNAT addressIf your ISP uses CGNAT, the IP your device sees is shared and not publicly reachable — updates succeed, but inbound connections can’t reach you on that address. Publish your IPv6 address as an AAAA record in the DNS manager, or use a reverse tunnel such as [tunnel.to](https://tunnel.to/).

Changes slow to take effectLower the record TTL; resolvers cache the previous value until it expires.





Point your domain home
----------------------

Set up Dynamic DNS on a domain you own.

[Get started](https://www.zoneedit.com/signup/)

[Add one free domain for personal use →](https://www.zoneedit.com/free-dns/)
