2

I have a Draytek router that has a built-in dynamic DNS update client (I have a 2860 series, although many current models support this). I also have a domain name registered through Google Domains, and I am using Google's name servers.

Google's platform supports dynamic DNS records, but the Draytek does not come with a client for this service pre-loaded. The Draytek does, however support custom API configurations.

How can I configure my router to update my dynamic DNS record using Google's API?

DaveRandom
  • 219
  • 2
  • 13

2 Answers2

2

This procedure is tested and working, based on information obtained from Google's documentation regarding their DDNS service.

Draytek Dynamic DNS Account Configuration Page

  1. Choose the "WAN Interface" strategy to use when determining the IP address used when performing updates.
  2. In the "Service Provider" field, choose "User Defined". Additional configuration fields appear.
  3. In the "Provider Host" field, enter domains.google.com
  4. In the "Service API" field, enter /nic/update?myip=###IP###&hostname=your.hostname.here, replacing "your.hostname.here" with the fully qualified name of the record you wish to dynamically update.
  5. In the "Auth Type" field, choose "Basic" (this is the default).
  6. In the "Connection Type" field, choose "HTTPS".
  7. The "Server Response" field can be left blank - I could not fathom from the Dryatek documentation exactly how this field is used. It is possible that a useful value can be entered here in order to prevent the router from performing unnecessary update requests, if anyone can shed light on this please let me know.
  8. In the "Login Name" and "Password" fields, enter the username and password provided by Google. This username and password is unique to the record you are configuring, and can be configured and retrieved from the Google Domains web interface. IT IS NOT THE SAME AS YOUR GOOGLE ACCOUNT CREDENTIALS!
  9. Save the configuration. It will take immediate effect.

Using the "Determine Real WAN IP" field

In most cases you will want this set to "WAN IP". If your router does not directly use an internet IP address because it is behind a layer of NAT, you can choose the "Internet IP" setting. This will cause the router to perform an additional operation to determine it's real internet IP address before updating the DNS record.

DaveRandom
  • 219
  • 2
  • 13
0

I've experimented a bit with the options on a Vigor 2860 series (with the aid of a dummy web server), to try and fill in some of the blanks with how it works in general.

The Service API field accepts these placeholders (all upper case):

  • ###USERNAME### for the "Login Name" text
  • ###PASSWORD### for the "Password" text
  • ###IP### for the IP address

If Auth type is "basic", then the user:password fields are passed as base64 in the HTTP headers, e.g. Authorization: Basic QXp1cmVEaWFtb25kOmh1bnRlcjIK.
(The ###PASSWORD### placeholder is not used in this case.)

If Auth type is "URL", then all three placeholders are used and no separate Authorization is passed.

I personally have had success with DNS Made Easy by setting it up like this:

Draytek Vigor 2860 Dynamic DNS

  • Service Provider: User-Defined
  • Provider Host: cp.dnsmadeeasy.com
  • Service API: /servlet/updateip?id=###USERNAME###&ip=###IP###&password=###PASSWORD###
  • Auth Type: URL
  • Connection Type: "Https" (if you get a Send HTTP Request Error, try "Http")
  • Server Response: success
  • Login Name: (DNS record ID number - not your DNS Made Easy account name)
  • Password: (DNS record password)
mwfearnley
  • 7,889