Code: Select all
/system script add name="noip-update" source="
:global noipUpdateProfile {
"username"="YOUR_DDNS_USERNAME"
"password"="YOUR_DDNS_PASSWORD"
"pppoe-out1"="YOUR_DDNS_HOSTNAMEA.ddns.net"
"pppoe-out2"="YOUR_DDNS_HOSTNAMEB.ddns.net"
"pppoe-out3"="YOUR_DDNS_HOSTNAMEC.ddns.net"
}
:global noipUpdate do={
:local url ("http://dynupdate.no-ip.com/nic/update\3Fmyip=" . $address . "&hostname=" . $hostname);
:log info ("noip-update: " . $hostname . " => " . $address)
/tool fetch url=$url user=$username password=$password mode=http keep-result=no
}
:global noipUpdateProfilePPP do={
:global noipUpdate
:local interfaceName [/interface get $interface name]
$noipUpdate username=($profile->"username") password=($profile->"password") hostname=($profile->$interfaceName) address=$address
}
"
Code: Select all
/ppp profile add name=noip-update on-up="
:global noipUpdateProfilePPP
:global noipUpdateProfile
:if ([ :typeof $noipUpdateProfilePPP ] = "nothing") do={
/system script run noip-update;
}
:local address $"local-address"
$noipUpdateProfilePPP profile=$noipUpdateProfile interface=$interface address=$address
"