To execute dynamic DNS updates, Telekom Speedport Smart Routers seem not to be as smart as you would expect. Understand the standard it uses and learn how to outsmart some of its limitations.

This article refers to the Telekom Speedport Smart Router with Firmware version 050129.3.6.018.1, but it probably applies to other Speedport routers and other firmware versions, too.

Many consumer internet connections get only a dynamic IP address assigned. The IP address changes every time when the router (re-)connects to the internet. To connect from outside to your home via the internet, you need to use the current external IP address assigned to your router at the time you connect. A dynamic DNS service helps to always have your current IP address of your home at hand.

Further reading:

To ensure that the dynamic DNS service you use always has your current home IP address available, the best option is that the router triggers the update. The router as the only device directly connected to the internet (WAN) knows when the external IP address has changed and can then trigger the dynamic DNS update. 

Telekom Speedport Smart routers support dynamic DNS updates if in "Expert Mode":

Settings --> View --> Expert Mode

Speedport Smart Expert Mode

When expert mode is active, the dynamic DNS configuration is available under Internet --> Dynamic DNS.

Speedport Smart Dynamic DNS Configuration

Speedport Smart supports only four commercial dynamic DNS providers and provides one option to support "other providers", too.

Unfortunately, the Speedport Smart does not support freely defined update calls as many other routers do. It is really a shame that Telekom is limiting the flexibility of its firmware here.

Speedport Smart only supports the protocol 'DynDNS v2'.

DynDNS v2 means that an update URL based on the following pattern need to be send to the dynamic DNS provider:

http://{username}:{password}@upddyndns.com/update?hostname={yourhostname}&myip={ipaddress}&

(I have found more details about DynDNS v2 here: https://help.dyn.com/remote-access-api/perform-update/).

If your dynamic DNS service provider supports exactly this format you should be good to go.

As per example above, and in case the dynamic DNS service update address would be upddyndns.com/update, just enter upddyndns.com/update into Speedport field "Updateserver address". In case the user name is "jessie" and password is "topsecret" and hostname is "dyntest.airix.net" maintain the values accordingly:

Speedport Smart Dynamic DNS Configuration - Other Provider

As soon as the external IP address (WAN address) from your router changes, Speedport Smart will do the call as follows:

https://jessie:This email address is being protected from spambots. You need JavaScript enabled to view it./update?hostname=dyntest.airix.net&myip=9.9.9.9&

(with myip updated to whatever the new external IP address would be).

In case your dynamic DNS service provider needs some other parameters, you may "outsmart" the Speedport Smart by adding additional values into the field "Domain Name". But this will only work as long as the parameter myip is recognized by your dynamic DNS provider.

Let's assume the following update string would be required from your dynamic DNS service:

https://upddyndns.com/update?host=dyntest&domain=airix.net&user=jessie&password=topsecret&myip={ipaddress}&

Again, enter upddyndns.com/update into Speedport field "Updateserver address". As the format of username and password is different in this example, just enter a nice placeholder in fields "User name" and "Password". We go for an "X" here, as Speedport Smart does not allow these fields being blank.

As the hostname parameter is not needed in our example, we again go with a meaningless value "x" and add all other parameters into the field "Domain name", too:

x&host=dyntest&domain=airix.net&user=jessie&password=topsecret

Speedport Smart Dynamic DNS - Other Provider - Outsmart

Based on the information provided, Speedport Smart will issue the call as follows once the IP address has changed:

https://x:This email address is being protected from spambots. You need JavaScript enabled to view it./update?hostname=x&host=dyntest&domain=airix.net&user=jessie&password=topsecret&myip=9.9.9.9&

As in this example the dynamic DNS service does not expect a parameter "hostname", it is ignored. The other parameters "host", "domain", etc. are considered as needed.

This "outsmarting" works quite well as long as your dynamic DNS provide can handle the parameter myip.

Hence, we are having an issue with our dynamic DNS recommendation of namecheap.com.

Namecheap.com expects an web update call as follows:

https://dynamicdns.park-your-domain.com/update?host=<username>&domain=<domain>&password=<passwd>&ip=<ipaddr>

With the trick explained before, we could provide most of the update string, but not the expected parameter ip as Speedport Smart only provides myip.

Unfortunately, neither namecheap.com does consider the myip parameter nor does Telekom Speedport Smart provide the flexibility of a flexible update call as many other routers do.

Hence, we need to use other approaches when using namecheap.com dynamic DNS service and a Telekom Speedport Smart router.

One option is to use DDclient to get your IP addresses updated: Update your dynamic DNS IP address with DDclient.