Community discussions

 
User avatar
NowIP
just joined
Topic Author
Posts: 2
Joined: Wed Oct 21, 2015 11:02 pm
Contact:

Dynamic DNS Update Script for Now-DNS.com

Wed Oct 21, 2015 11:16 pm

Hi MikroTik users,

Now-DNS has put together this simple script to use to update our dynamic DNS service from your MikroTik router.
It does rely on having https support for the fetch command (which recent versions have).
Setup a scheduler task to run the script as often as you require.
# Now-DNS automatic Dynamic DNS update

#--------------- Change Values in this section to match your setup ------------------

# No-DNS User account info
:local NowUser "your_email"
:local NowPass "your_password"

# Your hostname you want to update
# To specify multiple hosts, separate them with commas.
:local NowHost "freeddns.now-dns.org"

#------------------------------------------------------------------------------------

:local url "https://now-dns.com/update\3F"

:log info "Now-DNS: sending update for $host"

/tool fetch url=($url . "hostname=$NowHost") user=$NowUser password=$NowPass mode=https dst-path=("now-dns.txt")

:log info "Now-DNS: host $host updated with IP $currentIP"
We hope it is useful.

Thanks

Steve
Last edited by NowIP on Wed Nov 09, 2016 12:29 am, edited 2 times in total.
 
vkotsiuk
just joined
Posts: 1
Joined: Mon Oct 26, 2015 2:59 pm

Re: Dynamic DNS Update Script for Now-IP.com

Mon Oct 26, 2015 3:20 pm

Hi!

Sorry for my English.
This is my variant update script:
# Now-IP automatic Dynamic DNS update

#--------------- Change Values in this section to match your setup ------------------

# No-IP User account info
:local username "login@domain.net";
:local password "password";

# To specify multiple hosts, separate them with commas.
:local hostnames "host.now-ip.net,host.myiphost.com";

# Global interface name
:local wanInterface "ether1-gateway";

#------------------------------------------------------------------------------------

# Get current wan interface ip address.
:local currentIP;
do {
  :set currentIP [:local ip [/ip address get [find interface=$wanInterface] address]; :pick $ip 0 [:find $ip "/"]];
  :log debug "current ip $currentIP"
} on-error={
  :log error "can`t get ip address on the interface '$wanInterface'";
  :error;
}

# Check match dns records
:local match true;
:local resolvedIP;
:foreach hostname in=[:toarray $hostnames] do={
  do {
    :set resolvedIP [:resolve $hostname];
  } on-error={
    :log error "can`t resolve hostname '$hostname'";
    :set match false;
  }
  :if ($resolvedIP != $currentIP ) do={
    :set match false;
    :log debug "resolved '$hostname' ip address $resolvedIP no match to current $currentIP";
  } else {
    :log debug "resolved '$hostname' ip address match to current $currentIP";
  }
};

# Update dns records if no match
:if (match != true ) do={
  :local url "https://now-ip.com/update\3F";
  :log info "Now-IP: sending update for '$hostnames'";
  /tool fetch url=($url . "hostname=$hostnames" . "&myip=" . $currentIP) user=$username password=$password mode=https dst-path=("now-ip.txt");
  :local result [/file get "now-ip.txt" contents];
  :log info "Now-IP: host $host updated with $result";
} else {
  :log info "Now-IP: dns resolved corect";
}
 
fastfoot
just joined
Posts: 1
Joined: Mon Sep 05, 2016 12:44 am

Re: Dynamic DNS Update Script for Now-IP.com

Mon Sep 05, 2016 12:49 am

script no longer works , after any fetch using https got :
failure: ssl connection error: received alert: unrecognized name (6)
any one can help with ?

MT 6.36.2
 
User avatar
NowIP
just joined
Topic Author
Posts: 2
Joined: Wed Oct 21, 2015 11:02 pm
Contact:

Re: Dynamic DNS Update Script for Now-DNS.com

Wed Nov 09, 2016 12:31 am

Hi,

Are you still having problems updating? Now-IP has been renamed to Now-DNS https://now-dns.com you should update your script to reflect this.

Thanks

Steve

Who is online

Users browsing this forum: No registered users and 9 guests