How to setup DDNS in Mikrotik without a script

How to setup DDNS in Mikrotik without a script

29th January 2019 4 By George Wou
2 min read

For the last six years a script in my Mikrotik Routerboard would update my free no-ip domain name with my dynamic ip, allowing me to vpn into my router. At some point because of an update in RouterOS the script stopped updating my ddns and i had to find another script or fix the current one. Then i decided to use a new feature of Mikrotik, IP Cloud.

Although IP Cloud seems unsuitable for ddns usage, since it assigns you with a difficult to remember domain derived from the mac of the Routerboard, we can map our free no-ip domain name with a CNAME to our ip cloud domain which never changes since it is tied to the equipment.That way we can also have a proxy with a human friendly domain to access internal services.

 

Mikrotik Settings

Remove ddns script and disable the scheduler of the script if there is any.Go to system->scripts and system->scheduler.

For NTP either the SNTP client of Mikrotik or the NTP server of Mikrotik’s cloud servers can be used.I chose to go with Cloud NTP server.

We can disable the SNTP client of the routerboard by going to system->SNTP client.

Enable Cloud by going to IP->Cloud

Enabling cloud ddns on Mikrotik

The router will contact Mikrotik servers,create a domain based on the router and assign it.From now on this domain is tied to the specific router and will persist on reset too.

 

No-Ip settings

Now that the domain of our RB is known we can proceed on changing the free domain registered with no-ip from A record to a CNAME(canonical name), meaning that instead of pointing to an ip address our no-ip domain will point to another domain, our Mikrotik router domain.

Login to no-ip dashboard , go to My Services->DNS Records , select CNAME and copy paste the DNS name assigned to the RB to the target entry in no-ip dashboard.

changing a hostname to CNAME

Instead of an IP , example.ddns.net is mapped to example.sn.mynetname.net.

To confirm that the CNAME is working do >nslookup example.ddns.net .

CNAME has propagated

Done! Now we can keep using our vpn to our router or accessing our proxy using our regular domain without maintaining a script.