Docs › Dynamic DNS

Dynamic DNS on FritzBox

FRITZ!OS speaks dyndns2 through its custom provider entry, so no add-on and no firmware change is needed. Pick the custom or user-defined entry in the DynDNS provider dropdown and the Update URL field appears.

Where the setting lives

Internet ▸ Permit Access ▸ DynDNS

Configuration

FritzBox: Internet ▸ Permit Access ▸ DynDNS
Update URL:  https://api.home.network/nic/update?hostname=<domain>&myip=<ipaddr>
Domain name: nas.alice.home.network
Username:    alice
Password:    <your update password>

Replace alice with your label and <your update password> with the password from the setup wizard. The username is your label, never your email address.

Worth knowing. FRITZ!OS substitutes the placeholders itself, so leave the angle brackets exactly as written rather than replacing them with your values. Available placeholders are <domain>, <ipaddr>, <ip6addr>, <username> and <pass>. On a DS-Lite or carrier-grade NAT line there is no public IPv4 at all, so an update URL built only around <ipaddr> either never fires or publishes a shared address nobody can reach. Those connections need an <ip6addr> update URL, carrying the target machine's address rather than the router's.

Check it worked

verify
# confirm the record moved
dig +short nas.alice.home.network @ns1.home.network

# the update endpoint answers with the dyndns2 status word
curl -u 'alice:<your update password>' \
  'https://api.home.network/nic/update?hostname=nas.alice.home.network&myip=auto'
good 203.0.113.7

good means the record changed, nochg means it was already correct. Both are success. badauth means the username or password is wrong, and 911 means the fault is at our end, so retry rather than reconfigure.

Still not resolving at home?

If the name answers from ns1.home.network but not from your own resolver, the resolver is stripping the private address as rebind protection. Fix it for your resolver.

← All documentation