[[---]]
Duck DNS Update Script For Mikrotik
# Duck DNS Update Script for MikroTik RouterOS 5.26 behind NAT#--------------- Change Values in this section to match your setup ------------------:local ducktoken "your-token":local duckdomain "your-domain":local ddnshost "$duckdomain.duckdns.org"#------------------------------------------------------------------------------------# No more changes need:local ipddns [:resolve $ddnshost]/tool fetch mode=http address="icanhazip.com" src-path="/" dst-path="/icanhazip.txt":delay 3:local result [/file get icanhazip.txt contents]:local resultLen [:len $result]:local endLoc [:find $result "\n" -1]:local ipfresh [:pick $result 0 $endLoc]:log info "Duck DNS: IP detected from icanhazip.com is $ipfresh":if ($ipddns != $ipfresh) do={ :log info "Duck DNS: Old IP is $ipddns" :log info "Duck DNS: New IP is $ipfresh" /tool fetch url="http://www.duckdns.org/update\?domains=$duckdomain&token=$ducktoken&ip=$ipfresh" dst-path=duckdns.txt :global ipddns $ipfresh :log info "Duck DNS: IP updated to $ipfresh!" } else={ :log info "Duck DNS: Current IP is $ipddns" :log info "Duck DNS: Detected IP is same with current IP, dont need changes" }}
source : http://wingloon.com/2014/06/28/duck-dns-update-script-for-mikrotik-routeros-5-26-behind-nat/