Last active
January 23, 2021 18:18
-
-
Save adit-sa/44266f1ea516d87b80872aa95614c8b8 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| # www.adityasaputra.com | |
| :global ddnsuser "Usernam Dynu.com" | |
| :global ddnspass "Password Dynu.com" | |
| :global theinterface "Interface" | |
| :global ddnshost "domain.dynu.com" | |
| :global ipddns [:resolve $ddnshost]; | |
| :global ipfresh [ /ip address get [/ip address find interface=$theinterface ] address ] | |
| :if ([ :typeof $ipfresh ] = nil ) do={ | |
| :log info ("dynu: No ip address on $theinterface .") | |
| } else={ | |
| :for i from=( [:len $ipfresh] - 1) to=0 do={ | |
| :if ( [:pick $ipfresh $i] = "/") do={ | |
| :set ipfresh [:pick $ipfresh 0 $i]; | |
| } | |
| } | |
| :if ($ipddns != $ipfresh) do={ | |
| :log info ("dynu: IP-dynu = $ipddns") | |
| :log info ("dynu: IP-Fresh = $ipfresh") | |
| :log info "dynu: Update IP needed, Sending UPDATE...!" | |
| :global str "/nic/update?hostname=$ddnshost&myip=$ipfresh" | |
| /tool fetch address=api.dynu.com src-path=$str mode=http user=$ddnsuser password=$ddnspass dst-path=("/Dynu.".$ddnshost) | |
| :delay 1 | |
| :global str [/file find name="Dynu.$ddnshost"]; | |
| /file remove $str | |
| :global ipddns $ipfresh | |
| :log info "dynu: IP updated to $ipfresh!" | |
| } else={ | |
| :log info "dynu: dont need changes"; | |
| } | |
| } |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment