This is my version of a resolve script it does ip to host name or host name to ip:
wcsnet, copyright © 2010. all rights reserved
script version : 1.0
:do {
:local content
:local newhost
:local oldhost
:log info “******************** starting - ip resolve ip*******************”
:log info “-”
:foreach i in=[/ip firewall address-list find list=“resolve ip” and disabled=no] do={
:set content [/ip firewall address-list get $i address]
:set oldhost [/ip firewall address-list get $i comment]
:do {
:set newhost [:resolve $content]
} on-error={
:log error “dns resolve failure [ ip - resolve ip ]”
}
: if ($newhost != $oldhost) do={
/ip firewall address-list set $i comment=$newhost
:log warning “$[/system identity get name] $comment dns host name changed: $oldhost → $newhost”
}
}
:log info “******************** ending - ip resolve ip********************”
:exec “o - after script run”
} on-error={
:log error “script failure [ ip - resolve ip ]”
}
:do {
:local content
:local newip
:local oldip
:log info “******************** starting - ip resolve host*******************”
:log info “-”
:foreach i in=[/ip firewall address-list find list=“resolve host” and disabled=no] do={
:set content [/ip firewall address-list get $i comment]
:set oldip [/ip firewall address-list get $i address]
:do {
:set newip [:resolve $content]
} on-error={
:log error “dns resolve failure [ ip - resolve host ]”
}
: if ($newip != $oldip) do={
/ip firewall address-list set $i address=$newip
:log warning “$[/system identity get name] $comment ip address changed: $oldip → $newip”
}
}
:log info “******************** ending - ip resolve host********************”
:exec “o - after script run”
} on-error={
:log error “script failure [ ip - resolve host ]”
}