OpenWRT Dynamic DNS
Please note that these instructions use our legacy, DNS API v1. We recommend using DNS API v2 for new configurations.
luci-app-ddnspackage, either through the web interface or by running:
opkg install luci-app-ddns
/usr/lib/ddns/servicesand add the following line at the bottom (this should all be on a single line):
Go to the LuCI web interface and browse to the Services->Dynamic DNS tab, and use the following settings:
- Event Interface
- Your WAN interface
- The full hostname that you wish to use for dynamic DNS, for example
- Your domain name,
example.comin this example.
- Your DNS API password. You can set this using the domain tab in our Control Panel. Please note that the ddns client sends this unencrypted, and so you ensure that this password is not used for other services, and if you use your domain to host other services you should consider using a different approach (see below).
- Source of IP address
- Ideally, use the name of the interface that has your external IP address. This setting is not essential, as our service will detect your IP address automatically. If there is no interface on your router with the external IP available, then select any interface, and reduce the Force update time limit to a low value, like 10 minutes, as the updater will not be able to detect any changes to your IP.
Make sure the service is enabled, hit Save and Apply and then either reboot your router, or force the event interface down and up.
By default, the ddns client uses an unencrypted GET request which means that
your password is not encrypted and will appear in the web logs on our server.
The first part can be fixed easily by installing the wget package (
install wget - this replaces the busybox version of wget which does
not have SSL support) and changing the URL in step 2 to use
https rather than
Switching to POST requests requires taking an alternative approach, for example scripting one of the curl examples listed on our Dynamic DNS page.